(57)【要約】【課題】各検査対象部分の検査結果が検査対象物内のいずれの箇所に対応しているのかをユーザに直感的に把握させる。【解決手段】外観検査システムは、表示装置と、検査対象物の形状を表わす３次元モデルを格納する記憶装置とを備える。検査対象物の複数の検査部分は、３次元モデルに対して予め設定されている。外観検査システムは、検査対象物の各検査部分を撮像して撮像装置から得られた各画像に基づいて、当該検査対象物の各検査部分について欠陥の有無を検査する検査部と、３次元モデルを表示装置に表示するとともに、検査対象物の各検査部分の検査結果を３次元モデル上の対応部分に表わす表示制御部とを備える。【選択図】図１
2020003301.tif 000002
【特許請求の範囲】
【請求項１】
検査対象物と撮像装置との間の相対位置を変化させつつ前記検査対象物の複数の検査部分を前記撮像装置で撮像して、前記検査対象物の外観検査を行なう外観検査システムであって、
表示装置と、
前記検査対象物の形状を表わす３次元モデルを格納するための記憶装置とを備え、前記検査対象物の複数の検査部分は、前記３次元モデルに対して予め設定されており、
前記検査対象物の各検査部分を撮像して前記撮像装置から得られた各画像に基づいて、当該検査対象物の各検査部分について欠陥の有無を検査するための検査部と、
前記３次元モデルを前記表示装置に表示するとともに、前記検査対象物の各検査部分の検査結果を前記３次元モデル上の対応部分に表わすための表示制御部とを備える、外観検査システム。
【請求項２】
前記表示制御部は、さらに、前記検査対象物の各検査部分を前記３次元モデル上の対応部分に表わす、請求項１に記載の外観検査システム。
【請求項３】
前記表示制御部は、前記検査対象物の各検査部分の検査結果を前記３次元モデル上の対応部分に表わす際に、欠陥を示す部分を他の部分とは異なる表示態様で表示する、請求項１または２に記載の外観検査システム。
【請求項４】
前記３次元モデルに対して設定される各検査部分は、予め定められた分類ルールに従ってグルーピングされており、
前記表示制御部は、
グルーピングされている検査部分に対する集約指示を受け付けた場合に、当該グルーピングされている検査部分の検査結果を集約し、当該集約後の検査結果を、当該グルーピングされている検査部分に対応する前記３次元モデル上の各部分に表わし、
前記集約された検査結果に対する展開指示を受け付けた場合に、当該集約された検査結果の表示を集約前に戻す、請求項１〜３のいずれか１項に記載の外観検査システム。
【請求項５】
欠陥を示す検査結果が、前記グルーピングされている検査部分の検査結果に含まれている場合、集約後の検査結果は、欠陥を示し、
欠陥を示す検査結果が、前記グルーピングされている検査部分の検査結果に含まれていない場合、集約後の検査結果は、正常を示す、請求項４に記載の外観検査システム。
【請求項６】
前記外観検査システムは、前記３次元モデル上に表わされる検査部分の内から、１つ以上の検査部分を選択する選択操作を受け付けることが可能な操作部をさらに備え、
前記表示制御部は、前記操作部が前記選択操作を受け付けたことに基づいて、選択された検査部分の検査に用いられた画像と、当該画像の撮像条件との少なくとも一方を前記表示装置に表示する、請求項１〜５のいずれか１項に記載の外観検査システム。
【請求項７】
前記検査部は、複数の検査対象物の検査処理を順次実行し、
前記表示制御部は、順次検査される検査対象物に欠陥が検出された時点で、当該検査対象物の各検査部分の検査結果で前記３次元モデル上に表わされている検査結果を更新する、請求項１〜６のいずれか１項に記載の外観検査システム。
【請求項８】
検査対象物と撮像装置との間の相対位置を変化させつつ前記検査対象物の複数の検査部分を前記撮像装置で撮像して行なわれた外観検査結果の表示方法であって、
前記検査対象物の形状を表わす３次元モデルを取得するステップを備え、前記検査対象物の複数の検査部分は、前記３次元モデルに対して予め設定されており、
前記検査対象物の各検査部分を撮像して前記撮像装置から得られた各画像に基づいて、当該検査対象物の各検査部分について欠陥の有無を検査するステップと、
前記３次元モデルを表示装置に表示するとともに、前記検査対象物の各検査部分の検査結果を前記３次元モデル上の対応部分に表わすステップとを備える、外観検査結果の表示方法。
【請求項９】
検査対象物と撮像装置との間の相対位置を変化させつつ前記検査対象物の複数の検査部分を前記撮像装置で撮像して行なわれた外観検査結果の表示プログラムであって、
前記表示プログラムは、コンピュータに、
前記検査対象物の形状を表わす３次元モデルを取得するステップを実行させ、前記検査対象物の複数の検査部分は、前記３次元モデルに対して予め設定されており、
前記表示プログラムは、前記コンピュータに、さらに、
前記検査対象物の各検査部分を撮像して前記撮像装置から得られた各画像に基づいて、当該検査対象物の各検査部分について欠陥の有無を検査するステップと、
前記３次元モデルを表示装置に表示するとともに、前記検査対象物の各検査部分の検査結果を前記３次元モデル上の対応部分に表わすステップとを実行させる、外観検査結果の表示プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本開示は、撮像画像を用いて検査対象物を検査する外観検査システム、外観検査結果の表示方法、および、外観検査結果の表示プログラムに関する。
【背景技術】
【０００２】
画像処理技術を用いて、樹脂、金属、基板などの検査対象物を検査する外観検査システムが数多く提案されている。
【０００３】
たとえば、特開２０１３−２１１３２３号公報（特許文献１）には、基板の品質を検査するための外観検査システムが開示されている。当該外観検査システムは、基板の検査結果を２次元マップ画像上に表示する。２次元マップ画像には、基板の通し番号が横軸に配列され、基板内の部品情報が縦軸に配列される。また、２次元マップ画像には、基板の通し番号と基板内の部品情報との組み合わせごとにセルが設けられ、各基板の各部品の検査結果が対応するセル上に表示される。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２０１３−２１１３２３号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
特許文献１に示される２次元マップ画像においては、１つの基板内の各部品についての検査結果が１次元で表される。そのため、ユーザは、各検査結果が基板内のどの箇所に対応しているのかを即座に把握することができない。
【０００６】
本開示は上述のような問題点を解決するためになされたものであって、ある局面における目的は、各検査対象部分の検査結果が検査対象物内のいずれの箇所に対応しているのかをユーザに直感的に把握させることが可能な外観検査システムを提供することである。他の局面における目的は、各検査対象部分の検査結果が検査対象物内のいずれの箇所に対応しているのかをユーザに直感的に把握させることが可能な表示方法を提供することである。他の局面における目的は、各検査対象部分の検査結果が検査対象物内のいずれの箇所に対応しているのかをユーザに直感的に把握させることが可能な表示プログラムを提供することである。
【課題を解決するための手段】
【０００７】
本開示の一例では、検査対象物と撮像装置との間の相対位置を変化させつつ上記検査対象物の複数の検査部分を上記撮像装置で撮像して、上記検査対象物の外観検査を行なう外観検査システムは、表示装置と、上記検査対象物の形状を表わす３次元モデルを格納するための記憶装置とを備える。上記検査対象物の複数の検査部分は、上記３次元モデルに対して予め設定されている。上記外観検査システムは、上記検査対象物の各検査部分を撮像して上記撮像装置から得られた各画像に基づいて、当該検査対象物の各検査部分について欠陥の有無を検査するための検査部と、上記３次元モデルを上記表示装置に表示するとともに、上記検査対象物の各検査部分の検査結果を上記３次元モデル上の対応部分に表わすための表示制御部とを備える。
【０００８】
この開示によれば、各検査部分の検査結果が３次元モデル上に表示されることで、ユーザは、各検査部分の検査結果が検査対象物内のいずれの箇所に対応しているのかを直感的に把握することができる。
【０００９】
本開示の一例では、上記表示制御部は、さらに、上記検査対象物の各検査部分を上記３次元モデル上の対応部分に表わす。
【００１０】
この開示によれば、各検査部分が３次元モデル上に表示されることで、ユーザは、検査対象物内の検査が実施された箇所を直感的に把握することができる。
【００１１】
本開示の一例では、上記表示制御部は、上記検査対象物の各検査部分の検査結果を上記３次元モデル上の対応部分に表わす際に、欠陥を示す部分を他の部分とは異なる表示態様で表示する。
【００１２】
この開示によれば、欠陥を示す検査結果が他の検査結果とは異なる表示態様で表示されることで、ユーザは、欠陥を示す検査結果を即座に判別することができ、いずれの検査部分に欠陥があるのかをより容易に把握することができる。
【００１３】
本開示の一例では、上記３次元モデルに対して設定される各検査部分は、予め定められた分類ルールに従ってグルーピングされている。上記表示制御部は、グルーピングされている検査部分に対する集約指示を受け付けた場合に、当該グルーピングされている検査部分の検査結果を集約し、当該集約後の検査結果を、当該グルーピングされている検査部分に対応する上記３次元モデル上の各部分に表わし、上記集約された検査結果に対する展開指示を受け付けた場合に、当該集約された検査結果の表示を集約前に戻す。
【００１４】
この開示によれば、ユーザは、各検査部分の検査結果を大まかに確認したり、詳細に確認したりすることができ、検査結果を容易に分析することができる。
【００１５】
本開示の一例では、欠陥を示す検査結果が、上記グルーピングされている検査部分の検査結果に含まれている場合、集約後の検査結果は、欠陥を示す。欠陥を示す検査結果が、上記グルーピングされている検査部分の検査結果に含まれていない場合、集約後の検査結果は、正常を示す。
【００１６】
この開示によれば、検査結果の集約時において、欠陥を示す検査結果が他の部分よりも優先して表示されるので、ユーザは、欠陥を示す検査部分を見逃しにくくなる。
【００１７】
本開示の一例では、上記外観検査システムは、上記３次元モデル上に表わされる検査部分の内から、１つ以上の検査部分を選択する選択操作を受け付けることが可能な操作部をさらに備える。上記表示制御部は、上記操作部が上記選択操作を受け付けたことに基づいて、選択された検査部分の検査に用いられた画像と、当該画像の撮像条件との少なくとも一方を上記表示装置に表示する。
【００１８】
この開示によれば、ユーザは、３次元モデルに示される任意の検査部分の撮像条件を容易に確認することができる。
【００１９】
本開示の一例では、上記検査部は、複数の検査対象物の検査処理を順次実行し、上記表示制御部は、順次検査される検査対象物に欠陥が検出された時点で、当該検査対象物の各検査部分の検査結果で上記３次元モデル上に表わされている検査結果を更新する。
【００２０】
この開示によれば、欠陥を示す検査結果が検出されない間は、３次元モデル上に表示される検査結果が更新されない。これにより、常に、欠陥を示す最新の検査結果が３次元モデルＭＬ上に表示される。そのため、ユーザは、欠陥を示す検査結果を見逃しにくくなる。
【００２１】
本開示の他の例では、検査対象物と撮像装置との間の相対位置を変化させつつ上記検査対象物の複数の検査部分を上記撮像装置で撮像して行なわれた外観検査結果の表示方法は、上記検査対象物の形状を表わす３次元モデルを取得するステップを備える。上記検査対象物の複数の検査部分は、上記３次元モデルに対して予め設定されている。上記表示方法は、上記検査対象物の各検査部分を撮像して上記撮像装置から得られた各画像に基づいて、当該検査対象物の各検査部分について欠陥の有無を検査するステップと、上記３次元モデルを表示装置に表示するとともに、上記検査対象物の各検査部分の検査結果を上記３次元モデル上の対応部分に表わすステップとを備える。
【００２２】
この開示によれば、各検査部分の検査結果が３次元モデル上に表示されることで、ユーザは、各検査部分の検査結果が検査対象物内のいずれの箇所に対応しているのかを直感的に把握することができる。
【００２３】
本開示の他の例では、検査対象物と撮像装置との間の相対位置を変化させつつ上記検査対象物の複数の検査部分を上記撮像装置で撮像して行なわれた外観検査結果の表示プログラムは、コンピュータに、上記検査対象物の形状を表わす３次元モデルを取得するステップを実行させる。上記検査対象物の複数の検査部分は、上記３次元モデルに対して予め設定されている。上記表示プログラムは、上記コンピュータに、さらに、上記検査対象物の各検査部分を撮像して上記撮像装置から得られた各画像に基づいて、当該検査対象物の各検査部分について欠陥の有無を検査するステップと、上記３次元モデルを表示装置に表示するとともに、上記検査対象物の各検査部分の検査結果を上記３次元モデル上の対応部分に表わすステップとを実行させる。
【００２４】
この開示によれば、各検査部分の検査結果が３次元モデル上に表示されることで、ユーザは、各検査部分の検査結果が検査対象物内のいずれの箇所に対応しているのかを直感的に把握することができる。
【発明の効果】
【００２５】
ある局面において、各検査対象部分の検査結果が検査対象物内のいずれの箇所に対応しているのかをユーザに直感的に把握させることができる。
【図面の簡単な説明】
【００２６】
【図１】実施の形態に従う外観検査システムの概要を示す模式図である。
【図２】実施の形態に従う画像処理装置の表示装置に表示される検査結果の一例を示す図である。
【図３】検査結果の表示態様の変形例を示す図である。
【図４】分類ルールのデータ構造の一例を示す図である。
【図５】分類ルールのデータ構造の一例を示す図である。
【図６】展開／集約ボタンを押下した場合における検査結果マトリクスの画面遷移を示す図である。
【図７】展開／集約ボタンを押下した場合における検査結果マトリクスの画面遷移を示す図である。
【図８】画像処理装置のハードウェア構成の一例を示す模式図である。
【図９】ＰＬＣ（Programmable Logic Controller）のハードウェア構成の一例を示す模式図である。
【図１０】設定装置のハードウェア構成の一例を示す模式図である。
【図１１】プロジェクトファイルのデータ構造の一例を示す図である。
【図１２】検査結果ファイルのデータ構造の一例を示す図である。
【図１３】設定装置における処理の流れの一例を示すフローチャートである。
【図１４】ワークの設計上の外観を示す模式図が表示された画面の一例を示す図である。
【図１５】検査対象部分が表示された画面の一例を示す図である。
【図１６】検査対象領域上の点の例を示す図である。
【図１７】検査対象領域から決定された検査対象位置とそれに対応する実効視野との例を示す図である。
【図１８】検査対象領域から決定された全ての検査対象部分と実効視野とを示す図である。
【図１９】設定装置によるワークの撮影位置の決定方法の一例を示す図である。
【図２０】撮影位置に対して決定された撮影経路の一例を示す図である。
【図２１】ＰＬＣにおける処理の流れの一例を示すフローチャートである。
【図２２】画像処理装置による検査処理の流れの一例を示すフローチャートである。
【図２３】検査結果マトリクスの表示処理の流れの一例を示すフローチャートである。
【図２４】セル選択操作に応じて実行される処理の具体例１を示す図である。
【図２５】セル選択操作に応じて実行される処理の具体例２を示す図である。
【図２６】セル選択操作に応じて実行される処理の具体例３を示す図である。
【図２７】セル選択操作に応じて実行される処理の具体例４を示す図である。
【図２８】セル選択操作に応じて実行される処理の具体例５を示す図である。
【図２９】図３に示される検査結果マトリクスの変形例を示す図である。
【図３０】分類ルールのデータ構造の一例を示す図である。
【図３１】展開／集約ボタンを押下した場合における検査結果マトリクスの画面遷移を示す図である。
【図３２】展開／集約ボタンを押下した場合における検査結果マトリクスの画面遷移を示す図である。
【図３３】検査結果マトリクスと期待値マトリクスとの比較処理を概略的に示す図である。
【図３４】期待値マトリクスの作成過程の一例を示す図である。
【図３５】検査結果の３次元表示処理の流れの一例を示すフローチャートである。
【図３６】３次元モデルに示される検査対象部分の選択操作に応じて実行される処理の具体例１を示す図である。
【図３７】３次元モデルに示される検査対象部分の選択操作に応じて実行される処理の具体例２を示す図である。
【図３８】３次元モデルに示される検査対象部分の展開／集約している過程を示す図である。
【図３９】変形例に係る外観検査システムを示す図である。
【図４０】ワークと撮像装置との間の相対位置を変更する別の形態を示す図である。
【図４１】ワークと撮像装置との間の相対位置を変更するさらに別の形態を示す図である。
【発明を実施するための形態】
【００２７】
以下、図面を参照しつつ、本発明に従う各実施の形態について説明する。以下の説明では、同一の部品および構成要素には同一の符号を付してある。それらの名称および機能も同じである。したがって、これらについての詳細な説明は繰り返さない。
【００２８】
＜Ａ．適用例＞
まず、図１および図２を参照して、本発明が適用される場面の一例について説明する。図１は、本実施の形態に従う外観検査システム１の概要を示す模式図である。
【００２９】
本実施の形態に従う外観検査システム１は、たとえば、工業製品の生産ラインなどにおいて、ステージ９０上に載置された検査対象物（以下、「ワークＷ」とも称す。）上の複数の検査対象部分を撮像し、得られた画像を用いて、ワークＷの外観検査を行なう。外観検査では、ワークＷの傷、汚れ、異物の有無、寸法などが検査される。
【００３０】
ステージ９０上に載置されたワークＷの外観検査が完了すると、次のワークＷがステージ９０上に搬送される。このとき、ワークＷは、ステージ９０上の予め定められた位置に予め定められた姿勢で載置される。
【００３１】
図１に示すように、外観検査システム１は、撮像装置１０と、画像処理装置２０と、ロボット３０と、ロボットコントローラ４０と、ＰＬＣ（Programmable Logic Controller）５０と、設定装置６０とを備える。
【００３２】
撮像装置１０は、画像処理装置２０からの指令に従って、撮像視野に存在する被写体を撮像して画像データを生成するものであり、被写体として外観検査の対象であるワークＷを撮像する。
【００３３】
画像処理装置２０は、ＰＬＣ５０からの指令に従って、撮像装置１０に対して撮像指令を出力する。画像処理装置２０は、検査部２１と、表示制御部２２と、表示装置２３と、記憶装置１２０とを含む。検査部２１および表示制御部２２は、画像処理装置２０のプロセッサ１１０（図８参照）によって実行される機能モジュールである。検査部２１は、撮像装置１０によって生成された画像データに対して予め定められた処理を実行することにより、ワークＷの外観の良否を判定する。表示制御部２２は、検査部２１による判定結果を表示装置２３に表示させる。なお、検査結果の出力は、画像処理装置２０に備えられる表示装置２３に出力されてもよいが、設定装置６０に備えられる表示装置（たとえば、後述のディスプレイ３６６）に出力されてもよい。記憶装置１２０は、ワークＷの形状を表わす３次元モデルＭＬを格納する。３次元モデルＭＬは、たとえば、新製品または新品種のワークＷの表面を示す３次元設計データである。
【００３４】
ロボット３０は、たとえば、基台３１上に複数のアーム３２が連結された垂直多関節ロボットである。複数のアーム３２の各連結部には回転軸が含まれている。先端アーム３２ａの先端には、撮像装置１０が取り付けられている。ロボットコントローラ４０は、ＰＬＣ５０からの指令に応じてロボット３０を制御し、ワークＷと撮像装置１０との間の相対位置およびワークＷに対する撮像装置１０の姿勢を変える。
【００３５】
なお、上述したように、ワークＷは、ステージ９０上の予め定められた位置に予め定められた姿勢で載置される。そのため、ロボット３０は、ステージ９０に対する撮像装置１０の相対位置および姿勢を変更することにより、ワークＷと撮像装置１０との間の相対位置およびワークＷに対する撮像装置１０の姿勢を変更することができる。すなわち、ロボット３０は、ステージ９０上の点を原点とする座標系を用いて撮像装置１０を移動することにより、ワークＷと撮像装置１０との間の相対位置およびワークＷに対する撮像装置１０の姿勢を変更することができる。
【００３６】
ＰＬＣ５０は、撮像装置１０がワークＷ上の複数の検査対象部分を順次撮像するように、ロボットコントローラ４０および画像処理装置２０を制御する。ＰＬＣ５０は、設定装置６０によって設定された撮像条件を満たす経路に従って、ロボットコントローラ４０を制御する。さらに、ＰＬＣ５０は、撮像装置１０が指定された撮像条件を満たしたタイミングで撮像指令を出力するように画像処理装置２０を制御する。
【００３７】
設定装置６０は、ワークＷ上の複数の検査対象部分を順次撮像するための、ワークＷと撮像装置１０との間の相対位置を含む撮像条件を満たす経路を設定する。設定装置６０は、新製品または新品種のワークＷの外観検査が必要となったときに、当該ワークＷに適した撮像条件を満たす経路を設定する。
【００３８】
図２を参照して、図１に示される外観検査システム１による検査結果の表示態様について説明する。図２は、画像処理装置２０の表示装置２３に表示される検査結果の一例を示す図である。
【００３９】
画像処理装置２０の検査部２１は、ワークＷを複数の方向から撮影して得られた各画像に対して予め定められた画像処理を実行することにより、ワークＷの各検査対象部分について欠陥の有無を検査する。検査結果は、たとえば、「欠陥有」および「欠陥無」のいずれかで表わされる。検査部２１による検査処理は、ステージ９０が検査対象のワークＷを予め定められた位置に搬送する度に実行される。画像処理装置２０の表示制御部２２は、ワークＷの各検査対象部分の検査結果を３次元モデルＭＬ上の対応部分に表わす。
【００４０】
図２に示されるように、３次元モデルＭＬには、検査対象部分Ａ１〜Ａ４が設定されている。検査対象部分Ａ１〜Ａ４の設定方法の詳細については後述する。表示制御部２２は、検査対象部分Ａ１〜Ａ４の各々についての検査結果を３次元モデルＭＬ上の検査対象部分Ａ１〜Ａ４の各々に表わす。
【００４１】
一例として、欠陥を示す検査対象部分は、特定の色（たとえば、赤色）で表わされてもよいし、点滅表示で表わされてもよい。欠陥を示す検査対象部分は、欠陥を示す部分とは異なる色（たとえば、緑色）で表わされる。
【００４２】
検査結果が３次元モデルＭＬ上に表示されることで、ユーザは、各検査対象部分の検査結果が検査対象物内のいずれの箇所に対応しているのかを直感的に把握することができる。
【００４３】
表示制御部２２は、垂直方向を軸として３次元モデルＭＬを回転させるためのツールボタン７１と、水平方向を軸として３次元モデルＭＬを回転させるためのツールボタン７２とを表示装置２３にさらに表示する。ユーザは、ツールボタン７１，７２を操作することにより、３次元モデルＭＬを適宜回転させることができる。
【００４４】
＜Ｂ．検査結果マトリクスの展開／集約機能＞
図３〜図７を参照して、検査結果の表示態様の変形例について説明する。図３は、検査結果の表示態様の変形例を示す図である。
【００４５】
図３に示されるように、検査結果マトリクス２５の横軸には、ワークの検査対象部分が部位名別に並べられる。各部位名は、予め登録されていてもよいし、ユーザによって設定されてもよい。検査結果マトリクス２５の縦軸には、検査済みのワークの識別情報が並べられる。ワークの識別情報は、たとえば、ワークの通し番号（以下、「ワークＮｏ」ともいう。）やワーク名などで表わされる。図３の例では、ワークの識別情報がワークＮｏで表わされている。
【００４６】
また、検査結果マトリクス２５上には、ワークの検査対象部分とワークＮｏとの各組み合わせに対応付けてセルが配置される。表示制御部２２は、各ワークＷの各検査対象部分の検査結果を対応するセル上に表示する。このように、各ワークの各検査対象部分についての検査結果が２次元に表わされることで、ユーザは、どのワークのどの部分に欠陥があるのかを即座に把握することができる。２次元での検査結果の表示は、検査結果が膨大になるほど有効になる。
【００４７】
典型的には、表示制御部２２は、検査結果マトリクス２５に含まれる検査結果の内の、欠陥を示す検査結果を、他の検査結果とは異なる表示態様で強調表示する。一例として、欠陥を示す検査結果のセルは、特定の色（たとえば、赤色）で表わされてもよいし、点滅表示で表わされてもよい。図３の例では、「欠陥有」を示すセルにはハッチングが付されており、「欠陥無」を示すセルにはハッチングが付されていない。欠陥を示す検査結果が他の検査結果とは異なる表示態様で強調表示されることで、ユーザは、欠陥を示す検査結果を容易に判別することができ、どのワークのどの部分に欠陥があるのかをより容易に把握することができる。
【００４８】
なお、上述では、ワークの検査対象部位が検査結果マトリクス２５の横軸に配列され、ワークＮｏが検査結果マトリクス２５の縦軸に配列される例について説明を行なったが、ワークＮｏが検査結果マトリクス２５の横軸に配列され、ワークの検査対象部位が検査結果マトリクス２５の縦軸に配列されてもよい。
【００４９】
検査結果マトリクス２５の各行または各列は、予め定められた分類ルールに従って行単位または列単位でグルーピングされている。図３の例では、検査結果マトリクス２５の横軸方向においては、ワークの部位「Ａ１」〜「Ａ５」は、グループＧＶ１としてグルーピングされており、ワークの部位「Ｂ１」〜「Ｂ３」は、グループＧＶ２としてグルーピングされている。ワークの検査対象部分のグルーピングは、図４に示される分類ルール１３４Ａに従って行なわれる。
【００５０】
図４は、分類ルール１３４Ａのデータ構造の一例を示す図である。図４に示されるように、分類ルール１３４Ａには、ワークＷの検査対象部分が階層的に対応付けられている。各部位の対応関係は、予め登録されていてもよいし、ユーザによって任意に設定されてもよい。一例として、上位の階層に規定される検査対象部分は、下位の階層に規定される検査対象部分を包含する関係を有する。図４の例では、検査対象部分「Ａ」は、部位「Ａ１」〜「Ａ５」に包含されている。すなわち、部位「Ａ１」〜「Ａ５」は、検査対象部分「Ａ」内の領域である。
【００５１】
再び図３を参照して、検査結果マトリクス２５の縦軸方向においては、ワークＮｏ「００１Ａ」〜「００１Ｅ」は、グループＧＨ１としてグルーピングされており、ワークＮｏ「００２Ａ」〜「００２Ｊ」は、グループＧＨ２としてグルーピングされている。ワークＮｏのグルーピングは、図５に示される分類ルール１３４Ｂに従って行なわれる。
【００５２】
図５は、分類ルール１３４Ｂのデータ構造の一例を示す図である。図５に示されるように、分類ルール１３４Ｂには、検査対象の各ワークが階層的に関連付けられている。各ワークの階層関係は、予め登録されていてもよいし、ユーザによって任意に設定されてもよい。一例として、各ワークは、生産ラインのロット番号に関連付けられる。上位の階層に規定されるロット番号は、下位の階層に規定されるワークを包含する関係を有する。図５の例では、ロット番号「００１」は、ワークＮｏ「００１Ａ」〜「００１Ｅ」に包含される。すなわち、ロット番号「００１」において、ワークＮｏ「００１Ａ」〜「００１Ｅ」が生産されたことを示す。
【００５３】
再び図３を参照して、検査結果マトリクス２５の縦軸方向および横軸方向の各グループには、展開／集約ボタンが割り付けられている。図３の例では、グループＧＨ１には展開／集約ボタンＢＨ１が割り付けられている。グループＧＨ２には展開／集約ボタンＢＨ２が割り付けられている。グループＧＶ１には展開／集約ボタンＢＶ１が割り付けられている。ＧＶ２には展開／集約ボタンＢＶ２が割り付けられている。
【００５４】
図６は、展開／集約ボタンＢＶ２を押下した場合における検査結果マトリクス２５の画面遷移を示す図である。展開／集約ボタンＢＶ２は、グループＧＶ２のセルに対する集約指示および展開指示を押下の度に交互に受け付ける。すなわち、グループＧＶ２のセルが展開されている状態で、展開／集約ボタンＢＶ２が押下された場合、画像処理装置２０の表示制御部２２は、グループＧＶ２のセルを一列に集約する。一方で、グループＧＶ２のセルが集約されている状態で、展開／集約ボタンＢＶ２が押下された場合、表示制御部２２は、グループＧＶ２のセルの表示を集約前に戻す。
【００５５】
集約対象の検査結果に「欠陥有」を示す検査結果と「欠陥無」を示す検査結果とが含まれている場合、表示制御部２２は、「欠陥有」の検査結果の表示を「欠陥無」の検査結果の表示よりも優先して集約処理を行なう。一例として、破線ＡＲ１内の検査結果には、「欠陥有」を示す検査結果が１個含まれており、「欠陥無」を示す検査結果が２個含まれている。集約処理により、破線ＡＲ１内の３個の検査結果は、破線ＡＲ２内に示される１個の検査結果に集約される。このとき、集約前の検査結果には、「欠陥有」が含まれているので、表示制御部２２は、集約後の検査結果を「欠陥有」として表わす。
【００５６】
このように、表示制御部２２は、集約前の検査結果に「欠陥有」を示す検査結果が１個でも含まれている場合には、表示制御部２２は、集約後の検査結果を「欠陥有」とする。一方で、表示制御部２２は、集約前の検査結果に「欠陥有」を示す検査結果が１個も含まれていない場合には、表示制御部２２は、集約後の検査結果を「欠陥無」とする。
【００５７】
図７は、展開／集約ボタンＢＨ２を押下した場合における検査結果マトリクス２５の画面遷移を示す図である。展開／集約ボタンＢＨ２は、グループＧＨ２のセルに対する集約指示および展開指示を押下の度に交互に受け付ける。すなわち、グループＧＨ２のセルが展開されている状態で、展開／集約ボタンＢＨ２が押下された場合、表示制御部２２は、グループＧＨ２のセルを一行に集約する。一方で、グループＧＨ２のセルが集約されている状態で、展開／集約ボタンＢＨ２が押下された場合、表示制御部２２は、グループＧＨ２のセルの表示を集約前に戻す。
【００５８】
一例として、破線ＡＲ３内の検査結果には、「欠陥有」を示す検査結果が１個含まれ、「欠陥無」を示す検査結果が９個含まれている。集約処理により、破線ＡＲ３内の１０個の検査結果は、破線ＡＲ４内に示される１個の検査結果に集約される。このとき、集約前の検査結果には、「欠陥有」が含まれているので、表示制御部２２は、集約後の検査結果を「欠陥有」として表わす。
【００５９】
以上のように、画像処理装置２０の表示制御部２２は、グルーピングされている行群またはグルーピングされている列群に対する集約指示を受け付けた場合に、当該行群または当該列群の検査結果を一行または一列に集約して表示する。また、表示制御部２２は、集約して表示されている検査結果に対する展開指示を受け付けた場合に、当該集約して表示されている検査結果の表示を集約前に戻す。これにより、検査結果マトリクス２５の行数または列数が表示装置２３に表示しきれないほど膨大である場合でも、ユーザは、集約表示および展開表示を活用することで検査結果を効率的に確認することができる。
【００６０】
なお、上述の例では、集約されたセルが「欠陥有」と「欠陥無」との２値で表される例について説明を行なったが、集約されたセルは必ずしも２値で表される必要はない。一例として、「欠陥有」を示す検査結果が集約対象のセルに多く含まれているほど、表示制御部２２は、集約後のセルの表示を濃く表示してもよい。
【００６１】
＜Ｃ．ハードウェア構成＞
次に、図８〜図１０を参照して、図１に示される画像処理装置２０、ＰＬＣ５０、および設定装置６０のハードウェア構成について順に説明する。
【００６２】
（Ｃ１．画像処理装置２０のハードウェア構成）
図８は、画像処理装置２０のハードウェア構成の一例を示す模式図である。図８を参照して、画像処理装置２０は、典型的には、汎用的なコンピュータアーキテクチャに従う構造を有しており、予めインストールされたプログラムをプロセッサが実行することで、外観検査処理などの各種の画像処理を実現する。
【００６３】
より具体的には、画像処理装置２０は、ＣＰＵ（Central Processing Unit）やＭＰＵ（Micro-Processing Unit）などのプロセッサ１１０と、ＲＡＭ（Random Access Memory）１１２と、表示コントローラ１１４と、システムコントローラ１１６と、Ｉ／Ｏ（Input Output）コントローラ１１８と、ハードディスクなどの記憶装置１２０と、カメラインターフェイス１２２と、入力インターフェイス１２４と、コントローラインターフェイス１２６と、通信インターフェイス１２８と、メモリカードインターフェイス１３０とを含む。これらの各部は、システムコントローラ１１６を中心として、互いにデータ通信可能に接続される。
【００６４】
プロセッサ１１０は、システムコントローラ１１６との間でプログラム（コード）などを交換して、これらを所定順序で実行することで、目的の演算処理を実現する。
【００６５】
システムコントローラ１１６は、プロセッサ１１０、ＲＡＭ１１２、表示コントローラ１１４、およびＩ／Ｏコントローラ１１８とそれぞれバスを介して接続されており、各部との間でデータ交換などを行なうとともに、画像処理装置２０全体の処理を司る。
【００６６】
ＲＡＭ１１２は、典型的には、ＤＲＡＭ（Dynamic Random Access Memory）などの揮発性の記憶装置であり、記憶装置１２０から読み出されたプログラムや、撮像装置１０によって取得されたカメラ画像（画像データ）、カメラ画像に対する処理結果、およびワークデータなどを保持する。
【００６７】
表示コントローラ１１４は、表示装置２３と接続されており、システムコントローラ１１６からの内部コマンドに従って、各種の情報を表示するための信号を表示装置２３へ出力する。
【００６８】
Ｉ／Ｏコントローラ１１８は、画像処理装置２０に接続される記録媒体や外部機器との間のデータ交換を制御する。より具体的には、Ｉ／Ｏコントローラ１１８は、記憶装置１２０と、カメラインターフェイス１２２と、入力インターフェイス１２４と、コントローラインターフェイス１２６と、通信インターフェイス１２８と、メモリカードインターフェイス１３０と接続される。
【００６９】
記憶装置１２０は、プロセッサ１１０で実行される画像処理プログラム１４２や表示プログラム１４３に加えて、プロジェクトファイル１４４などの各種データを格納する。プロジェクトファイル１４４の詳細については後述する。典型的には、記憶装置１２０は、ハードディスクなどの不揮発性の磁気記憶装置であってもよいし、フラッシュメモリなどの半導体記憶装置であってもよいし、ＤＶＤ−ＲＡＭ（Digital Versatile Disk Random Access Memory）などの光学記憶装置であってもよい。
【００７０】
画像処理プログラム１４２および表示プログラム１４３は、他のプログラムの一部に組み込まれて提供されるものであってもよい。その場合、画像処理プログラム１４２自体および表示プログラム１４３自体は、他のプログラムと協働して予め定められた処理を実行する。すなわち、画像処理プログラム１４２および表示プログラム１４３としては、このような他のプログラムに組み込まれた形態であってもよい。また、代替的に、画像処理プログラム１４２または表示プログラム１４３の実行により提供される機能の一部もしくは全部を専用のハードウェア回路として実装してもよい。
【００７１】
カメラインターフェイス１２２は、ワークＷを撮影することで生成された画像データを受け付ける入力部に相当し、撮像装置１０とプロセッサ１１０との間のデータ伝送を仲介する。より具体的には、カメラインターフェイス１２２は、１つ以上の撮像装置１０と接続が可能であり、プロセッサ１１０からカメラインターフェイス１２２を介して撮像装置１０とに撮影指示が出力される。これにより、撮像装置１０とは、被写体を撮影し、生成した画像をカメラインターフェイス１２２を介してプロセッサ１１０に出力する。
【００７２】
入力インターフェイス１２４は、プロセッサ１１０とキーボード１３４、マウス、タッチパネル、専用コンソールなどの入力装置との間のデータ伝送を仲介する。
【００７３】
コントローラインターフェイス１２６は、ＰＬＣ５０とプロセッサ１１０との間のデータ伝送を仲介する。より具体的には、コントローラインターフェイス１２６は、ＰＬＣ５０によって制御される生産ラインの状態に係る情報やワークＷに係る情報などをプロセッサ１１０へ伝送する。
【００７４】
通信インターフェイス１２８は、プロセッサ１１０と図示しない他のパーソナルコンピュータやサーバ装置などとの間のデータ伝送を仲介する。通信インターフェイス１２８は、典型的には、イーサネット（登録商標）やＵＳＢ（Universal Serial Bus）などからなる。
【００７５】
メモリカードインターフェイス１３０は、プロセッサ１１０と記録媒体であるメモリカード１３６との間のデータ伝送を仲介する。メモリカード１３６には、画像処理装置２０で実行される画像処理プログラム１４２や表示プログラム１４３などが格納された状態で流通し、メモリカードインターフェイス１３０は、このメモリカード１３６からこれらのプログラムを読み出す。メモリカード１３６は、ＳＤ（Secure Digital）などの汎用的な半導体記憶デバイスや、フレキシブルディスク（Flexible Disk）などの磁気記録媒体や、ＣＤ−ＲＯＭ（Compact Disk Read Only Memory）などの光学記録媒体等からなる。あるいは、通信インターフェイス１２８を介して、配信サーバなどからダウンロードしたプログラムを画像処理装置２０にインストールしてもよい。
【００７６】
（Ｃ２．ＰＬＣ５０のハードウェア構成）
次に、図９を参照して、ＰＬＣ５０のハードウェア構成について説明する。図９は、ＰＬＣ５０のハードウェア構成の一例を示す模式図である。
【００７７】
ＰＬＣ５０は、チップセット２１２と、プロセッサ２１４と、不揮発性メモリ２１６と、主メモリ２１８と、システムクロック２２０と、メモリカードインターフェイス２２２と、通信インターフェイス２２８と、内部バスコントローラ２３０と、フィールドバスコントローラ２３８とを含む。チップセット２１２と他のコンポーネントとの間は、各種のバスを介してそれぞれ結合されている。
【００７８】
プロセッサ２１４およびチップセット２１２は、典型的には、汎用的なコンピュータアーキテクチャに従う構成を有している。すなわち、プロセッサ２１４は、チップセット２１２から内部クロックに従って順次供給される命令コードを解釈して実行する。チップセット２１２は、接続されている各種コンポーネントとの間で内部的なデータを遣り取りするとともに、プロセッサ２１４に必要な命令コードを生成する。システムクロック２２０は、予め定められた周期のシステムクロックを発生してプロセッサ２１４に出力する。チップセット２１２は、プロセッサ２１４での演算処理の実行の結果得られたデータなどをキャッシュする機能を有する。
【００７９】
ＰＬＣ５０は、記憶手段として、不揮発性メモリ２１６および主メモリ２１８を有する。不揮発性メモリ２１６は、ＯＳ、システムプログラム、ユーザプログラム、ログ情報などを不揮発的に保持する。主メモリ２１８は、揮発性の記憶領域であり、プロセッサ２１４で実行されるべき各種プログラムを保持するとともに、各種プログラムの実行時の作業用メモリとしても使用される。
【００８０】
ＰＬＣ５０は、通信手段として、通信インターフェイス２２８と、内部バスコントローラ２３０と、フィールドバスコントローラ２３８とを有する。これらの通信回路は、データの送信および受信を行なう。
【００８１】
通信インターフェイス２２８は、画像処理装置２０や設定装置６０との間でデータを遣り取りする。一例として、ＰＬＣ５０は、通信インターフェイス２２８を介して画像処理装置２０に対して撮像指示を出力する。あるいは、ＰＬＣ５０は、通信インターフェイス２２８を介して画像処理装置２０からワークＷの外観検査結果を受け付ける。
【００８２】
内部バスコントローラ２３０は、内部バス２２６を介したデータの遣り取りを制御する。より具体的には、内部バスコントローラ２３０は、ＤＭＡ（Dynamic Memory Access）制御回路２３２と、内部バス制御回路２３４と、バッファメモリ２３６とを含む。
【００８３】
メモリカードインターフェイス２２２は、ＰＬＣ５０に対して着脱可能なメモリカード２２４とプロセッサ２１４とを接続する。
【００８４】
フィールドバスコントローラ２３８は、フィールドネットワークに接続するための通信インターフェイスである。ＰＬＣ５０は、フィールドバスコントローラ２３８を介してロボットコントローラ４０と接続される。当該フィールドネットワークには、たとえば、ＥｔｈｅｒＣＡＴ（登録商標）、ＥｔｈｅｒＮｅｔ／ＩＰ（登録商標）、ＣｏｍｐｏＮｅｔ（登録商標）などが採用される。
【００８５】
（Ｃ３．設定装置６０のハードウェア構成）
次に、図１０を参照して、設定装置６０のハードウェア構成について説明する。図１０は、設定装置６０のハードウェア構成の一例を示す模式図である。
【００８６】
設定装置６０は、プロセッサ３６２と、メインメモリ３６３と、記憶装置３６４と、ディスプレイ３６６と、入力デバイス３６７と、通信インターフェイス３６８とを含む。これらの各部は、バス３６１を介して、互いにデータ通信可能に接続される。
【００８７】
プロセッサ３６２は、記憶装置３６４にインストールされた設定プログラム３６５を含むプログラム（コード）をメインメモリ３６３に展開して、これらを所定順序で実行することで、各種の演算を実施する。メインメモリ３６３は、典型的には、ＤＲＡＭ（Dynamic Random Access Memory）などの揮発性の記憶装置である。
【００８８】
記憶装置３６４は、設定装置６０が備える内部メモリであって、不揮発性の記憶装置であって、設定プログラム３６５等の各種プログラムを記憶する。なお、記憶装置３６４は、ハードディスクであってもよいし、フラッシュメモリなどの半導体記憶装置であってもよい。
【００８９】
設定プログラム３６５は、設定装置６０による撮像条件の変更経路を設定するための手順を示すプログラムである。設定プログラム３６５などの各種プログラムは、記憶装置３６４に保存されている必要はなく、設定装置６０と通信可能なサーバや、設定装置６０と直接接続可能な外部メモリに保存されていてもよい。たとえば、外部メモリに設定装置６０で実行される各種プログラムおよび各種プログラムで用いられる各種パラメータが格納された状態で流通し、設定装置６０は、この外部メモリから各種プログラムおよび各種パラメータを読み出す。外部メモリは、コンピュータその他装置、機械等が記録されたプログラム等の情報を読み取り可能なように、当該プログラム等の情報を、電気的、磁気的、光学的、機械的または化学的作用によって蓄積する媒体である。あるいは、設定装置６０と通信可能に接続されたサーバなどからダウンロードしたプログラムやパラメータを設定装置６０にインストールしてもよい。
【００９０】
ディスプレイ３６６は、たとえば液晶ディスプレイである。入力デバイス３６７は、たとえばマウス、キーボード、タッチパッドなどにより構成される。
【００９１】
通信インターフェイス３６８は、ＰＬＣ５０とプロセッサ３６２との間で各種データをやり取りする。なお、通信インターフェイス３６８は、サーバとプロセッサ３６２との間でデータをやり取りしてもよい。通信インターフェイス３６８は、ＰＬＣ５０との間で各種データをやり取りするためのネットワークに対応するハードウェアを含む。
【００９２】
＜Ｄ．プロジェクトファイル１４４＞
図１１を参照して、上述のプロジェクトファイル１４４（図８参照）について説明する。図１１は、プロジェクトファイル１４４のデータ構造の一例を示す図である。
【００９３】
ワークＷの検査処理に関する各種データがプロジェクトファイル１４４に関連付けられることで、ワークＷの検査処理に関する各種データが一元的に管理される。
【００９４】
一例として、プロジェクトファイル１４４には、撮像条件ファイル１４６Ａと、画像ファイル群１４６Ｂと、検査条件ファイル１４６Ｃと、検査結果ファイル１４６Ｄと、ワーク情報ファイル１４６Ｅと、生産情報ファイル１４６Ｆと、分類ルールファイル１４６Ｇと、期待値ファイル１４６Ｈとが関連付けられる。
【００９５】
撮像条件ファイル１４６Ａは、ワークＷの各検査対象部分についての撮像条件を規定するデータである。すなわち、画像処理装置２０は、撮像条件ファイル１４６Ａを参照すれば、検査対象部分をキーとして、撮像条件を一意に特定することができる。あるいは、ワークＮｏと検査対象部分との組み合わせをキーとして撮像条件が一意に特定されてもよい。撮像条件は、たとえば、ワークＷと撮像装置１０との間の相対位置、ワークＷの撮像時における照明の位置などを含む。
【００９６】
画像ファイル群１４６Ｂは、規定される撮像条件に従ってワークＷを撮像して撮像装置１０から得られたデータ群である。画像ファイル群１４６Ｂに含まれる各画像ファイルは、ワークＮｏと検査対象部分とに対応付けられている。すなわち、画像処理装置２０は、ワークＮｏと検査対象部分との組み合わせをキーとして、検査に用いられた画像ファイルを一意に特定することができる。ワークＮｏと検査対象部分との組み合わせに関する情報は、たとえば、画像ファイルのファイル名や画像ファイルのヘッダに規定される。
【００９７】
検査条件ファイル１４６Ｃは、ワークの各検査対象部分についての検査条件を規定するデータである。すなわち、画像処理装置２０は、検査条件ファイル１４６Ｃを参照すれば、検査対象部分キーとして検査条件を一意に特定することができる。検査条件は、たとえば、画像内の検査対象部分、実行される画像処理フローチャート、画像処理の実行時に読み込まれる計測パラメータ、欠陥の有無を判断するための閾値などを含む。
【００９８】
検査結果ファイル１４６Ｄは、各ワークの各検査対象部分に対する計測値や検査結果などを規定するデータである。検査結果ファイル１４６Ｄのデータ構造の詳細については後述する。
【００９９】
ワーク情報ファイル１４６Ｅは、検査対象のワークの形状を表わす３次元モデルや、検査対象のワークの種別情報などを含む。
【０１００】
生産情報ファイル１４６Ｆは、検査対象のワークのロット番号、シリアル番号などを規定するデータである。
【０１０１】
分類ルールファイル１４６Ｇは、上述の分類ルール１３４Ａ（図４参照）と、上述の分類ルール１３４Ｂ（図５参照）と、後述の分類ルール１３４Ｃ（図３０参照）との少なくとも１つを含むデータである。
【０１０２】
期待値ファイル１４６Ｈは、検査対象の各ワークの各検査対象部分について検査結果の期待値を規定するデータである。期待値ファイル１４６Ｈの詳細については後述する。
【０１０３】
＜Ｅ．検査結果ファイル１４６Ｄ＞
図１２を参照して、上述のプロジェクトファイル１４４（図１１参照）に含まれる検査結果ファイル１４６Ｄについて説明する。
【０１０４】
図１２は、検査結果ファイル１４６Ｄのデータ構造の一例を示す図である。検査結果ファイル１４６Ｄは、ワークの識別情報（たとえば、ワークＮｏ）と、ワークの検査対象部分を示す部位名と、検査処理の出力結果として得られる計測値と、欠陥の有無を示す検査結果とを含む。
【０１０５】
画像処理装置２０は、検査結果ファイル１４６Ｄを参照すれば、ワークＮｏと検査対象部分との組み合わせをキーとして、計測値および検査結果を一意に特定することができる。
【０１０６】
＜Ｆ．設定装置における処理の流れ＞
図１３は、設定装置６０における処理の流れの一例を示すフローチャートである。外観検査システム１によって新製品または新品種のワークＷの外観検査が必要になったときに、設定装置６０は、たとえば図１３に示すフローチャートに従った処理を行ない、新製品または新品種のワークＷに適した撮像条件の変更経路を設定する。新製品または新品種のワークＷの設計上の表面を示す３次元設計データは、設定装置６０の記憶装置３６４に予め格納される。
【０１０７】
図１３に示す例では、まずステップＳ１において、設定装置６０のプロセッサ３６２は、記憶装置３６４から３次元設計データを読み込む。次にステップＳ２において、プロセッサ３６２は、３次元設計データで示されるワークＷの設計上の外観を示す模式図を設定装置６０のディスプレイ３６６に表示し、ユーザ入力に従ってワークＷ上の検査対象領域を決定する。このとき、ワークＷがステージ９０上の予め定められた位置に予め定められた姿勢で載置されることを前提として、プロセッサ３６２は、３次元設計データの座標系を、ステージ９０上の点を原点とするＸＹＺ座標系に変換する。そのため、検査対象領域は、ステージ９０上の点を原点とするＸＹＺ座標系で示される。
【０１０８】
次にステップＳ３において、プロセッサ３６２は、検査対象領域に対応する検査要件を満たすように、検査対象領域内から複数の検査対象位置を決定する。すなわち、プロセッサ３６２は、検査対象領域内において決定された複数の検査対象位置の各々を検査対象部分として決定する。
【０１０９】
次にステップＳ４において、プロセッサ３６２は、複数の検査対象位置の各々に対して、検査時のワークＷと撮像装置１０との間の相対位置を含む撮像条件を決定する。
【０１１０】
次にステップＳ５において、プロセッサ３６２は、ステップＳ４で決定された、ワークＷと撮像装置１０との間の相対位置を通過するように撮影経路を決定する。
【０１１１】
ステップＳ２で決定された検査対象領域、ステップＳ３で決定された検査対象位置、ステップＳ４で決定された撮像条件、およびステップＳ５で決定された撮影経路は、画像処理装置２０およびＰＬＣ５０に送信される。
【０１１２】
なお、上記の例では、ステップＳ３において、検査対象部分から複数の検査対象位置が決定されるとした。しかしながら、ステップＳ２において、複数の検査対象部分が決定され、ステップＳ３において、複数の検査対象部分の各々から少なくとも１つの検査対象位置が決定されてもよい。これによっても、ステップＳ３により複数の検査対象位置が決定される。
【０１１３】
＜Ｇ．検査対象部分の決定方法＞
図１４および図１５を参照して、検査対象部分の決定方法の一例について説明する。図１４は、ワークＷの設計上の外観を示す模式図が表示された画面の一例を示す図である。図１５は、検査対象部分が表示された画面の一例を示す図である。
【０１１４】
図１４に示されるように、設定装置６０は、ワークＷの形状を表わす３次元モデルＭＬを含む画面６１ａをディスプレイ３６６に表示させる。画面６１ａには、垂直方向を軸として３次元モデルＭＬを回転させるためのツールボタン７１と、水平方向を軸として３次元モデルＭＬを回転させるためのツールボタン７２とが含まれる。ユーザは、ツールボタン７１，７２を操作することにより、３次元モデルＭＬを適宜回転させることができる。
【０１１５】
設定装置６０は、ユーザから検査したい場所の指定を受け付ける。具体的には、ユーザは、入力デバイス３６７を用いて、ワークＷの３次元モデルＭＬ上における検査したい複数点をクリックする。図１４に示す画面６１ａでは、ユーザによってクリックされた複数点が丸印７４によって示されている。
【０１１６】
設定装置６０は、３次元モデルＭＬ上で指定された複数の丸印７４を含む領域を検査対象領域として切り出す。具体的には、設定装置６０は、指定された各丸印７４に対応するワークＷの表面上の点から当該表面に沿って所定距離以内の範囲を求め、当該範囲の和集合を検査対象領域として切り出す。
【０１１７】
さらに、設定装置６０は、輪郭線が直線または円などの幾何学図形となるように検査対象領域を調整する。図１５に示すディスプレイ３６６の画面６１ｂには、輪郭線がワークＷのいずれかの稜線と平行な直線となるように調整された検査対象領域７５が示される。
【０１１８】
さらに、設定装置６０は、ユーザから検査対象領域７５の微調整の指示を受け付け、当該指示に応じて検査対象領域７５を微調整する。画面６１ｂには、検査対象領域７５を拡大または縮小するためのツールボタン７６，７７が含まれる。ユーザは、入力デバイス３６７を用いて、検査対象領域７５の輪郭線を構成する一辺を選択し、ツールボタン７６，７７を操作することにより、検査対象領域７５の拡大または縮小の指示を入力する。もしくは、ユーザは、入力デバイス３６７に含まれるマウスを用いて、検査対象領域７５の輪郭線を構成する一辺上の点７８をドラッグすることにより、検査対象領域７５の拡大または縮小の指示を入力してもよい。これにより、設定装置６０は、検査対象領域７５の拡大または縮小を行なう。このようにして、設定装置６０は、検査対象領域７５を決定する。図１５に示す例では、直方体のワークＷの６面のうちの４面の部分領域を集合した領域が検査対象領域７５として決定されている。
【０１１９】
＜Ｈ．検査対象位置の決定方法＞
図１６〜図１８を参照して、設定装置６０による検査対象位置の決定方法の一例について説明する。図１６は、検査対象領域上の点の例を示す図である。図１７は、検査対象領域から決定された検査対象位置とそれに対応する実効視野との例を示す図である。図１８は、検査対象領域から決定された全ての検査対象部分と実効視野とを示す図である。
【０１２０】
カメラ解像度をＲ（ｐｉｘ）、要求される最小欠陥サイズをＤ（ｍｍ）とするとき、当該最小欠陥サイズの欠陥を認識できるという検査要件を満たすことが可能な最大の、撮像装置１０による撮像視野ＦＯＶが検査対象部分として設定される。撮像視野ＦＯＶの径は、一般に、比例定数ａを用いてａ×Ｄ×Ｒで表わされる。
【０１２１】
設定装置６０は、検査対象領域７５を点の集合とみなし、法線ベクトルの分布を用いて、検査対象領域７５内の点の近傍の３次元形状を調査することができる。たとえば、設定装置６０は、ワークＷの３次元設計データに基づいて、検査対象領域７５内の点から表面に沿って距離Ｌ以内の範囲における法線ベクトルの分布を求める。距離Ｌは、たとえば、撮像視野ＦＯＶの径（＝ａ×Ｄ×Ｒ）に比例定数ｂを乗じた値（＝ｂ×ａ×Ｄ×Ｒ）である。
【０１２２】
図１６に示す例では、点Ｐ１の近傍は平坦である。そのため、点Ｐ１からワークＷの表面に沿って距離Ｌ以内の範囲内の法線ベクトルは、全てベクトルｎ２となる。点Ｐ２は２面が交わる稜線の近傍に位置する。そのため、点Ｐ２からワークＷの表面に沿って距離Ｌ以内の範囲内の法線ベクトルは、２つのベクトルｎ２，ｎ４を含む。点Ｐ２は３面が交わる頂点の近傍に位置する。そのため、点Ｐ３からワークＷの表面に沿って距離Ｌ以内の範囲内の法線ベクトルは、３つのベクトルｎ１，ｎ２，ｎ４を含む。したがって、設定装置６０は、検査対象領域７５内の点から表面に沿って距離Ｌ以内の範囲の法線ベクトルの分布により、当該点の近傍が平坦であるのか、当該点の近傍に稜線が存在するのか、当該点の近傍に稜線が存在するのか、を判定できる。
【０１２３】
図１７に示されるように、設定装置６０は、検査対象領域７５の中から無作為に選択した１点を検査対象位置Ｂｉとして選択する。設定装置６０は、検査対象位置Ｂｉに対して、撮像装置１０による実効視野ＦＯＶ２ｉを検査対象部分として求める。実効視野ＦＯＶ２ｉは、検査対象位置Ｂｉを含み、１つの撮像条件を用いて撮像装置１０が撮像可能かつ検査可能な視野である。設定装置６０は、検査対象位置Ｂｉの近傍の３次元形状に応じて実効視野ＦＯＶ２ｉを決定する。実効視野ＦＯＶ２ｉが取り得る最大径は、撮像視野ＦＯＶの径（＝ａ×Ｄ×Ｒ）に設定される。
【０１２４】
たとえば、設定装置６０は、実効視野ＦＯＶ２ｉにおける法線ベクトル分布のばらつきが所定範囲内に入るように、実効視野ＦＯＶ２ｉを決定する。検査対象位置Ｂｉの近傍が平坦である場合、設定装置６０は、検査対象位置Ｂｉから表面に沿って距離ａ×Ｄ×Ｒ以内の範囲（つまり、撮像視野ＦＯＶ）を実効視野ＦＯＶ２ｉとして決定する。一方、検査対象位置Ｂｉの近傍に稜線または頂点が存在する場合、図１７に示されるように、設定装置６０は、検査対象位置Ｂｉから表面に沿って距離ａ×Ｄ×Ｒ以内の範囲から一部の範囲を除いた範囲を実効視野ＦＯＶ２ｉとする。除かれる範囲は、法線ベクトル分布において最大の分布量を示す法線ベクトル以外の法線ベクトルを有する表面の範囲である。
【０１２５】
次に、設定装置６０は、検査対象領域７５に属する点の集合から、決定した実効視野ＦＯＶ２ｉに属する点の集合を除去し、残った点の集合の中から無作為に選択した１点を次の検査対象位置Ｂ（ｉ＋１）として選択する。設定装置６０は、選択した検査対象位置Ｂ（ｉ＋１）に対しても実効視野ＦＯＶ２（ｉ＋１）を決定する。設定装置６０は、検査対象領域７５に属する点の集合が０になるまで、この処理を繰り返す。これにより、図１８に示されるように、検査対象領域７５から複数の検査対象位置Ｂｉ（ｉ＝１，２，・・・）が決定される。検査対象領域７５内の全ての点は、複数の検査対象位置Ｂｉ（ｉ＝１，２，・・・）のいずれかの実効視野ＦＯＶ２ｉに含まれる。上述したように、実効視野ＦＯＶ２ｉが取り得る最大径は、撮像視野ＦＯＶの径に設定される。そのため、検査対象領域７５の全域について最小欠陥サイズの欠陥が認識可能なように検査対象位置が決定される。
【０１２６】
なお、上記の説明では、設定装置６０は、検査対象領域７５から無作為に検査対象位置Ｂｉを抽出するとした。しかしながら、設定装置６０は、予め定められた幾何学的条件に従って検査対象領域７５から検査対象位置Ｂｉを抽出してもよい。あるいは、設定装置６０は、抽出された複数の検査対象位置Ｂｉが規則的に整列するように、検査対象領域７５から検査対象位置Ｂｉを抽出してもよい。
【０１２７】
たとえば、ワークＷにおいて稜線または頂点の近傍に欠陥が生じやすい場合、稜線または頂点の近傍を優先的に検査するという検査要件を満たすように、検査対象位置が決定されてもよい。たとえば、検査対象領域７５内のうち、所定距離内に稜線または頂点が存在する点の集合から優先的に検査対象位置Ｂｉが抽出されてもよい。
【０１２８】
＜Ｉ．撮像条件の決定方法＞
図１９は、設定装置６０によるワークＷの撮影位置Ｃｉの決定方法の一例を示す図である。設定装置６０は、検査対象位置ＢｉにおけるワークＷの設計上の外観表面の法線上において撮影位置Ｃｉを決定する。具体的には、撮影位置Ｃｉは、検査対象位置Ｂｉに対応する実効視野ＦＯＶ２ｉを撮像可能であり、かつ、検査対象位置Ｂｉにピントが合う最適な被写体距離だけ検査対象位置Ｂｉから離れた位置に決定される。
【０１２９】
次に、設定装置６０は、決定された撮影位置Ｃｉに基づいて撮像条件を決定する。典型的には、設定装置６０は、検査対象位置Ｂｉを視野に含み、検査対象位置Ｂｉにピントが合う最適な撮像条件を決定する。
【０１３０】
撮像条件は、たとえば、ステージ９０上の点を原点とするＸＹＺ座標系における撮像装置１０のＸ座標、Ｙ座標およびＺ座標と、撮像装置１０の光軸の方向を特定するθｘ、θｙ、θｚとの６個のパラメータを含む。θｘは、撮像装置１０の光軸をＸＹ平面に投影した線とＸ軸とのなす角度であり、θｙは、撮像装置１０の光軸をＹＺ平面に投影した線とＹ軸とのなす角度であり、θｚは、撮像装置１０の光軸をＺＸ平面に投影した線とＺ軸とのなす角度である。ＸＹＺ座標は、ワークＷと撮像装置１０との間の相対位置を特定するパラメータであり、θｘ，θｙ，θｚは、ワークＷに対する撮像装置１０の姿勢を特定するパラメータである。
【０１３１】
＜Ｊ．撮影経路の決定方法＞
図２０は、撮影位置Ｃｉに対して決定された撮影経路の一例を示す図である。
【０１３２】
設定装置６０は、決定した撮影位置Ｃ１〜Ｃ７を通過するように撮影経路を決定する。このとき、設定装置６０は、予め定められた要件を満たすように撮影経路を決定する。たとえば、予め定められた要件が移動時間を最短とする要件である場合、設定装置６０は、複数の撮像位置を順に通過する経路候補のうちで、移動時間が最短となる経路候補を撮影経路として設定する。たとえば、設定装置６０は、予め定められた要件で示される項目（たとえば移動時間）を評価するための評価値を経路候補ごとに算出し、算出した評価値に基づいて撮影経路を設定すればよい。さらに、複数の検査対象位置の各々について複数の撮像位置候補が存在する場合も、設定装置６０は、評価値に基づいて、当該複数の撮像位置候補の中の１つを撮像位置として選択すればよい。このようにして、予め定められた要件を満たすように最適化された撮影経路が設定される。
【０１３３】
図２０には、決定された撮影経路ＰＳが示されている。図２０の例では、「撮影位置Ｃ１」→「撮影位置Ｃ４」→「撮影位置Ｃ５」→「撮影位置Ｃ６」→「撮影位置Ｃ７」→「撮影位置Ｃ３」→「撮影位置Ｃ２」を順に通過するように撮影経路ＰＳが決定されている。
【０１３４】
＜Ｋ．ＰＬＣ５０による制御処理＞
図２１は、ＰＬＣ５０における処理の流れの一例を示すフローチャートである。図２１に示される処理は、ＰＬＣ５０のプロセッサ２１４がプログラムを実行することにより実現される。他の局面において、処理の一部または全部が、回路素子またはその他のハードウェアによって実行されてもよい。
【０１３５】
ＰＬＣ５０は、撮像装置１０が決定された撮影経路ＰＳ（図２０参照）を通過するようにロボットコントローラ４０を制御するとともに、撮像装置１０が決定された撮影位置Ｃｉ（図２０参照）で撮影を実行するように画像処理装置２０を制御する。
【０１３６】
まず、ステップＳ１０において、プロセッサ２１４は、ステージ９０に載置されたワークＷが予め定められた位置に設置されたか否かを判断する。プロセッサ２１４は、ワークＷが予め定められた位置に設置されたと判断した場合（ステップＳ１０においてＹＥＳ）、制御をステップＳ１２に切り替える。そうでない場合には（ステップＳ１０においてＮＯ）、プロセッサ２１４は、ステップＳ１０の処理を再び実行する。
【０１３７】
ステップＳ１２において、プロセッサ２１４は、予め設定されている撮影経路ＰＳに従ってロボットコントローラ４０に指令値を順次出力する。ロボットコントローラ４０は、ＰＬＣ５０からの指令値に従ってロボット３０の各軸を駆動する。これにより、ロボット３０の先端に取り付けられている撮像装置１０が撮影経路ＰＳに沿って順次移動する。
【０１３８】
ステップＳ２０において、プロセッサ２１４は、撮像装置１０が予め設定されている撮影位置Ｃｉ（図２０参照）に到達したか否かを判断する。撮像装置１０が予め設定されている撮影位置Ｃｉに到達したか否かは、たとえば、ステップＳ１２でロボットコントローラ４０に出力される指令値に基づいて判断される。プロセッサ２１４は、撮像装置１０が予め設定されている撮影位置Ｃｉに到達したと判断した場合（ステップＳ２０においてＹＥＳ）、制御をステップＳ２２に切り替える。そうでない場合には（ステップＳ２０においてＮＯ）、プロセッサ２１４は、制御をステップＳ３０に切り替える。
【０１３９】
ステップＳ２２において、プロセッサ２１４は、画像処理装置２０に撮影指示を出力する。これにより、画像処理装置２０は、撮影処理を実行する。
【０１４０】
ステップＳ３０において、プロセッサ２１４は、撮像装置１０が予め設定されている撮影経路ＰＳの終点に到達したか否かを判断する。撮像装置１０が予め設定されている撮影経路ＰＳの終点に到達したか否かは、たとえば、ステップＳ１２でロボットコントローラ４０に出力される指令値に基づいて判断される。プロセッサ２１４は、撮像装置１０が予め設定されている撮影経路ＰＳの終点に到達したと判断した場合（ステップＳ３０においてＮＯ）、プロセッサ２１４は、制御をステップＳ１０に戻す。そうでない場合には（ステップＳ３０においてＮＯ）、プロセッサ２１４は、制御をステップＳ１２に戻す。
【０１４１】
＜Ｌ．画像処理装置２０による検査処理＞
図２２は、画像処理装置２０による検査処理の流れの一例を示すフローチャートである。図２２に示される処理は、画像処理装置２０のプロセッサ１１０が画像処理プログラム１４２（図８参照）を実行することにより実現される。なお、処理の一部または全部が、回路素子またはその他のハードウェアによって実行されてもよい。
【０１４２】
ステップＳ５０において、プロセッサ１１０は、ＰＬＣ５０から撮影指示を受け付けたか否かを判断する。上述の図２１で説明したように、ＰＬＣ５０は、撮像装置１０が予め設定されている撮影位置Ｃｉに到達した時点で撮影指示を画像処理装置２０に出力する。プロセッサ１１０は、ＰＬＣ５０から当該撮影指示を受け付けたと判断した場合（ステップＳ５０においてＹＥＳ）、制御をステップＳ５２に切り替える。そうでない場合には（ステップＳ５０においてＮＯ）、プロセッサ１１０は、制御をステップＳ６０に切り替える。
【０１４３】
ステップＳ５２において、プロセッサ１１０は、上述の検査部２１（図１参照）として、撮影指示を撮像装置１０に出力する。これにより、撮像装置１０は、画像処理装置２０から撮影指示を受け付けたことに基づいて、撮影処理を実行する。これにより、画像処理装置２０は、予め定められた撮影位置Ｃｉで撮像装置１０に撮影処理を実行させることができる。
【０１４４】
ステップＳ５４において、プロセッサ１１０は、上述の検査部２１として、撮像装置１０から得られた画像に対して予め定められた画像処理を実行することで検査処理を実行する。実行される画像処理は、たとえば、上述の検査条件ファイル１４６Ｃ（図１１参照）に規定されている。上述のように、検査条件ファイル１４６Ｃは、ワークＷの各検査対象部分についての検査条件を規定するデータである。すなわち、画像処理装置２０は、検査条件ファイル１４６Ｃを参照すれば、検査対象部分をキーとして検査条件を一意に特定することができる。プロセッサ１１０は、検査条件ファイル１４６Ｃから取得した検査条件に従って得られた画像に対して画像処理を実行し、検査結果を得る。
【０１４５】
ステップＳ５６において、プロセッサ１１０は、上述の検査部２１として、ステップＳ５４で得られた検査結果を上述の検査結果ファイル１４６Ｄ（図１２参照）に書き込む。一例として、プロセッサ１１０は、ワークＷの識別情報（たとえば、ワークＮｏ）と、ワークＷの検査対象部分を示す部位名と、検査処理の出力結果として得られる計測値と、欠陥の有無を示す検査結果とを対応付けた上で検査結果ファイル１４６Ｄに書き込む。
【０１４６】
ステップＳ６０において、プロセッサ１１０は、検査処理の終了命令を受け付けたか否かを判断する。プロセッサ１１０は、検査処理の終了命令を受け付けたと判断した場合（ステップＳ６０においてＹＥＳ）、図２２に示される検査処理を終了する。そうでない場合には（ステップＳ６０においてＮＯ）、プロセッサ１１０は、制御をステップＳ５０に戻す。
【０１４７】
なお、図２２の例では、ワークＷの撮影処理が実行される度に検査処理が実行される例について説明を行ったが、ワークＷの撮影処理と、画像に対する検査処理とは、個別に実行されてもよい。すなわち、画像処理装置２０は、まず画像を蓄積し、その後に蓄積した画像を一括で検査してもよい。
【０１４８】
＜Ｍ．検査結果マトリクス２５の表示フロー＞
図２３は、上述の検査結果マトリクス２５の表示処理の流れの一例を示すフローチャートである。図２３に示される処理は、画像処理装置２０のプロセッサ１１０が表示プログラム１４３（図８参照）を実行することにより実現される。なお、処理の一部または全部が、回路素子またはその他のハードウェアによって実行されてもよい。
【０１４９】
ステップＳ７０において、プロセッサ１１０は、検査結果マトリクス２５の表示操作を受け付けたか否かを判断する。当該表示操作は、画像処理装置２０に備えられる操作部に対して行なわれる。当該操作部は、たとえば、キーボード１３４（図８参照）、マウス、タッチパネルなどを含む。プロセッサ１１０は、検査結果マトリクス２５の表示操作を受け付けたと判断した場合（ステップＳ７０においてＹＥＳ）、制御をステップＳ７２に切り替える。そうでない場合には（ステップＳ７０においてＮＯ）、プロセッサ１１０は、ステップＳ７０の処理を再び実行する。
【０１５０】
ステップＳ７２において、プロセッサ１１０は、上述の検査結果ファイル１４６Ｄ（図１２参照）を参照して、検査結果ファイル１４６Ｄに規定されているワークＮｏと、検査結果ファイル１４６Ｄに規定されている検査対象部分とを取得する。
【０１５１】
ステップＳ７４において、プロセッサ１１０は、上述の表示制御部２２（図１参照）として、ステップＳ７２で取得したワークＮｏに従って検査結果マトリクス２５の縦軸を構成する。これにより、検査結果マトリクス２５の縦軸にワークＮｏが配列される。
【０１５２】
ステップＳ７６において、プロセッサ１１０は、上述の表示制御部２２として、ステップＳ７４で取得したワークの検査対象部分に従って検査結果マトリクス２５の横軸を構成する。これにより、検査結果マトリクス２５の横軸に検査対象部分が配列される。
【０１５３】
ステップＳ７８において、プロセッサ１１０は、上述の表示制御部２２として、ステップＳ７２で取得したワークＮｏと、ステップＳ７４で取得したワークの検査対象部分との組み合わせごとに検査結果マトリクス２５上に空白のセルを配置する。各セルは、ワークＮｏと検査対象部分とに対応付けられる。
【０１５４】
ステップＳ８０において、プロセッサ１１０は、上述の表示制御部２２として、検査結果ファイル１４６Ｄを参照して、検査結果マトリクス２５の各セルに検査結果を反映する。より具体的には、プロセッサ１１０は、ワークＮｏと検査対象部分との各組み合わせについて検査結果を取得し、各組み合わせに対応するセルに取得した検査結果を反映する。典型的には、プロセッサ１１０は、「欠陥有」の検査結果と「欠陥無」の検査結果とを区別可能な態様で各セルに検査結果を反映する。一例として、検査結果が「欠陥有」を示す場合、プロセッサ１１０は、対応するセルを特定の色（たとえば、赤色）で表示する。一方で、検査結果が「欠陥無」を示す場合、プロセッサ１１０は、対応するセルを他の色（たとえば、白色または緑色）で表示する。
【０１５５】
ステップＳ８２において、プロセッサ１１０は、検査結果マトリクス２５内のいずれかのセルが選択されたか否かを判断する。当該選択操作は、画像処理装置２０に備えられる操作部に対して行なわれる。当該操作部は、たとえば、キーボード１３４（図８参照）、マウス、タッチパネルなどを含む。プロセッサ１１０は、検査結果マトリクス２５内のいずれかのセルが選択されたと判断した場合（ステップＳ８２においてＹＥＳ）、制御をステップＳ８４に切り替える。そうでない場合には（ステップＳ８２においてＮＯ）、プロセッサ１１０は、制御をステップＳ９０に切り替える。
【０１５６】
検査結果マトリクス２５は、ワークＮｏと検査対象部分とに対応付けられているため、各セルを選択することは、ワークＮｏと検査対象部分との組み合わせを指定することを意味する。
【０１５７】
ステップＳ８４において、プロセッサ１１０は、上述の検査部２１（図１参照）または表示制御部２２として、選択されたセルに応じた処理を実行する。すなわち、プロセッサ１１０は、指定されたワークＮｏと検査対象部分との組み合わせに応じた処理を実行する。セルの選択操作に応じて実行される処理の詳細については後述する。
【０１５８】
ステップＳ９０において、プロセッサ１１０は、検査結果マトリクス２５を閉じる操作を受け付けたか否かを判断する。プロセッサ１１０は、検査結果マトリクス２５を閉じる操作を受け付けたと判断した場合（ステップＳ９０においてＹＥＳ）、図２３に示される処理を終了する。そうでない場合には（ステップＳ９０においてＮＯ）、プロセッサ１１０は、制御をステップＳ８２に戻す。
【０１５９】
＜Ｎ．検査結果マトリクス内のセルの選択機能＞
図２４のステップＳ８２，Ｓ８４に示されるように、画像処理装置２０は、検査結果マトリクス２５内のセルが選択されたことに基づいて、選択されたセルに応じた処理を実行する。実行される得る処理としては、たとえば、以下で説明する具体例１〜５の処理が挙げられる。以下では、これらの処理について順に説明する。
【０１６０】
なお、典型的には、画像処理装置２０は、セルの選択操作を受け付けたことに基づいて、下記の具体例１〜５に示す処理の少なくとも１つを実行する。あるいは、画像処理装置２０は、セルの選択操作を受け付けたことに基づいて、下記の具体例１〜５に示す処理の選択画面を表示し、当該選択画面において選択された処理を実行してもよい。
【０１６１】
（Ｎ１．具体例１）
図２４は、セル選択操作に応じて実行される処理の具体例１を示す図である。図２４の例では、検査結果マトリクス２５内のセルＣＥ１が選択されている。
【０１６２】
画像処理装置２０の表示制御部２２は、セルＣＥ１が選択されたことに基づいて、セルＣＥ１に対応する検査対象部分の検査に用いられた画像と、当該画像の撮像条件とを表示装置２３に表示する。これにより、ユーザは、欠陥を示す画像を目視で確認したり、撮像条件の妥当性などを確認することができる。また、ユーザは、検査結果マトリクス２５に示される検査対象部分がワークのどの部分を示しているのかを容易に確認することができる。
【０１６３】
より具体的には、画像処理装置２０は、選択されたセルＣＥ１に関連付けられているワークＮｏと検査対象部分との組み合わせを特定する。次に、画像処理装置２０は、特定したワークＮｏと検査対象部分との組み合わせをキーとして対応する画像ファイルを上述の画像ファイル群１４６Ｂ（図１１参照）から取得する。次に、画像処理装置２０は、特定した検査対象部分をキーとして対応する撮像条件を上述の撮像条件ファイル１４６Ａ（図１１参照）から取得する。表示制御部２２は、取得した画像ファイルと撮像条件とを、セルＣＥ１に対応付けられたポップアップ画面ＰＵ１上に表示する。表示された撮像条件は、任意の値に変更可能に構成される。
【０１６４】
なお、図２４の例では、セルの選択操作に応じて撮像画像と撮像条件との両方が表示される例について説明を行なったが、表示制御部２２は、セルの選択操作に応じて撮像画像および撮像条件のいずれか一方を表示してもよい。
【０１６５】
（Ｎ２．具体例２）
図２５は、セル選択操作に応じて実行される処理の具体例２を示す図である。図２５の例では、検査結果マトリクス２５内のセル群ＣＥ２が選択されている。
【０１６６】
画像処理装置２０の表示制御部２２は、セル群ＣＥ２が選択されたことに基づいて、検査対象のワークの形状を表わす３次元モデルＭＬを表示装置２３に表示するとともに、セル群ＣＥ２に対応する検査対象部分の検査結果を当該３次元モデルＭＬ上の対応部分に表わす。これにより、ユーザは、ワークのどの部分に欠陥があるのかを容易に確認することができる。
【０１６７】
より具体的には、画像処理装置２０の表示制御部２２は、セル群ＣＥ２が選択されたことに基づいて、上述のワーク情報ファイル１４６Ｅ（図１１参照）から、検査対象のワークの３次元モデルＭＬを取得し、セル群ＣＥ２に対応付けられたポップアップ画面ＰＵ２上に当該３次元モデルＭＬを表示する。
【０１６８】
次に、選択された各セルに関連付けられているワークＮｏと検査対象部分との組み合わせを特定する。次に、画像処理装置２０は、特定したワークＮｏと検査対象部分との各組み合わせに対応する検査結果を上述の検査結果ファイル１４６Ｄ（図１２参照）から取得する。次に、画像処理装置２０は、各検査対象部分の検査結果を３次元モデルＭＬの対応箇所に表わす。上述の図１３〜図１８で説明したように、検査対象位置Ｂｉは、３次元モデルＭＬに対して設定されるので、３次元モデルＭＬと検査対象位置Ｂｉとの関係は既知である。そのため、画像処理装置２０の表示制御部２２は、この既知の情報に基づいて、各検査対象部分の検査結果を３次元モデルＭＬ上に反映することができる。
【０１６９】
図２５の例では、選択されたセル群ＣＥ２に対応する検査対象部分Ａ３〜Ａ５が３次元モデルＭＬ上に反映されている。このとき、表示制御部２２は、３次元モデルＭＬ上において、「欠陥有」を示す検査対象部分を「欠陥無」とは異なる表示態様で表わす。「欠陥有」を示す検査対象部分は、３次元モデルＭＬ上で特定の色（たとえば、赤色）で表わされ、「欠陥無」を示す検査対象部分は、３次元モデルＭＬ上で他の色（たとえば、緑色）で表わされる。あるいは、「欠陥有」を示す検査対象部分は、点滅表示で表わされてもよい。
【０１７０】
好ましくは、表示制御部２２は、３次元モデルＭＬ上において、検査対象部分Ａ３を含む検査対象領域７５Ａと、検査対象部分Ａ４，Ａ５を含む検査対象領域７５Ｂとをさらに表わす。検査対象領域については図１５で説明した通りであるので、その説明については繰り返さない。「欠陥有」を示す検査対象部分を含む検査対象領域７５Ｂは、「欠陥有」を示す検査対象部分を含まない検査対象領域７５Ａとは異なる態様で表示される。一例として、検査対象領域７５Ｂは、特定の色（たとえば、赤色）で表わされてもよいし、点滅表示で表わされてもよい。
【０１７１】
また、表示制御部２２は、垂直方向を軸として３次元モデルＭＬを回転させるためのツールボタン７１と、水平方向を軸として３次元モデルＭＬを回転させるためのツールボタン７２とをポップアップ画面ＰＵ２上にさらに表示する。ユーザは、ツールボタン７１，７２を操作することにより、３次元モデルＭＬを適宜回転させることができる。
【０１７２】
（Ｎ３．具体例３）
図２６は、セル選択操作に応じて実行される処理の具体例３を示す図である。図２６の例では、検査結果マトリクス２５内のセル群ＣＥ３が選択されている。
【０１７３】
画像処理装置２０の表示制御部２２は、セル群ＣＥ３が選択されたことに基づいて、セル群ＣＥ３に対応する検査結果の統計結果を表示装置２３に表わす。これにより、ユーザは、任意の検査対象部分の検査結果を容易に分析することができる。
【０１７４】
より具体的には、画像処理装置２０は、選択されたセル群ＣＥ３の各セルに関連付けられているワークＮｏと検査対象部分との組み合わせを特定する。次に、画像処理装置２０は、特定したワークＮｏと検査対象部分との組み合わせの各々に対応する検査結果および計測値を上述の検査結果ファイル１４６Ｄから取得する。次に、画像処理装置２０は、取得した計測値に対して予め定められた統計処理を実行する。
【０１７５】
一例として、画像処理装置２０は、予め定められた統計処理を実行することで、度数分布（すなわち、ヒストグラム）を生成する。当該ヒストグラムの横軸は計測値の区分を表わし、当該ヒストグラムの横軸は各区分に含まれる計測値の頻度を表わす。画像処理装置２０の表示制御部２２は、セル群ＣＥ３に対応付けられたポップアップ画面ＰＵ３上に、生成したヒストグラムを表示する。
【０１７６】
好ましくは、計測値の度数分布は、選択された検査対象部分ごとに生成される。図２６の例では、選択された検査対象部分Ａ２，Ａ３のそれぞれについて度数分布が示されている。
【０１７７】
他の例として、画像処理装置２０は、予め定められた統計処理を実行することで、計測値推移グラフを生成する。当該計測値推移グラフの横軸はワークＮｏを表わし、当該計測値推移グラフの縦軸は計測値を表わす。画像処理装置２０の表示制御部２２は、セル群ＣＥ３に対応付けられたポップアップ画面ＰＵ３上に、生成した計測値推移グラフを表示する。
【０１７８】
好ましくは、計測値推移グラフは、選択されたセル群ＣＥ３に対応する検査対象部分ごとに生成される。図２６の例では、選択された検査対象部分Ａ２，Ａ３のそれぞれについて計測値推移グラフが示されている。
【０１７９】
なお、図２６の例では、セル群の選択操作に応じてヒストグラムと計測値推移グラフとの２つの統計結果が表示される例について説明を行なったが、表示制御部２２は、セル群の選択操作に応じて少なくとも１つの統計結果を表示すればよい。
【０１８０】
（Ｎ４．具体例４）
図２７は、セル選択操作に応じて実行される処理の具体例４を示す図である。図２７の例では、検査結果マトリクス２５内のセル群ＣＥ４が選択されている。
【０１８１】
画像処理装置２０の検査部２１は、セル群ＣＥ４が選択されたことに基づいて、セル群ＣＥ４に対応する検査対象部分の検査に用いられた画像に基づいて、当該検査対象部分を再検査する。これにより、ユーザは、任意の検査対象部分について再検査を容易に実行することができる。
【０１８２】
より具体的には、ユーザは、検査条件を設定し直し、その上で検査結果マトリクス２５のセル群ＣＥ４を選択する。検査部２１は、選択されたセル群ＣＥ４の各セルに関連付けられているワークＮｏと検査対象部分との組み合わせを特定する。次に、検査部２１は、特定したワークＮｏと検査対象部分との組み合わせの各々に対応する画像データを上述の画像ファイル群１４６Ｂから取得する。次に、検査部２１は、特定した検査対象部分の各々に対応する検査条件を上述の検査条件ファイル１４６Ｃから取得する。次に、検査部２１は、取得した画像データの各々に対して、対応する検査条件に従った画像処理を実行する。次に、表示制御部２２は、再検査の結果を検査結果マトリクス２５に反映する。
【０１８３】
なお、図２７の例では、検査結果マトリクス２５内において複数のセルが選択される例について説明を行なったが、本例においては、選択されるセル数は、１つ以上であればよい。
【０１８４】
（Ｎ５．具体例５）
図２８は、セル選択操作に応じて実行される処理の具体例５を示す図である。図２８の例では、検査結果マトリクス２５内のセル群ＣＥ５が選択されている。
【０１８５】
画像処理装置２０の表示制御部２２は、セル群ＣＥ５が選択されたことに基づいて、検査対象のワークの３次元モデルＭＬを表示装置２３に表示するとともに、セル群ＣＥ５に対応する検査対象部分の撮像条件を３次元モデルＭＬ上の対応部分に表わす。これにより、ユーザは、選択部分の撮像条件を容易に確認することができる。
【０１８６】
より具体的には、画像処理装置２０の表示制御部２２は、セル群ＣＥ５が選択されたことに基づいて、検査対象のワークの３次元モデルＭＬを上述のワーク情報ファイル１４６Ｅ（図１１参照）から取得し、セル群ＣＥ５に対応付けられたポップアップ画面ＰＵ５に３次元モデルＭＬを表示する。
【０１８７】
次に、選択された各セルに関連付けられているワークＮｏと検査対象部分との組み合わせを特定する。次に、画像処理装置２０は、特定したワークＮｏと検査対象部分との各組み合わせに対応する撮像条件を上述の撮像条件ファイル１４６Ａ（図１１参照）から取得する。
【０１８８】
次に、画像処理装置２０の表示制御部２２は、セル群ＣＥ５に対応するワークＮｏの内からいずれか１つのワークＮｏ（たとえば、最小のワークＮｏ）を決定し、当該決定したワークＮｏに対応する各撮像条件を３次元モデルＭＬの対応箇所に表わす。ポップアップ画面ＰＵ５には、戻るボタン８１と、進むボタン８２とが表示されており、ユーザは、戻るボタン８１または進むボタン８２を押下することで、表示対象の撮像条件をワークＮｏの順に切り替えることができる。
【０１８９】
表示される撮像条件は、３次元モデルＭＬに対する撮像装置１０の撮影位置を含む。上述の図１９で説明したように、３次元モデルＭＬに対する撮像装置１０の撮影位置Ｃｉは、設定装置６０による設定処理で決定されているので、３次元モデルＭＬに対する撮像装置１０の撮影位置Ｃｉは既知である。そのため、画像処理装置２０の表示制御部２２は、この既知の情報に基づいて、撮像装置１０を表わす模式図を撮影位置Ｃｉ上に表示することができる。図２８の例では、撮影位置Ｃ５，Ｃ７において撮像装置１０を表わす模式図が表示されている。
【０１９０】
他の例として、表示される撮像条件は、ワーク上の検査対象部分を含む。上述の図１３〜図１８で説明したように、検査対象位置Ｂｉは、３次元モデルＭＬに対して設定されるので、３次元モデルＭＬと検査対象位置Ｂｉとの関係は既知である。そのため、画像処理装置２０の表示制御部２２は、この既知の情報に基づいて、各検査対象部分の検査結果を３次元モデルＭＬ上に反映することができる。図２８の例では、検査対象部分Ａ５，Ｂ１が３次元モデルＭＬ上に表わされている。
【０１９１】
なお、上述の例では、撮像条件として撮影位置や検査対象部分が表示される例について説明を行なったが、表示される撮像条件は、撮影位置および検査対象部分に限定されない。たとえば、撮像時における撮像装置１０の光学条件（撮像視野など）、撮像時における照明条件などが表示されてもよい。
【０１９２】
＜Ｏ．検査結果マトリクス２５の変形例＞
図２９は、図３に示される検査結果マトリクス２５の変形例を示す図である。図３に示される検査結果マトリクス２５の各行は、ワークのロット番号でグルーピングされているのに対して、図２９に示される検査結果マトリクス２５の各行は、ワークの品種でグルーピングされている。
【０１９３】
異なる品種のワーク間では、共通の検査対象部分が存在する可能性もあるし、特有の検査対象部分が存在する可能性もある。そのため、異なる品種の各ワークの検査結果を１つの検査結果マトリクス２５上で表わす場合、工夫が必要になる。
【０１９４】
一例として、ワーク品種αは、ワーク品種βにはない特有の検査対象部分「Ａ１」，「Ａ３」を有するとする。この場合、図２９に示されるように、ワーク品種αの検査対象部分「Ａ１」，「Ａ３」に対応するセルについては検査結果が反映されるが、ワーク品種βの検査対象部分「Ａ１」，「Ａ３」に対応するセルについては「該当無」として空白が表示される。
【０１９５】
また、ワーク品種βは、ワーク品種αにはない特有の検査対象部分「Ａ５」，「Ｂ３」を有するとする。この場合、図２９に示されるように、ワーク品種βの検査対象部分「Ａ５」，「Ｂ３」に対応するセルについては検査結果が反映されるが、ワーク品種αの検査対象部分「Ａ５」，「Ｂ３」に対応するセルについては「該当無」として空白が表示される。
【０１９６】
また、ワーク品種α，βは、共通の検査対象部分「Ａ２」，「Ａ４」，「Ｂ１」，「Ｂ２」を有するとする。この場合、図２９に示されるように、ワーク品種αの検査対象部分「Ａ２」，「Ａ４」，「Ｂ１」，「Ｂ２」に対応するセルと、ワーク品種βの検査対象部分「Ａ２」，「Ａ４」，「Ｂ１」，「Ｂ２」に対応するセルとの両方に、検査結果が反映される。
【０１９７】
ワークの品種別の検査対象部分は、たとえば、図３０に示される分類ルール１３４Ｃに規定されている。図３０は、分類ルール１３４Ｃのデータ構造の一例を示す図である。
【０１９８】
図３０に示されるように、分類ルール１３４Ｃには、ワークＷの検査対象部分が階層的に関連付けられている。図３０の例では、ワーク品種αの検査対象部分「Ａ」には、「Ａ１」〜「Ａ４」が関連付けられている。ワーク品種αの検査対象部分「Ｂ」には、「Ｂ１」，「Ｂ２」が関連付けられている。ワーク品種βの検査対象部分「Ａ」には、「Ａ２」，「Ａ４」，「Ａ５」が関連付けられている。ワーク品種βの検査対象部分「Ｂ」には、「Ｂ１」〜「Ｂ３」が関連付けられている。
【０１９９】
再び図２９を参照して、検査結果マトリクス２５の縦軸方向および横軸方向の各グループには、ボタンが割り付けられている。図２９の例では、グループＧＨ１には展開／集約ボタンＢＨ１が割り付けられている。グループＧＨ２には展開／集約ボタンＢＨ２が割り付けられている。グループＧＶ１には展開／集約ボタンＢＶ１が割り付けられている。グループＧＶ２には展開／集約ボタンＢＶ２が割り付けられている。
【０２００】
図３１は、展開／集約ボタンＢＶ２を押下した場合における検査結果マトリクス２５の画面遷移を示す図である。展開／集約ボタンＢＶ２は、グループＧＶ２のセルに対する集約指示および展開指示を押下の度に交互に受け付ける。すなわち、グループＧＶ２のセルが展開されている状態で、展開／集約ボタンＢＶ２が押下された場合、画像処理装置２０の表示制御部２２は、グループＧＶ２のセルを一列に集約する。一方で、グループＧＶ２のセルが集約されている状態で、展開／集約ボタンＢＶ２が押下された場合、表示制御部２２は、グループＧＶ２のセルの表示を集約前に戻す。
【０２０１】
「欠陥有」と「欠陥無」と「該当無」との検査結果が集約対象のセルに含まれている場合、表示制御部２２は、「欠陥有」の表示を「欠陥無」，「該当無」の表示よりも優先して集約処理を行なう。また、「欠陥無」と「該当無」との検査結果が集約対象のセルに含まれている場合、表示制御部２２は、「欠陥無」の表示を「該当無」の表示よりも優先して集約処理を行なう。
【０２０２】
一例として、破線ＡＲ１０内には、「欠陥有」のセルが１個含まれており、「該当無」のセルが２個含まれている。集約処理により、破線ＡＲ１０内の３個のセルは、破線ＡＲ１２内に示される１個のセルに集約される。このとき、集約前のセルには、「欠陥有」のセルが含まれているので、表示制御部２２は、集約後の検査結果を「欠陥有」として表わす。
【０２０３】
他の例として、破線ＡＲ１１内には、「欠陥無」のセルが２個含まれており、「該当無」のセルが１個含まれている。集約処理により、破線ＡＲ１１内の３個のセルは、破線ＡＲ１３内に示される１個のセルに集約される。このとき、集約前のセルには、「欠陥有」のセルが含まれておらず、「欠陥無」のセルが含まれているので、表示制御部２２は、集約後の検査結果を「欠陥無」として表わす。
【０２０４】
図３２は、展開／集約ボタンＢＨ２を押下した場合における検査結果マトリクス２５の画面遷移を示す図である。展開／集約ボタンＢＨ２は、グループＧＨ２のセルに対する集約指示および展開指示を押下の度に交互に受け付ける。すなわち、グループＧＨ２のセルが展開されている状態で、展開／集約ボタンＢＨ２が押下された場合、表示制御部２２は、グループＧＨ２のセルを一行に集約する。一方で、グループＧＨ２のセルが集約されている状態で、展開／集約ボタンＢＨ２が押下された場合、表示制御部２２は、グループＧＨ２のセルの表示を集約前に戻す。
【０２０５】
破線ＡＲ１４内には、「該当無」のセルが１０個含まれている。グループＧＨ２のセルの集約処理により、破線ＡＲ１４内の１０個のセルは、破線ＡＲ１５内に示される１個のセルに集約される。このとき、集約前のセルには、「欠陥有」および「欠陥無」のセルが含まれていないので、表示制御部２２は、集約後の検査結果を「該当無」として表わす。
【０２０６】
＜Ｐ．検査結果マトリクスと期待値マトリクスとの比較機能＞
画像処理装置２０は、検査結果マトリクス２５に含まれる各検査結果についての真の正解値（以下、「期待値」ともいう。）を示す期待値マトリクスと、検査結果マトリクス２５との比較結果を表示装置２３に表示する。これにより、ユーザは、検査結果マトリクス２５に示される各検査結果が期待通りであるか否かを容易に判断することができる。このような比較処理は、検査結果マトリクス２５に示される検査結果の数が増えるほど有効となる。
【０２０７】
図３３は、検査結果マトリクス２５と期待値マトリクス２７との比較処理を概略的に示す図である。
【０２０８】
期待値マトリクス２７内のセルにおいて、検査結果マトリクス２５に含まれる検査結果の少なくとも一部について期待値が規定される。期待値マトリクス２７の各セルの期待値は、たとえば、ユーザ入力によって設定される。入力可能な期待値は、たとえば、「欠陥有」、「欠陥無」、および「無効」のいずれかである。ユーザによって設定された期待値マトリクス２７は、上述の期待値ファイル１４６Ｈ（図１１参照）として画像処理装置２０に格納される。
【０２０９】
画像処理装置２０は、検査結果マトリクス２５内の各セルと期待値マトリクス２７内の各セルとの間で、同一行かつ同一列のセル同士を比較する。
【０２１０】
より具体的には、検査結果マトリクス２５の検査結果が「欠陥無」で、期待値マトリクス２７の期待値が「欠陥無」である場合、比較結果として「正解ＯＫ」が出力される。すなわち、「正解ＯＫ」は、検査結果が期待通りであることを意味する。
【０２１１】
検査結果マトリクス２５の検査結果が「欠陥有」で、期待値マトリクス２７の期待値が「欠陥有」である場合、比較結果として「正解ＮＧ」が出力される。すなわち、「正解ＮＧ」は、検査結果が期待通りであることを意味する。
【０２１２】
検査結果マトリクス２５の検査結果が「欠陥無」で、期待値マトリクス２７の期待値が「欠陥有」である場合、比較結果として「見逃し」が出力される。「見逃し」は、検出すべき欠陥を見逃したことを意味する。すなわち、「見逃し」は、検査結果が期待通りではないことを示す。比較結果が「見逃し」となる一因として、欠陥有／欠陥無を判断するための閾値が緩すぎることが挙げられる。
【０２１３】
検査結果マトリクス２５の検査結果が「欠陥有」で、期待値マトリクス２７の期待値が「欠陥無」である場合、比較結果として「過検出」が出力される。「過検出」は、正常な部分を欠陥として検出してしまったことを意味する。すなわち、「過検出」は、検査結果が期待通りではないことを示す。比較結果が「過検出」となる一因として、欠陥有／欠陥無を判断するための閾値が厳しすぎることが挙げられる。
【０２１４】
検査結果マトリクス２５の検査結果と、期待値マトリクス２７の期待値との少なくとも一方が「無効」である場合、比較結果として「無効」が出力される。「無効」は、検査結果および期待値の少なくとも一方が存在しないことを意味する。
【０２１５】
検査結果マトリクス２５と期待値マトリクス２７との比較結果として比較結果マトリクス２９が出力される。表示制御部２２は、比較結果「正解ＯＫ」，「正解ＮＧ」，「見逃し」，「過検出」，「無効」を区別可能な態様で表示する。一例として、これらの比較結果は、色によって区別されてもよいし、ハッチングの種類によって区別されてもよい。
【０２１６】
なお、期待通りの比較結果である「正解ＯＫ」および「正解ＮＧ」は、同一色（たとえば、白色）で表示されてもよい。
【０２１７】
また、検査結果マトリクス２５と同様に、比較結果マトリクス２９についてもセルの集約／展開機能が実装されてもよい。一例として、集約対象のセルに「見逃し」または「過検出」が１つでも含まれている場合、表示制御部２２は、集約後のセルを「見逃し」または「過検出」とする。集約対象のセルに「見逃し」および「過検出」の両方が含まれている場合、表示制御部２２は、「見逃し」および「過検出」の両方を含むことを示す表示態様で集約対象のセルを表わす。
【０２１８】
＜Ｑ．期待値マトリクスの作成支援機能＞
図３４は、期待値マトリクス２７の作成過程の一例を示す図である。画像処理装置２０は、期待値マトリクス２７の作成を支援する機能を有する。
【０２１９】
より具体的には、ユーザは、検査結果マトリクス２５の各セルを選択する。セルの選択操作は、画像処理装置２０に備えられる操作部に対して行なわれる。当該操作部は、たとえば、キーボード１３４（図８参照）、マウス、タッチパネルなどを含む。
【０２２０】
一例として、ユーザによってセル群ＣＥ１０が選択されたとする。その後、ユーザは、検査結果マトリクス２５のセル群ＣＥ１０を編集中の期待値マトリクス２７にコピーする。これにより、ユーザは、期待値マトリクス２７の各セルを１つずつ入力する必要がなくなり、期待値マトリクス２７の作成の手間が軽減される。
【０２２１】
ユーザによって作成された期待値マトリクス２７は、上述の期待値ファイル１４６Ｈ（図１１参照）として画像処理装置２０に格納される。
【０２２２】
＜Ｒ．検査結果の３次元表示のフロー＞
画像処理装置２０は、ワークの検査結果を３次元モデルＭＬに反映することで、検査結果を３次元表示する機能を有する。ユーザは、３次元モデルＭＬ上で検査結果を確認することで、欠陥が生じている箇所を容易に判別することができる。
【０２２３】
以下では、図３５を参照して、検査結果の３次元表示処理について説明する。図３５は、検査結果の３次元表示処理の流れの一例を示すフローチャートである。図３５に示される処理は、画像処理装置２０のプロセッサ１１０が表示プログラム１４３（図８参照）を実行することにより実現される。なお、処理の一部または全部が、回路素子またはその他のハードウェアによって実行されてもよい。
【０２２４】
ステップＳ９０において、プロセッサ１１０は、検査結果の３次元表示処理の実行操作を受け付けたか否かを判断する。当該表示操作は、画像処理装置２０に備えられる操作部に対して行なわれる。当該操作部は、たとえば、キーボード１３４（図８参照）、マウス、タッチパネルなどを含む。プロセッサ１１０は、検査結果の３次元表示処理の実行操作を受け付けたと判断した場合（ステップＳ９０においてＹＥＳ）、制御をステップＳ９２に切り替える。そうでない場合には（ステップＳ９０においてＮＯ）、プロセッサ１１０は、ステップＳ９０の処理を再び実行する。
【０２２５】
ステップＳ９２において、プロセッサ１１０は、上述の表示制御部２２（図１参照）として、ワークの３次元モデルＭＬを上述のワーク情報ファイル１４６Ｅ（図１１参照）から取得し、取得した３次元モデルＭＬを表示装置２３に表示する。
【０２２６】
ステップＳ１００において、プロセッサ１１０は、検査結果の３次元表示の更新指示を受け付けたか否かを判断する。当該更新指示は、たとえば、新たな検査結果が検査部２１から得られたことに基づいて発せられる。あるいは、当該更新指示は、欠陥を示す検査結果が検査部２１によって検出されたことに基づいて発せられる。あるいは、当該更新指示は、ユーザ操作に基づいて発せられる。プロセッサ１１０は、検査結果の３次元表示の更新指示を受け付けたと判断した場合（ステップＳ１００においてＹＥＳ）、制御をステップＳ１０２に切り替える。そうでない場合には（ステップＳ１００においてＮＯ）、プロセッサ１１０は、制御をステップＳ１２０に切り替える。
【０２２７】
ステップＳ１０２において、プロセッサ１１０は、上述の検査結果ファイル１４６Ｄ（図１２参照）を参照して、検査対象のワークのワークＮｏの各検査対象部分について検査結果を取得する。
【０２２８】
ステップＳ１０４において、プロセッサ１１０は、上述の表示制御部２２として、ステップＳ１０２で取得した各検査結果を、ステップＳ９２で表示された３次元モデルＭＬ上の対応箇所に表わす。上述の図１３〜図１８で説明したように、検査対象位置Ｂｉは、３次元モデルＭＬに対して設定されるので、３次元モデルＭＬと検査対象位置Ｂｉとの関係は既知である。そのため、画像処理装置２０の表示制御部２２は、この既知の情報に基づいて、ステップＳ１０２で取得した各検査結果を３次元モデルＭＬ上に反映することができる。
【０２２９】
典型的には、プロセッサ１１０は、各検査対象部分の検査結果を３次元モデルＭＬ上の対応部分に表わす際に、欠陥を示す部分を他の部分とは異なる表示態様で表示する。一例として、欠陥を示す部分は、特定の色（たとえば、赤色）で表わされてもよいし、点滅表示で表わされてもよい。これにより、ユーザは、欠陥を示す部分をより判別しやすくなる。
【０２３０】
ステップＳ１１０において、プロセッサ１１０は、３次元モデル上に示される検査対象部分のいずれかが選択されたか否かを判断する。当該選択操作は、画像処理装置２０に備えられる操作部に対して行なわれる。当該操作部は、たとえば、キーボード１３４（図８参照）、マウス、タッチパネルなどを含む。プロセッサ１１０は、３次元モデル上に表わされている検査対象部分のいずれかが選択されたと判断した場合（ステップＳ１１０においてＹＥＳ）、制御をステップＳ１１２に切り替える。そうでない場合には（ステップＳ１１０においてＮＯ）、プロセッサ１１０は、制御をステップＳ１２０に切り替える。
【０２３１】
ステップＳ１１２において、プロセッサ１１０は、上述の検査部２１または表示制御部２２として、ステップＳ１１０で選択された検査対象部分に応じた処理を実行する。選択された検査対象部分に応じて実行される処理の詳細については後述する。
【０２３２】
ステップＳ１２０において、プロセッサ１１０は、検査結果の３次元表示画面を閉じる操作を受け付けたか否かを判断する。プロセッサ１１０は、検査結果の３次元表示画面を閉じる操作を受け付けたと判断した場合（ステップＳ１２０においてＹＥＳ）、図３５に示される処理を終了する。そうでない場合には（ステップＳ１２０においてＮＯ）、プロセッサ１１０は、制御をステップＳ１００に戻す。
【０２３３】
以上のように、ステップＳ１００において検査結果の３次元表示の更新指示が発せられた時点で検査結果の３次元表示が更新される。上述のように、更新指示は、たとえば、欠陥を示す検査結果が検査部２１によって検出されたことに基づいて発せられる。すなわち、プロセッサ１１０は、順次検査されるワークに欠陥が検出された時点で、当該ワークについての各検査対象部分の検査結果で３次元モデルＭＬに表わされている検査結果を更新する。その結果、欠陥を示す検査結果が検出されない間は、３次元モデルＭＬ上に表示される検査結果が更新されない。これにより、常に、欠陥を示す最新の検査結果が３次元モデルＭＬ上に表示される。そのため、ユーザは、欠陥を示す検査結果を見逃しにくくなる。
【０２３４】
＜Ｓ．３次元モデルに対する検査対象部分の選択機能＞
図３５のステップＳ１１０，Ｓ１１２に示されるように、画像処理装置２０は、３次元モデルＭＬに示される検査対象部分のいずれかが選択されたことに基づいて、選択された検査対象部分に応じた処理を実行する。実行される得る処理としては、たとえば、以下で説明する具体例１，２の処理が挙げられる。以下では、これらの処理について順に説明する。
【０２３５】
なお、典型的には、画像処理装置２０は、３次元モデルＭＬ上の検査対象部分の選択操作を受け付けたことに基づいて、下記の具体例１，２に示す処理の少なくとも１つを実行する。あるいは、画像処理装置２０は、３次元モデルＭＬ上の検査対象部分の選択操作を受け付けたことに基づいて、下記の具体例１，２に示す処理の選択画面を表示し、当該選択画面において選択された処理を実行してもよい。
【０２３６】
（Ｓ１．具体例１）
図３６は、３次元モデルＭＬに示される検査対象部分の選択操作に応じて実行される処理の具体例１を示す図である。
【０２３７】
図３６に示されるように、表示装置２３には、検査対象のワークの３次元モデルＭＬと、垂直方向を軸として３次元モデルＭＬを回転させるためのツールボタン７１と、水平方向を軸として３次元モデルＭＬを回転させるためのツールボタン７２とが表示される。ユーザは、ツールボタン７１，７２を操作することにより、３次元モデルＭＬを適宜回転させることができる。
【０２３８】
上述の図１３〜図１８で説明したように、検査対象位置Ｂｉは、３次元モデルＭＬに対して設定されるので、３次元モデルＭＬと検査対象位置Ｂｉとの関係は既知である。そのため、画像処理装置２０の表示制御部２２は、この既知の情報に基づいて、３次元モデルＭＬ上に検査対象部分を表わすことができる。図３６の例では、３次元モデルＭＬにおいて、検査対象部分Ａ１〜Ａ４が表わされている。
【０２３９】
また、表示制御部２２は、３次元モデルＭＬ上の検査対象部分Ａ１〜Ａ４において検査結果を表わす。一例として、「欠陥有」を示す部分は、特定の色（たとえば、赤色）で表わされてもよいし、点滅表示で表わされてもよい。「欠陥無」を示す部分は、「欠陥有」を示す部分とは異なる色（たとえば、緑色）で表わされる。
【０２４０】
図３６の例では、検査対象部分Ａ１が「欠陥有」を示しており、検査対象部分Ａ２〜Ａ４が「欠陥無」を示している。好ましくは、表示制御部２２は、検査対象部分Ａ１内の欠陥を示す欠陥部分Ａ１＿１を他の部分よりも強調表示する。
【０２４１】
ユーザは、検査対象部分Ａ１〜Ａ４のいずれかを選択することができる。図３６の例では、検査対象部分Ａ１が選択されている。画像処理装置２０は、検査対象部分Ａ１が選択されたことに基づいて、検査対象部分Ａ１の検査に用いられた画像と、当該画像の撮像条件とを表示装置２３に表示する。これにより、ユーザは、欠陥を示す画像を目視で確認したり、撮像条件の妥当性などを確認することができる。
【０２４２】
より具体的には、画像処理装置２０は、検査対象部分Ａ１が選択されたことに基づいて、検査対象のワークのワークＮｏと選択された検査対象部分Ａ１との組み合わせをキーとして対応する画像ファイルを上述の画像ファイル群１４６Ｂ（図１１参照）から取得する。次に、画像処理装置２０は、検査対象部分Ａ１をキーとして対応する撮像条件を上述の撮像条件ファイル１４６Ａ（図１１参照）から取得する。表示制御部２２は、取得した画像ファイルと撮像条件とを、選択された検査対象部分Ａ１に対応付けられたポップアップ画面ＰＵ６上に表示する。表示された撮像条件は、任意の値に変更可能に構成される。
【０２４３】
なお、図３６の例では、検査対象部分の選択操作に応じて撮像画像と撮像条件との両方が表示される例について説明を行なったが、表示制御部２２は、検査対象部分の選択操作に応じて撮像画像および撮像条件のいずれか一方を表示してもよい。
【０２４４】
（Ｓ２．具体例２）
図３７は、３次元モデルＭＬに示される検査対象部分の選択操作に応じて実行される処理の具体例２を示す図である。
【０２４５】
３次元モデルＭＬは、検査対象部分Ａ１〜Ａ４を含む。ユーザは、検査対象部分Ａ１〜Ａ４のいずれかを選択することができる。図３７の例では、検査対象部分Ａ１が選択されている。画像処理装置２０は、検査対象部分Ａ１が選択されたことに基づいて、検査対象のワークのワークＮｏと選択された検査対象部分Ａ１との組み合わせをキーとして対応する撮像条件を上述の撮像条件ファイル１４６Ａ（図１１参照）から取得する。次に、画像処理装置２０の表示制御部２２は、取得した撮像条件を３次元モデルＭＬの対応箇所に表わす。
【０２４６】
一例として、表示される撮像条件は、３次元モデルＭＬに対する撮像装置１０の撮影位置を含む。上述の図１９で説明したように、３次元モデルＭＬに対する撮像装置１０の撮影位置Ｃｉは、設定装置６０による設定処理で決定されているので、３次元モデルＭＬに対する撮像装置１０の撮影位置Ｃｉは既知である。そのため、画像処理装置２０の表示制御部２２は、この既知の情報に基づいて、撮像装置１０を表わす模式図１０Ａを撮影位置Ｃｉ上に表示することができる。図３７の例では、撮影位置Ｃ１において撮像装置１０の模式図１０Ａが表示されている。
【０２４７】
なお、上述の例では、撮像条件として撮影位置が表示される例について説明を行なったが、表示される撮像条件は、撮影位置に限定されない。たとえば、撮像時における撮像装置１０の光学条件、撮像時における照明条件などが表示されてもよい。
【０２４８】
＜Ｔ．検査対象部分の展開／集約機能＞
図３８は、３次元モデルＭＬに示される検査対象部分の展開／集約している過程を示す図である。
【０２４９】
３次元モデルＭＬに示される検査対象部分は、上述の分類ルール１３４Ａ（図４参照）において階層的に関連付けられている。上位の階層に規定される検査対象部分は、下位の階層に規定される検査対象部分を包含する関係を有する。上位の階層に規定される検査対象部分に包含されている下位の検査対象部分は、同一グループとみなされる。
【０２５０】
図３８の例では、３次元モデルＭＬ上において、検査対象部分Ａ〜Ｃが示されている。一例として、上位の検査対象部分Ａには、下位の検査対象部分Ａ１〜Ａ３が関連付けられているとする。上位の検査対象部分Ａに包含されている検査対象部分Ａ１〜Ａ３は、同一グループとみなされる。
【０２５１】
上位の検査対象部分Ａ１には、下位の検査対象部分Ａ１＿１〜Ａ１＿４が関連付けられているとする。上位の検査対象部分Ａ１に包含されている検査対象部分Ａ１＿１〜Ａ１＿４は、同一グループとみなされる。
【０２５２】
３次元モデルＭＬ上の検査対象部分Ａ〜Ｃには検査結果が表わされる。検査対象部分Ａ〜Ｃの検査結果は、上述の検査結果ファイル１４６Ｄ（図１２参照）から取得される。一例として、検査対象部分Ａは「欠陥有」を示し、検査対象部分Ｂ，Ｃは「欠陥無」を示す。
【０２５３】
検査対象部分Ａには、展開／集約ボタンＢＴ１が割り付けられている。検査対象部分Ｂには、展開／集約ボタンＢＴ２が割り付けられている。検査対象部分Ｃには、展開／集約ボタンＢＴ３が割り付けられている。「＋」は展開ボタンを示し、「−」は集約ボタンを示す。
【０２５４】
表示制御部２２は、グルーピングされている検査対象部分に対する集約指示を受け付けた場合に、当該グルーピングされている検査対象部分の検査結果を集約し、当該集約後の検査結果を、当該グルーピングされている検査対象部分に対応する３次元モデルＭＬ上の各部分に表わす。また、表示制御部２２は、集約された検査結果に対する展開指示を受け付けた場合に、当該集約された検査結果の表示を集約前に戻す。
【０２５５】
たとえば、展開／集約ボタンＢＴ１が押下された場合、表示制御部２２は、検査対象部分Ａを下位の検査対象部分Ａ１〜Ａ３に展開する。次に、表示制御部２２は、検査対象部分Ａ１〜Ａ３の検査結果を検査対象部分Ａ１〜Ａ３に反映する。検査対象部分Ａ１〜Ａ３の検査結果は、上述の検査結果ファイル１４６Ｄ（図１２参照）から取得される。一例として、検査対象部分Ａ１は「欠陥有」を示し、検査対象部分Ａ２，Ａ３は「欠陥無」を示す。
【０２５６】
次に、表示制御部２２は、検査対象部分Ａ１に展開／集約ボタンＢＴ１＿１を割り付ける。同様に、表示制御部２２は、検査対象部分Ａ２に展開／集約ボタンＢＴ１＿２を割り付ける。同様に、表示制御部２２は、検査対象部分Ａ３に展開／集約ボタンＢＴ１＿３を割り付ける。
【０２５７】
展開／集約ボタンＢＴ１＿１の「＋」が押下された場合、表示制御部２２は、検査対象部分Ａ１を下位の検査対象部分Ａ１＿１〜Ａ１＿４に展開する。次に、表示制御部２２は、検査対象部分Ａ１＿１〜Ａ１＿４の検査結果を検査対象部分Ａ１＿１〜Ａ１＿４に反映する。検査対象部分Ａ１＿１〜Ａ１＿４の検査結果は、上述の検査結果ファイル１４６Ｄ（図１２参照）から取得される。一例として、検査対象部分Ａ１＿１〜Ａ１＿３は「欠陥無」を示し、検査対象部分Ａ１＿４は「欠陥有」を示す。
【０２５８】
展開／集約ボタンＢＴ１＿１Ａが押下された場合、表示制御部２２は、検査対象部分Ａ１＿１〜Ａ１＿４を上位の検査対象部分Ａ１に集約する。このとき、「欠陥有」を示す検査結果が集約対象の検査対象部分の検査結果に１個でも含まれている場合、表示制御部２２は、集約後の検査対象部分の検査結果を「欠陥有」とする。一方で、「欠陥有」を示す検査結果が集約対象の検査対象部分の検査結果に１個も含まれていない場合、表示制御部２２は、集約後の検査対象部分の検査結果を「欠陥無」とする。検査対象部分Ａ１＿４は「欠陥有」を示すので、表示制御部２２は、検査対象部分Ａ１＿１〜Ａ１＿４を集約した検査対象部分Ａ１の検査結果を「欠陥有」とする。
【０２５９】
展開／集約ボタンＢＴ１の「−」が押下された場合、表示制御部２２は、検査対象部分Ａ１〜Ａ３を検査対象部分Ａに集約する。検査対象部分Ａ１は「欠陥有」を示すので、表示制御部２２は、検査対象部分Ａ１〜Ａ３を集約した検査対象部分Ａの検査結果を「欠陥有」とする。
【０２６０】
＜Ｕ．外観検査システムの変形例＞
図３９は、変形例に係る外観検査システムを示す図である。図３９に示される外観検査システムは、図１に示す外観検査システム１と比較して、ＰＬＣ５０を備えず、画像処理装置２０の代わりに画像処理装置２０ａを備える点で相違する。画像処理装置２０ａは、上記の画像処理装置２０の構成とＰＬＣ５０の構成との両方を有する。
【０２６１】
図４０は、ワークＷと撮像装置１０との間の相対位置を変更する別の形態を示す図である。図４０に示されるように、ロボット３０は、撮像装置１０ではなく、ワークＷを移動させてもよい。図４０に示す例では、撮像装置１０は固定される。このようにワークＷを移動させることにより、ワークＷと撮像装置１０との間の相対位置を変更してもよい。
【０２６２】
図４１は、ワークＷと撮像装置１０との間の相対位置を変更するさらに別の形態を示す図である。図４１に示されるように、ワークＷは、回転テーブル９１の上に載置されてもよい。回転テーブル９１は、ロボットコントローラ４０の指示に応じて回転する。これにより、ワークＷと撮像装置１０との間の相対位置を容易に変更することができる。
【０２６３】
なお、ロボット３０は、垂直多関節ロボット以外のロボット（たとえば、水平多関節ロボット、直交ロボットなど）であってもよい。
【０２６４】
上記では、撮像視野ＦＯＶおよび実効視野ＦＯＶ２を円形とした説明したが、撮像視野ＦＯＶおよび実効視野ＦＯＶ２の形状は、円形に限定されず、たとえば矩形（長方形、正方形）であってもよい。
【０２６５】
＜Ｖ．付記＞
以上のように、本実施形態は以下のような開示を含む。
【０２６６】
［構成１］
検査対象物（Ｗ）と撮像装置（１０）との間の相対位置を変化させつつ前記検査対象物（Ｗ）の複数の検査部分を前記撮像装置（１０）で撮像して、前記検査対象物（Ｗ）の外観検査を行なう外観検査システムであって、
表示装置（２３）と、
前記検査対象物（Ｗ）の形状を表わす３次元モデル（ＭＬ）を格納するための記憶装置とを備え、前記検査対象物（Ｗ）の複数の検査部分は、前記３次元モデル（ＭＬ）に対して予め設定されており、
前記検査対象物（Ｗ）の各検査部分を撮像して前記撮像装置（１０）から得られた各画像に基づいて、当該検査対象物（Ｗ）の各検査部分について欠陥の有無を検査するための検査部（２１）と、
前記３次元モデル（ＭＬ）を前記表示装置（２３）に表示するとともに、前記検査対象物（Ｗ）の各検査部分の検査結果を前記３次元モデル（ＭＬ）上の対応部分に表わすための表示制御部（２２）とを備える、外観検査システム。
【０２６７】
［構成２］
前記表示制御部（２２）は、さらに、前記検査対象物（Ｗ）の各検査部分を前記３次元モデル（ＭＬ）上の対応部分に表わす、構成１に記載の外観検査システム。
【０２６８】
［構成３］
前記表示制御部（２２）は、前記検査対象物（Ｗ）の各検査部分の検査結果を前記３次元モデル（ＭＬ）上の対応部分に表わす際に、欠陥を示す部分を他の部分とは異なる表示態様で表示する、構成１または２に記載の外観検査システム。
【０２６９】
［構成４］
前記３次元モデル（ＭＬ）に対して設定される各検査部分は、予め定められた分類ルールに従ってグルーピングされており、
前記表示制御部（２２）は、
グルーピングされている検査部分に対する集約指示を受け付けた場合に、当該グルーピングされている検査部分の検査結果を集約し、当該集約後の検査結果を、当該グルーピングされている検査部分に対応する前記３次元モデル（ＭＬ）上の各部分に表わし、
前記集約された検査結果に対する展開指示を受け付けた場合に、当該集約された検査結果の表示を集約前に戻す、構成１〜３のいずれか１項に記載の外観検査システム。
【０２７０】
［構成５］
欠陥を示す検査結果が、前記グルーピングされている検査部分の検査結果に含まれている場合、集約後の検査結果は、欠陥を示し、
欠陥を示す検査結果が、前記グルーピングされている検査部分の検査結果に含まれていない場合、集約後の検査結果は、正常を示す、構成４に記載の外観検査システム。
【０２７１】
［構成６］
前記外観検査システムは、前記３次元モデル（ＭＬ）上に表わされる検査部分の内から、１つ以上の検査部分を選択する選択操作を受け付けることが可能な操作部（１３４）をさらに備え、
前記表示制御部（２２）は、前記操作部（１３４）が前記選択操作を受け付けたことに基づいて、選択された検査部分の検査に用いられた画像と、当該画像の撮像条件との少なくとも一方を前記表示装置（２３）に表示する、構成１〜５のいずれか１項に記載の外観検査システム。
【０２７２】
［構成７］
前記検査部（２１）は、複数の検査対象物（Ｗ）の検査処理を順次実行し、
前記表示制御部（２２）は、順次検査される検査対象物（Ｗ）に欠陥が検出された時点で、当該検査対象物（Ｗ）の各検査部分の検査結果で前記３次元モデル（ＭＬ）上に表わされている検査結果を更新する、構成１〜６のいずれか１項に記載の外観検査システム。
【０２７３】
［構成８］
検査対象物（Ｗ）と撮像装置（１０）との間の相対位置を変化させつつ前記検査対象物（Ｗ）の複数の検査部分を前記撮像装置（１０）で撮像して行なわれた外観検査結果の表示方法であって、
前記検査対象物（Ｗ）の形状を表わす３次元モデル（ＭＬ）を取得するステップを備え、前記検査対象物（Ｗ）の複数の検査部分は、前記３次元モデル（ＭＬ）に対して予め設定されており、
前記検査対象物（Ｗ）の各検査部分を撮像して前記撮像装置（１０）から得られた各画像に基づいて、当該検査対象物（Ｗ）の各検査部分について欠陥の有無を検査するステップと、
前記３次元モデル（ＭＬ）を表示装置（２３）に表示するとともに、前記検査対象物（Ｗ）の各検査部分の検査結果を前記３次元モデル（ＭＬ）上の対応部分に表わすステップとを備える、外観検査結果の表示方法。
【０２７４】
［構成９］
検査対象物（Ｗ）と撮像装置（１０）との間の相対位置を変化させつつ前記検査対象物（Ｗ）の複数の検査部分を前記撮像装置（１０）で撮像して行なわれた外観検査結果の表示プログラムであって、
前記表示プログラムは、コンピュータに、
前記検査対象物（Ｗ）の形状を表わす３次元モデル（ＭＬ）を取得するステップを備え、前記検査対象物（Ｗ）の複数の検査部分は、前記３次元モデル（ＭＬ）に対して予め設定されており、
前記検査対象物（Ｗ）の各検査部分を撮像して前記撮像装置（１０）から得られた各画像に基づいて、当該検査対象物（Ｗ）の各検査部分について欠陥の有無を検査するステップと、
前記３次元モデル（ＭＬ）を表示装置（２３）に表示するとともに、前記検査対象物（Ｗ）の各検査部分の検査結果を前記３次元モデル（ＭＬ）上の対応部分に表わすステップとを実行させる、外観検査プログラム。
【０２７５】
今回開示された実施の形態はすべての点で例示であって制限的なものではないと考えられるべきである。本発明の範囲は上記した説明ではなくて特許請求の範囲によって示され、特許請求の範囲と均等の意味および範囲内でのすべての変更が含まれることが意図される。
【符号の説明】
【０２７６】
１  外観検査システム、１０  撮像装置、１０Ａ  模式図、２０，２０ａ  画像処理装置、２１  検査部、２２  表示制御部、２３  表示装置、２５  検査結果マトリクス、２７  期待値マトリクス、２９  比較結果マトリクス、３０  ロボット、３１  基台、３２  アーム、３２ａ  先端アーム、４０  ロボットコントローラ、５０  ＰＬＣ、６０  設定装置、６１ａ，６１ｂ  画面、７１，７２，７６，７７  ツールボタン、７４  丸印、７５，７５Ａ，７５Ｂ  検査対象領域、８１  戻るボタン、８２  進むボタン、９０  ステージ、９１  回転テーブル、１１０，２１４，３６２  プロセッサ、１１２  ＲＡＭ、１１４  表示コントローラ、１１６  システムコントローラ、１１８  Ｉ／Ｏコントローラ、１２０，３６４  記憶装置、１２２  カメラインターフェイス、１２４  入力インターフェイス、１２６  コントローラインターフェイス、１２８，２２８，３６８  通信インターフェイス、１３０，２２２  メモリカードインターフェイス、１３４  キーボード、１３４Ａ，１３４Ｂ，１３４Ｃ  分類ルール、１３６，２２４  メモリカード、１４２  画像処理プログラム、１４３  表示プログラム、１４４  プロジェクトファイル、１４６Ａ  撮像条件ファイル、１４６Ｂ  画像ファイル群、１４６Ｃ  検査条件ファイル、１４６Ｄ  検査結果ファイル、１４６Ｅ  ワーク情報ファイル、１４６Ｆ  生産情報ファイル、１４６Ｇ  分類ルールファイル、１４６Ｈ  期待値ファイル、２１２  チップセット、２１６  不揮発性メモリ、２１８  主メモリ、２２０  システムクロック、２２６  内部バス、２３０  内部バスコントローラ、２３２  制御回路、２３４  内部バス制御回路、２３６  バッファメモリ、２３８  フィールドバスコントローラ、３６１  バス、３６３  メインメモリ、３６５  設定プログラム、３６６  ディスプレイ、３６７  入力デバイス。
【図１】
2020003301.tif 000003
【図２】
2020003301.tif 000004
【図３】
2020003301.tif 000005
【図４】
2020003301.tif 000006
【図５】
2020003301.tif 000007
【図６】
2020003301.tif 000008
【図７】
2020003301.tif 000009
【図８】
2020003301.tif 000010
【図９】
2020003301.tif 000011
【図１０】
2020003301.tif 000012
【図１１】
2020003301.tif 000013
【図１２】
2020003301.tif 000014
【図１３】
2020003301.tif 000015
【図１４】
2020003301.tif 000016
【図１５】
2020003301.tif 000017
【図１６】
2020003301.tif 000018
【図１７】
2020003301.tif 000019
【図１８】
2020003301.tif 000020
【図１９】
2020003301.tif 000021
【図２０】
2020003301.tif 000022
【図２１】
2020003301.tif 000023
【図２２】
2020003301.tif 000024
【図２３】
2020003301.tif 000025
【図２４】
2020003301.tif 000026
【図２５】
2020003301.tif 000027
【図２６】
2020003301.tif 000028
【図２７】
2020003301.tif 000029
【図２８】
2020003301.tif 000030
【図２９】
2020003301.tif 000031
【図３０】
2020003301.tif 000032
【図３１】
2020003301.tif 000033
【図３２】
2020003301.tif 000034
【図３３】
2020003301.tif 000035
【図３４】
2020003301.tif 000036
【図３５】
2020003301.tif 000037
【図３６】
2020003301.tif 000038
【図３７】
2020003301.tif 000039
【図３８】
2020003301.tif 000040
【図３９】
2020003301.tif 000041
【図４０】
2020003301.tif 000042
【図４１】
2020003301.tif 000043