(57)【要約】【課題】  プログラミング知識が乏しいユーザであっても、複雑な検査を行うための出力設定を簡易に設定することが可能な画像処理装置、画像処理方法及びコンピュータプログラムを提供する。【解決手段】  良否判定の基準となる基準画像に対して複数の領域を設定する領域設定部６６と、複数の領域の各々に対し、複数の異なる画像処理ツールのうちいずれかを対応付けて設定する画像処理ツール設定部６７と、画像処理ツール設定部６７により設定された複数の画像処理ツールの中から特定の画像処理ツールを選択可能に表示し、特定の画像処理ツールの実行結果を論理演算するための演算種別を選択可能に表示する論理演算情報表示部６５と、論理演算情報表示部により選択された特定の画像処理ツールと演算種別を関連付けて、一の論理演算情報として設定する論理演算情報設定部６８と、を備える。【選択図】          図１２
2014109479.tif 000002
【特許請求の範囲】
【請求項１】
検査対象物を撮像する撮像手段と、
前記撮像手段により取得された検査対象物の画像に対して複数の異なる画像処理ツールを実行する画像処理ツール実行手段と、
前記画像処理ツール実行手段の実行結果に基づいて、検査対象物の良否を判定する良否判定手段と、
前記良否判定手段の判定結果を判定信号として外部に出力する出力手段と、を有する画像処理装置において、
良否判定の基準となる基準画像に対して複数の領域を設定する領域設定手段と、
前記領域設定手段により設定される複数の領域の各々に対し、前記複数の異なる画像処理ツールのうちいずれかを対応付けて設定する画像処理ツール設定手段と、
前記画像処理ツール設定手段により設定された複数の画像処理ツールの中から任意の数からなる特定の画像処理ツールを選択可能に表示し、該特定の画像処理ツールの実行結果を論理演算するための演算種別を選択可能に表示する論理演算情報表示手段と、
前記論理演算情報表示手段により選択された前記特定の画像処理ツールと前記演算種別を関連付けて、一の論理演算情報として設定する論理演算情報設定手段と、を備え、
前記良否判定手段は、前記論理演算情報設定手段により設定された一の論理演算情報に基づいて、前記特定の画像処理ツールの実行結果を前記演算種別で論理演算することにより、検査対象物の良否を判定することを特徴とする画像処理装置。
【請求項２】
前記論理演算情報設定手段により設定された複数の異なる論理演算情報を記憶する論理演算情報記憶手段を備え、
前記論理演算情報設定手段は、前記一の論理演算情報の中に、前記一の論理演算情報とは異なる他の論理演算情報を前記演算種別と関連付けて設定可能に構成され、
前記良否判定手段は、前記特定の画像処理ツールの実行結果と前記他の論理演算情報における論理演算結果とを前記演算種別で論理演算することにより、検査対象物の良否を判定することを特徴とする請求項１記載の画像処理装置。
【請求項３】
前記論理演算情報設定手段は、前記他の論理演算情報として、前記一の論理演算情報との間で循環参照を生じない論理演算情報のみを設定可能に構成されることを特徴とする請求項２記載の画像処理装置。
【請求項４】
前記論理演算情報表示手段は、前記画像処理ツール設定手段により設定された複数の画像処理ツールの中から反転出力対象となる画像処理ツールを選択可能に表示し、
前記論理演算情報設定手段は、前記論理演算情報表示手段により選択された前記反転出力対象となる画像処理ツールと前記演算種別を関連付けて設定可能に構成され、
前記良否判定手段は、前記反転出力対象となる画像処理ツールの実行結果の反転出力を含めて論理演算することにより、検査対象物の良否を判定することを特徴とする請求項１から３のいずれか記載の画像処理装置。
【請求項５】
前記論理演算情報記憶手段に記憶された複数の異なる論理演算情報のうちユーザ操作に基づき選択された論理演算情報における論理演算結果を総合判定結果とする総合判定条件を設定する総合判定条件設定手段を備え、
前記良否判定手段は、前記総合判定条件設定手段により設定された総合判定条件に基づいて、検査対象物の良否を判定することを特徴とする請求項１から４のいずれか記載の画像処理装置。
【請求項６】
前記画像処理ツールには、前記領域設定手段により設定される複数の領域の位置補正を行うための位置補正ツールが含まれており、
前記論理演算情報設定手段は、前記論理演算情報表示手段により選択された前記位置補正ツールと前記演算種別を関連付けて設定可能に構成され、
前記良否判定手段は、前記位置補正ツールの成功可否を含めて論理演算することにより、検査対象物の良否を判定することを特徴とする請求項１から５のいずれか記載の画像処理装置。
【請求項７】
前記基準画像に対して各種設定をするための設定モードと、前記撮像手段により取得された検査対象物の画像を用いて検査対象物の良否を判定する検査モードとを切り換えるモード切替手段を備えることを特徴とする請求項１から６のいずれか記載の画像処理装置。
【請求項８】
検査対象物を撮像する撮像ステップと、
前記撮像ステップにより取得された検査対象物の画像に対して複数の異なる画像処理ツールを実行する画像処理ツール実行ステップと、
前記画像処理ツール実行手段の実行結果に基づいて、検査対象物の良否を判定する良否判定ステップと、
前記良否判定手段の判定結果を判定信号として外部に出力する出力ステップと、を含む、画像処理装置を用いた画像処理方法において、
良否判定の基準となる基準画像に対して複数の領域を設定する領域設定ステップと、
前記領域設定ステップにより設定される複数の領域の各々に対し、前記複数の異なる画像処理ツールのうちいずれかを対応付けて設定する画像処理ツール設定ステップと、
前記画像処理ツール設定ステップにより設定された複数の画像処理ツールの中から任意の数からなる特定の画像処理ツールを選択可能に表示し、該特定の画像処理ツールの実行結果を論理演算するための演算種別を選択可能に表示する論理演算情報表示ステップと、
前記論理演算情報表示ステップにより選択された前記特定の画像処理ツールと前記演算種別を関連付けて、一の論理演算情報として設定する論理演算情報設定ステップと、を含み、
前記良否判定ステップは、前記論理演算情報設定ステップにより設定された一の論理演算情報に基づいて、前記特定の画像処理ツールの実行結果を前記演算種別で論理演算することにより、検査対象物の良否を判定することを特徴とする画像処理方法。
【請求項９】
検査対象物を撮像する撮像手段と、
前記撮像手段により取得された検査対象物の画像に対して複数の異なる画像処理ツールを実行する画像処理ツール実行手段と、
前記画像処理ツール実行手段の実行結果に基づいて、検査対象物の良否を判定する良否判定手段と、
前記良否判定手段の判定結果を判定信号として外部に出力する出力手段と、を有する画像処理装置で実行可能なコンピュータプログラムにおいて、
前記画像処理装置を、
良否判定の基準となる基準画像に対して複数の領域を設定する領域設定手段と、
前記領域設定手段により設定される複数の領域の各々に対し、前記複数の異なる画像処理ツールのうちいずれかを対応付けて設定する画像処理ツール設定手段と、
前記画像処理ツール設定手段により設定された複数の画像処理ツールの中から任意の数からなる特定の画像処理ツールを選択可能に表示し、該特定の画像処理ツールの実行結果を論理演算するための演算種別を選択可能に表示する論理演算情報表示手段と、
前記論理演算情報表示手段により選択された前記特定の画像処理ツールと前記演算種別を関連付けて、一の論理演算情報として設定する論理演算情報設定手段として機能させるとともに、
前記良否判定手段は、前記論理演算情報設定手段により設定された一の論理演算情報に基づいて、前記特定の画像処理ツールの実行結果を前記演算種別で論理演算することにより、検査対象物の良否を判定するよう機能させることを特徴とするコンピュータプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、検査対象物を撮像し、取得された画像に対して複数の画像処理ツールを実行し、実行結果に基づいて検査対象物の良否を判定し、判定結果を判定信号として外部に出力する画像処理装置、画像処理方法及びコンピュータプログラムに関する。
【背景技術】
【０００２】
工場など数多くの生産現場では、人の目視に頼っていた外観検査を自動化・高速化するために、画像処理装置が導入されている。画像処理装置は、ベルトコンベア等の搬送手段にて生産ライン上を流れてくるワークをカメラによって撮像し、得られた画像データを用いて所定領域の輪郭抽出や面積計算など複数の画像処理ツールを実行する。そして、画像処理ツールの実行結果に基づいて、ワークの欠けやバリの存在、ワークに印字されるべき文字の欠落など、ワークに欠陥があるか否かの各種検査を行う。各種検査で欠陥の有無を判定した後、最終的な良否を判定し、その判定結果をＰＬＣ（プログラマブルロジックコントローラ）等の外部機器に対して判定信号として出力する。このように、ＦＡ（ファクトリーオートメーション）の現場では、画像処理装置は、ワークの良否を判定するＦＡセンサの一つとして利用される。
【０００３】
画像処理装置から出力される判定信号には、ワークを良品とみなす判定結果であるＯＫ信号と、ワークを不良品とみなす判定結果であるＮＧ信号とがある。一般的に、画像処理装置では、全ての検査において欠陥がない、と判定された場合に、総合判定結果としてＯＫ信号を外部に出力している。一方、検査のいずれかにおいて欠陥がある、と判定された場合には、総合判定結果としてＮＧ信号を外部に出力している（例えば特許文献１参照）。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２００５−０６９８６３号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
近年、複雑かつ多様な検査内容にも対応し得る画像処理装置がＦＡ現場から求められている。例えば、検査項目Ａと検査項目Ｂのいずれか一方でＯＫ判定となり、且つ、検査項目Ｃと検査項目Ｄのいずれか一方でＯＫ判定となった場合に、総合判定結果としてＯＫ信号を出力したい、といった検査内容である。全ての検査項目で欠陥がないと判定された場合にのみＯＫ信号を出力する機能しか有していない画像処理装置では、このような検査ニーズを満たすことが難しい。
【０００６】
この点、例えば、プログラムの実行環境や開発環境を用いて、ユーザ自身が検査プログラムを作成することも考えられる。しかし、これをするにはプログラミング知識が不可欠となり、プログラミング知識が乏しいユーザにとっては敷居が高い。また、検査ニーズは多種多様であり、検査内容が変わるたびにプログラミング作業が必要になると、その実装や検証など検査開始までに多くの工数が掛かり、使い勝手の面で利便性に欠ける。
【０００７】
一方で、上述したように画像処理装置はＰＬＣ等の外部機器に接続されるため、検査プログラムの構築をＰＬＣ側に委ねることも考えられる。具体的には、例えばＰＬＣのラダープログラムに上記の検査内容を具現化する論理演算モジュールを組み込んでおく。そして、ＰＬＣが画像処理装置から検査項目Ａ〜検査項目Ｄの判定結果を受け取って、組み込まれた論理演算モジュールを実行すればよい。しかし、このやり方も、ラダープログラムの知識が乏しいユーザにとっては敷居が高い。また、ＰＬＣ側で論理演算をする場合には、複数の検査項目の判定結果を出力しなければならないが、画像処理装置の出力線の数には限りがある。例えば、検査項目Ａ〜検査項目Ｊの判定結果を出力するためには１０本の出力線を設ける必要があり、配線作業が煩雑になったり、出力同期をとるための処理が複雑化したりするなど、使い勝手が悪い。
【０００８】
本発明は、以上の点に鑑みてなされたものであり、その目的は、プログラミング知識が乏しいユーザであっても、複雑な検査を行うための出力設定を簡易に設定することが可能な画像処理装置、画像処理方法及びコンピュータプログラムを提供することにある。
【課題を解決するための手段】
【０００９】
上述した目的を達成するために、本発明に係る画像処理装置は、検査対象物を撮像する撮像手段と、撮像手段により取得された検査対象物の画像に対して複数の異なる画像処理ツール（に基づく画像処理）を実行する画像処理ツール実行手段と、画像処理ツール実行手段の実行結果に基づいて、検査対象物の良否を判定する良否判定手段と、良否判定手段の判定結果を判定信号として外部に出力する出力手段と、を有する画像処理装置において、良否判定の基準となる基準画像に対して複数の領域を設定する領域設定手段と、領域設定手段により設定される複数の領域の各々に対し、複数の異なる画像処理ツールのうちいずれかを対応付けて設定する画像処理ツール設定手段と、画像処理ツール設定手段により設定された複数の画像処理ツールの中から（例えば少なくとも二以上の）任意の数からなる特定の画像処理ツールを選択可能に表示し、該特定の画像処理ツールの実行結果を論理演算するための演算種別を選択可能に表示する論理演算情報表示手段と、論理演算情報表示手段により選択された特定の画像処理ツールと演算種別を関連付けて、一の論理演算情報として設定する論理演算情報設定手段と、を備え、良否判定手段は、論理演算情報設定手段により設定された一の論理演算情報に基づいて、特定の画像処理ツールの実行結果を演算種別で論理演算することにより、検査対象物の良否を判定することを特徴とする。
【００１０】
本発明に係る画像処理装置によれば、論理演算情報表示手段により、ユーザは、基準画像に対して設定した複数の領域の各々に対応付けられた複数の画像処理ツールの中から、論理演算の対象としたい任意の数からなる特定の画像処理ツールを選択するとともに、選択した特定の画像処理ツールの実行結果を論理演算するための演算種別（例えばＡＮＤ演算又はＯＲ演算のいずれか）を選択することができる。任意の数からなる特定の画像処理ツールの数については、例えば５個でも１０個でも、予め定められた数以下で幾つ選択してもよい。好ましくは、少なくとも二以上の画像処理ツールを選択するのがよく、更に好ましくは、少なくとも三以上の画像処理ツールを選択するのがよい。要するに、ユーザは、論理演算の候補（論理演算の構成要素、論理演算の元）として画像処理ツールを所望の数だけ選択することができる。そして、選択された特定の画像処理ツールと演算種別は、論理演算情報設定手段により、一の論理演算情報として設定される。このような設定がなされた後、実際の検査では、良否判定手段によって上述した一の論理演算情報に基づき検査対象物の良否が判定される。従って、プログラミング知識が乏しいユーザであっても、複雑な検査内容の出力設定を実現することができる。
【発明の効果】
【００１１】
以上説明したように、本発明によれば、プログラミング知識が乏しいユーザであっても、複雑な検査を行うための出力設定を簡易に設定することができる。
【図面の簡単な説明】
【００１２】
【図１】本発明の実施の形態に係る画像処理装置の構成例を示す模式図である。
【図２】本発明の実施の形態に係る画像処理装置を構成する画像処理センサのハードウェア構成を示すブロック図である。
【図３】本実施形態に係る画像処理装置におけるモード切替画面の例示図である。
【図４】本実施形態に画像処理装置の表示装置を用いた各種設定の流れを示す例示図である。
【図５】本実施形態に係る画像処理装置のツール設定を概念的に説明するための図である。
【図６】出力線に割り当てることが可能な出力内容がプルダウンで表示されている様子を示す図である。
【図７】具体的な検査内容の一例を説明するための説明図である。
【図８】出力割当を行う際の拡張機能を設定するための設定画面の一例である。
【図９】出力割当を行う際の拡張機能を設定するための設定画面の一例である。
【図１０】出力割当を行う際の拡張機能を設定するための設定画面の一例である。
【図１１】出力割当を行う際の拡張機能を設定するための設定画面の一例である。
【図１２】本実施形態に係る画像処理装置における機能ブロック図である。
【図１３】本実施形態に係る画像処理装置の運転モード時における処理の流れを示すフローチャートである。
【図１４】本実施形態に係る画像処理装置の運転モード時における処理の流れを示すフローチャートである。
【発明を実施するための形態】
【００１３】
以下、本発明の実施の形態に係る画像処理装置について、図面に基づいて具体的に説明する。以下で説明される個別の実施形態は、本発明の上位概念、中位概念および下位概念など種々の概念を理解するために役立つ。また、本発明の技術的範囲は、特許請求の範囲によって確定され、以下の個別の実施形態によって限定されるわけではない。なお、本実施形態の説明で参照する図面を通じて、同一又は同様の構成又は機能を有する要素については、同一又は同様の符号を付して、詳細な説明を省略する。
【００１４】
［全体構成］
図１は、本発明の実施の形態に係る画像処理装置の構成例を示す模式図である。図１に示す画像処理装置は、生産ライン６を流れるワーク５（検査対象物）を撮像する画像処理センサ１と、データ通信用の接続ケーブル３によって画像処理センサ１と接続される表示装置２（モニタ）とで構成されている。本実施形態では、表示装置２としてタッチパネル式の液晶モニタを用いているが、この代わりに、キーボードとディスプレイを有する外部コンピュータであってもよい。また、画像処理センサ１と表示装置２が分離されていることは必須ではなく、例えば画像処理センサ１と表示装置２とが一体的に構成されたものを考えてもよい。
【００１５】
画像処理センサ１は、ワーク５を撮像する撮像素子、ワーク５に対して検査光を照射する照明光源などを備えるとともに、内部にＦＰＧＡ（Field-Programmable Gate Array）やＤＳＰ（Digital Signal Processor）等を備えている。詳細は図２を用いて説明するが、ＤＳＰは、撮像素子に撮像指示を出したり各画像処理ツールに基づく画像処理を実行したり、画像処理装置の統合的な制御を司るためのプロセッサである。ＦＰＧＡは主として高速応答性が求められる処理を行うための回路要素であり、要するに、各画像処理に先立つ前処理を行うための回路要素である。画像処理センサ１は、撮像素子から得られた画像データを用いて画像処理を実行し、画像処理センサ１の外部に接続されたＰＬＣ（Programmable Logic Controller）などの制御機器（図示せず）に対して、ワーク５の良否判定の判定結果を示す判定信号を出力する。なお、画像処理センサ１には、接続ケーブル３と接続するための通信コネクタ、外部の電源から電力の供給を受ける電源ケーブルを接続するための電源コネクタが設けられる。また、画像処理センサ１には、画像処理センサ１の制御プログラムを生成するためのＰＣ（Personal Computer）を接続することもでき、このＰＣ上で動作する検査設定ソフトウェアにより、各種プログラムの作成や検査パラメータの設定等を行うことも可能である。
【００１６】
表示装置２は、前面中央部分にタッチパネル２１が設けられており、撮像したワーク５のカラー画像又はグレー画像や、それらの画像を用いた計測処理の結果を画面に表示する。また、ユーザによる選択入力や設定入力なども受け付ける。本実施形態では、表示装置２はタッチパネル２１を採用しており、タッチパネル２１を介してユーザの操作入力や選択入力を受け付ける。なお、表示装置２も画像処理センサ１と同様に、接続ケーブル３と接続するための通信コネクタ、外部の電源から電力の供給を受ける電源ケーブルを接続するための電源コネクタが設けられている。
【００１７】
［ハードウェア構成］
図２は、本発明の実施の形態に係る画像処理装置を構成する画像処理センサ１のハードウェア構成を示すブロック図である。図２において、コネクタ基板１６は、電源インタフェース１６１に設けてある電源コネクタを介して、外部の電源から電力の供給を受ける。電源基板１８は、供給された電力を各基板に供給する。本実施形態では、カメラモジュール１４にはメイン基板１３を介して電力を供給している。電源基板１８のモータドライバ１８１は、カメラモジュール１４のモータ１４１に駆動電力を供給し、オートフォーカス動作を実現している。
【００１８】
通信基板１７は、外部に接続されたＰＬＣ等の外部機器から撮像トリガ信号を受信すると、その撮像トリガ信号をメイン基板１３に転送する。メイン基板１３のＤＳＰ１３２は、撮像トリガ信号を受信すると、カメラモジュール１４に撮像指示信号（撮像コマンド）を送る。
【００１９】
照明基板１５には、ワーク５を撮像する撮像領域に光を照射するためのＬＥＤ１１が設けられ、このＬＥＤ１１は、ＬＥＤドライバ１５１によって駆動される。メイン基板１３のＤＳＰ１３２は、カメラモジュール１４でワーク５の撮像が行われる際、ＬＥＤドライバ１５１に対し、ＬＥＤ１１の点灯／消灯を制御する制御信号を送信する。ＬＥＤドライバ１５１は、ＤＳＰ１３２からの制御信号に応じて、ＬＥＤ１１の点灯／消灯タイミング、光量等を調整する。また、メイン基板１３のＤＳＰ１３２は、カメラモジュール１４のモータ１４１に対し、電源基板１８のモータドライバ１８１を介してオートフォーカス動作を制御する制御信号を送信する。これにより、ワーク５を撮像する際にオートフォーカス動作を行う。
【００２０】
カメラモジュール１４は、メイン基板１３からの撮像指示信号に応じてワーク５を撮像する。本実施の形態では、撮像素子としてＣＭＯＳ基板１４２を備えており、撮像されたカラー画像の画像データは、メイン基板１３のＦＰＧＡ１３１へ出力される。メイン基板１３のＦＰＧＡ１３１は、取得した画像データに対して所定の処理（例えばダイナミックレンジ変換処理、グレー変換処理など。本実施形態では、所定の処理の内容は設定不可能であるが、設定可能であってもよい）を施した上で、ＤＳＰ１３２に転送する。メイン基板１３のＤＳＰ１３２は、画像データについて、エッジ検出処理、パターン検索処理等の画像処理ツールを実行する。演算処理結果等は、メモリ１３３に記憶される。なお、ＣＭＯＳ基板１４２は、ＣＣＤ基板など他の撮像素子で代用することも可能である。また、メモリ１３３は、例えばフラッシュＲＯＭやＲＡＭなどの不揮発性メモリ及び／又は揮発性メモリから構成され、例えば、画像処理装置の各種処理を制御するための制御プログラム、ユーザにより設定された検査条件プログラムや検査パラメータ（検査データ）、ＤＳＰ１３２が各種画像処理を実行する際の一時データなど、様々なデータが記憶される。特に、本実施形態に係る画像処理装置では、ユーザにより設定された論理演算情報もメモリ１３３に記憶される。この詳細については後述する。
【００２１】
メイン基板１３のＤＳＰ１３２は、各種画像処理の結果として、欠陥を検出したか否かで検査対象物の良否を示すＯＫ／ＮＧ信号（判定信号）を、通信基板１７を介して外部のＰＬＣ等へ出力する。この判定信号は、ワーク５を撮像して得られた画像データとともに表示装置２へも送信される。判定信号を受信した表示装置２は、ワーク５を撮像したカラー画像や判定結果を表示する。本実施形態に係る画像処理装置では、表示装置２は、カラー画像や判定結果を表示するだけでなく、検査条件プログラムを構築するための設定画面を表示する。特に、良否判定の基準となる基準画像を表示し、その基準画像に対し、ユーザが複数の領域を設定可能に表示したり、設定された領域に対して各種画像処理ツールを設定可能に表示したりする。また、画像処理装置が保有している複数の異なる画像処理ツールの中からユーザが所望する特定の画像処理ツールを選択可能に表示したり、特定の画像処理ツールの実行結果を論理演算するための演算種別を選択可能に表示したりする。この詳細については後述する。なお、表示装置２の各画面表示は、ＤＳＰ１３２からの表示命令に基づくものであるが、他にも例えば、検査設定ソフトウェアを表示装置２に組み込んでおき、表示装置２が主体となって各画面表示を行うように構成してもよい。この場合、各種設定が完了した後、検査条件プログラムやパラメータ等の検査データが、表示装置２から画像処理センサ１に転送されるようにしてもよい。また、上述した基準画像は、画像処理センサ１に事前に登録・保持されていてもよいし、事前に登録・保持されていなくてもよい。前者の場合、領域を設定し直す際に過去に使用した基準画像上で領域の再設定を行うことができるメリットがある。後者の場合、領域の設定を行う際にマスターワークを撮像して基準画像を取得すればよく、前者の場合のメリットはないが、基準画像の事前登録・保持が不要となる。
【００２２】
なお、本実施形態では、ＤＳＰ１３２が撮像制御や照明制御、オートフォーカス制御等を実行するようにし、例えばＣＭＯＳ基板１４２に対して撮像同期信号を送るなど高速応答性が求められる処理はＦＰＧＡ１３１が担うようにしている。しかし、本発明はこれに限られず、例えば、ＦＰＧＡ１３１とＤＳＰ１３２とが一体となった主制御回路（ＭＰＵなど）を設け、この主制御回路が、撮像指示信号や同期信号等をＣＭＯＳ基板１４２へ送信し、複数のＬＥＤ１１の点灯／消灯を制御する制御信号をＬＥＤドライバ１５１へ送信し、オートフォーカス動作を制御する制御信号をカメラモジュール１４のモータ１４１へ送信するようにしてもよい。その他、本実施形態に係る画像処理センサ１や表示装置２を具現化するハードウェア構成は、種々考えられる。
【００２３】
［運転モード／設定モード］
ユーザは、表示装置２のタッチパネル２１の画面に表示されている各種ボタンを選択（スタイラスペン又は指等でタッチ）することにより、画像処理装置の動作を制御する。そして、表示装置２は、少なくとも２つのモードを選択・切り換える機能を有しており、１つ目のモードは、実際にワーク５の検査を実行する「検査モード（Ｒｕｎモード）」であり、２つ目のモードは、画像処理装置の検査条件の各種設定等を行う「設定モード」である。これら「検査モード」と「設定モード」について、図３を用いて説明する。
【００２４】
図３は、本実施形態に係る画像処理装置におけるモード切替画面の例示図である。図３（ａ）は、「検査モード」のときの画面表示の例示図である。図３（ａ）に示すように、ワーク表示領域３１に、画像処理センサ１が撮像したワーク５の画像が表示される。表示装置２のタッチパネル２１の画面は、このワーク表示領域３１と、以下に説明する「センサ設定」ボタン３２を含む部品画像が横一列に並べて配置された領域とから構成される。ワーク表示領域３１の右上には、撮像したワーク５の画像を用いて行った検査結果（総合判定結果）が良品であることを示す「ＯＫ」の文字が重ねて表示されている。ここで、例えば検査項目の追加や削除など検査条件を変更したい場合、或いは、生産ライン上を流れてくるワーク５の種類に伴って新規に検査条件を設定したい場合、ユーザは、「検査モード」を「設定モード」に切り換える必要がある。そこで、ユーザは、「検査モード」から「設定モード」に切り換えるための「センサ設定」ボタン３２を選択して、「検査モード」から「設定モード」へと切り替える。
【００２５】
図３（ｂ）は、「設定モード」のときの画面表示の例示図である。図３（ｂ）に示す「設定モード」の画面には、現在設定されている検査プログラム（０２：ＰＲＯＧ＿０２）が表示され、既に設定済みの他の検査プログラムをプルダウン等により選択可能なプログラム選択領域３３と、現在設定されている検査プログラムにおいて登録されているマスター画像をユーザに視認させるためのマスター画像表示領域３４と、検査項目の追加や削除など検査条件を変更したい場合に各種設定の流れを誘導（ナビゲート）するための「設定ナビ」ボタン３５と、検査条件の設定又は変更が完了し、「設定モード」から「検査モード」に戻るための「運転開始」ボタン３６と、が含まれている。ユーザは、他の検査プログラムに変更したい場合には、プログラム選択領域３３にて、プルダウン表示された複数の異なる検査プログラムの中から所望の検査プログラムを選択する。ここでは、現在設定されている検査プログラム（０２：ＰＲＯＧ＿０２）の設定内容を変更するものとする。なお、新規に検査プログラムを設定する場合には、プログラム選択領域３３で、例えば（０３：  ）というように検査プログラム名が空欄になっているところを選択した後、「設定ナビ」ボタン３５を選択すればよい。
【００２６】
なお、詳細は図４を用いて後述するが、「プログラム（検査プログラム）」には、ワーク５を撮像する際のＬＥＤ１１の明るさやカメラモジュール１４のフォーカス位置などを規定する撮像条件データ、ワーク５と比較する基準（良品の基準）となるマスター画像の画像データ、１つのワーク５に対して複数の検査を行うための複数の画像処理ツール、各画像処理ツールと対応付けて設定され、ワーク５を撮像した画像のうち画像処理の対象となる対象領域（ＲＯＩ：Region Of Interest）の大きさや位置、角度を示すデータ、画像処理装置から引き出される出力線に対する出力割当（出力内容）を示すデータなどが含まれている。ここでいう「プログラム」は、これらのうち、少なくとも、複数の画像処理ツールと、これら複数の画像処理ツールを用いて行う出力割当（後述する論理演算情報）とを含む情報（データ群、データセット）であって、画像処理センサ１を用いたユーザ所望の特定の検査に用いられる検査設定情報（或いは、パラメータ値の組み合わせを含む検査設定情報、検査設定仕様、検査条件データといってもよい）の一例であるといえる。さらに、プログラムは、複数の画像処理ツールの各々に対応付けて設定された領域（対象領域）や判定閾値（詳細は後述）を含むものであってもよい。なお、この「プログラム」は、図２に示すメモリ１３３に記憶される。
【００２７】
以下、現在設定されている検査プログラム（０２：ＰＲＯＧ＿０２）の内容を新規に設定する又は変更する流れについて説明する。ユーザが上述した「設定ナビ」ボタン３５を選択すると、設定内容を設定又は変更する設定画面に画面遷移する（図４参照）。
【００２８】
図４は、本実施形態に画像処理装置の表示装置２を用いた各種設定の流れを示す例示図である。図４に示す設定画面を通じて、ユーザは、撮像条件の設定（図４（ａ））、マスター画像の登録（図４（ｂ））、マスター画像に対する輪郭サーチ等の画像処理ツールの設定（図４（ｃ）〜図４（ｅ））、出力割り当て（図４（ｆ））、という流れで順次設定を行う。以下、各種設定の流れを詳細に説明する。
【００２９】
図３（ｂ）に示す「設定ナビ」ボタン３５が選択されると、まず、図４（ａ）に示す撮像条件設定画面が表示される。撮像条件設定画面では、現在撮像している画像（ＬＩＶＥ画像）が主表示領域４１に表示され、画面下部に撮像条件を設定する設定ボタン群「トリガ条件」「明るさ自動調整」「フォーカス自動調整」が表示される。「トリガ条件」ボタンは、ワーク５の撮像を開始するタイミングの種類を選択するためのボタンであって、例えば、トリガ間隔で指定した時間間隔で連続的に撮像を開始する内部トリガ、外部に設置した光電センサやＰＬＣ等からの外部入力を契機として撮像を開始する外部トリガ、のいずれかを選択することができる。「明るさ自動調整」ボタンは、ワーク５の形状や表面状態（色、光沢、材質）に基づいてＬＥＤ１１の光量や露光時間などを自動調整するためのボタンであり、この「明るさ自動調整」ボタンを選択したとき、明るさの自動調整が開始される。「フォーカス自動調整」ボタンは、ワーク５を撮像した画像データに基づいてモータ１４１を制御し、オートフォーカス動作を実現するためのボタンであり、この「フォーカス自動調整」ボタンを選択したとき、フォーカスの自動調整が開始される。これらの具体的な調整方法については説明を省略するが、これらのボタンは、撮像に関する良品の基準として最適な（ユーザ所望の）マスター画像の画像データを作成するために用いられるボタンである。
【００３０】
なお、本実施形態では、「明るさ調整」と「フォーカス調整」について自動調整を考えたが、勿論、手動調整であってもよいことは言うまでもない。ユーザは、これらの基本的な設定以外の細かな設定を拡張して行いたい場合には、拡張条件を設定するための図４（ａ）の「拡張機能」ボタン４２を選択すればよい。特に図示はしないが、例えば、ＬＥＤ１１のオン／オフを切り替えるための設定や、ＦＰＧＡ１３１においてＨＤＲ（High Dynamic Range）処理を実行するか否かを切り換えるための設定などを行うことができる。
【００３１】
ユーザは、必要に応じて、図４（ａ）に示す撮像条件設定画面にて、「トリガ条件」の設定を行う。また、ユーザは、必要に応じて、主表示領域４１に表示されたＬＩＶＥ画像に対して「明るさ自動調整」と「フォーカス自動調整」を行う。ユーザは、主表示領域４１に表示されているＬＩＶＥ画像が撮像に関する良品の基準として最適な画像である、と判断したら、図４（ａ）の「進む」と表示された「画面遷移」ボタン４３を選択する。つまり、ユーザは、撮像条件に関する種々のボタンを必要に応じて択一的に選択し、これ以上の調整が必要ないと判断したら、「画面遷移」ボタン４３を選択する。「画面遷移」ボタン４３が選択された場合、図４（ｂ）に示すマスター画像登録画面が表示される。マスター画像登録画面には、現在主表示領域４１に表示されているＬＩＶＥ画像をマスター画像として登録するための「Ｌｉｖｅ画像登録」ボタン４４が表示され、ユーザがこれを選択することによって、現在主表示領域４１に表示されているＬＩＶＥ画像が検査プログラム（０２：ＰＲＯＧ＿０２）のマスター画像として登録される。
【００３２】
なお、マスター画像の画像データはメモリ１３３に記憶される。新規設定の場合には、マスター画像の画像データはメモリ１３３上の空き領域に新たに記憶・保持され、設定変更の場合には、マスター画像の画像データはメモリ１３３において既存のマスター画像の画像データが記憶されている領域に上書きされる（新規設定のときのように、上書きされないようにしてもよい）。また、本実施形態では、「Ｌｉｖｅ画像登録」ボタン４４を用いて現在撮像している画像をマスター画像として登録することとしたが、例えば、予めメモリ１３３に記憶しておいた画像を呼び出してきて、これをマスター画像として登録することも可能である。具体的に説明すると、図４（ｂ）に示すマスター画像登録画面の左下に表示された拡張機能ボタンを選択し、メモリ１３３に保存されている画像履歴のうち所望の画像を選択すると、選択した所望の画像がマスター画像として主表示領域４１に表示される。そして、図４（ｂ）に示すマスター画像登録画面の左上に表示された「戻る」ボタンを選択することで、「トリガ条件」などを設定することができる（この場合、「明るさ自動調整」や「フォーカス自動調整」はする必要ない）。
【００３３】
図４（ｂ）において、ＬＩＶＥ画像からのマスター画像の登録又はマスター画像の呼び出しが終了すると、ユーザは、ツール設定を行う画面に遷移するための「進む」と表示された「画面遷移」４５を選択する。「画面遷移」ボタン４５が選択された場合、図４（ｃ）に示すツール設定画面が表示される。このツール設定画面では、様々な画像処理ツールを設定することができる。ここで、画像処理ツールとは、特定の検査を実行するための画像処理を行うプログラムモジュールを意味し、その種類は様々である。本実施形態では特に、輪郭サーチツール、色面積ツール、及び位置補正ツールについて具体的に説明するが、他にも例えば、エッジ位置計測ツール、エリア計測ツール、ブロブ計測ツール、傷計測ツールなどが挙げられる。
【００３４】
ユーザは、マスター画像に対して画像処理ツールを設定（追加）したい場合、図４（ｃ）に示す「追加」ボタン４６を選択する。「追加」ボタン４６が選択された場合、図４（ｄ）に示すツール選択画面が表示される。本実施形態では説明を簡素化するため、ユーザがマスター画像に対し、「輪郭サーチ」ツール、「色面積」ツール及び「位置補正」ツール、の３種類の画像処理ツールを選択し、設定する場合について説明する。ユーザによって輪郭サーチツールを示す「輪郭サーチ」ボタン４７ａが選択されると、図４（ｅ）に示す輪郭サーチ設定画面が表示される。輪郭サーチツールは、マスター画像上で、輪郭サーチしたい領域（マスター画像の全部又は一部の領域）に対してウィンドウを設定し、設定されたウィンドウ内から輪郭情報を抽出し、それをマスター画像の輪郭情報として予め登録した後、運転モード時に、画像処理センサ１で取得したワークの画像（入力画像或いは検査対象画像）からウィンドウに対応する領域内の輪郭情報を抽出し、その輪郭情報とマスター画像の輪郭情報との一致度（近似度、類似度）を計測し、計測された一致度が予め設定される許容範囲（いわゆる判定閾値。判定閾値の設定については後述する）内であればＯＫ出力を行い、一致度が許容範囲外であればＮＧ出力を行って、欠陥の有無を判定するものである。要するに、登録されたマスター画像の輪郭情報を基準として、検査対象となるワーク５のうち設定されたウィンドウに対応する領域内に欠陥があるか否かを判別するための画像処理ツールである。
【００３５】
なお、一致度の算出方法は、例えば、ワーク５の画像から取得した輪郭情報（輪郭形状や輪郭位置）とマスター画像の輪郭情報（輪郭形状や輪郭位置）の相関値（０〜１．０）を計算する、などが考えられる。算出された一致度は、上述したようにユーザによって予め設定される判定閾値と比較され、欠陥の有無が判定される。例えば判定閾値として０．７が設定されている場合、一致度が０．７を超えたときには欠陥なしと判定し、一致度が０．７を下回ったときには欠陥ありと判定する。以下、図５の説明図を用いて、「輪郭サーチ」のツール設定について概念的に説明する。また、「色面積」「位置補正」のツール設定についても同様に、図５を用いて概念的に説明する。
【００３６】
図５は、本実施形態に係る画像処理装置のツール設定を概念的に説明するための説明図である。図５では、良品と判定すべきワーク（マスターワーク）には“十字”と“Ｎ”の文字が印字されており、主表示領域４１に表示されたマスター画像の中にも“十字”と“Ｎ”の文字が含まれているものとする。この場合において、ユーザは、“十字”を位置決め用のアライメントマークとして用いる一方、“Ｎ”の文字については、その文字が含めて正しく印字されているかどうかを判断するものとする。また、“Ｎ”の文字線は所定の同一色で着色されているものとする。
【００３７】
図５（ａ）に示すように、ユーザは、マスター画像上にて“Ｎ”の文字を囲むようにウィンドウ５１を設定する。ウィンドウ５１の設定方法は種々考えられるが、例えば、ツール選択画面（図４（ｄ）参照）から輪郭サーチ設定画面（図４（ｅ）参照）に画面遷移すると、マスター画像上に輪郭サーチに対応するウィンドウ５１が、初期値としての大きさ、形状、並びにマスター画像に対する位置に基づいて、マスター画像上に重ね表示される。ユーザは、タッチパネル２１を用いてこのウィンドウ５１を所望の位置に移動させるとともに、所望の大きさ・形状に変更することができる。ここでは例えば、ユーザがこのウィンドウ５１を、画面上に表示される“Ｎ”の位置・大きさに対応させて設定する。なお、ウィンドウ５１の形状について、ユーザは円形か矩形かを選択することができ、選択された値は、ウィンドウ５１の形状パラメータのパラメータ値として、上述した検査プログラムに含まれることとなる。このように、ウィンドウ５１の大きさパラメータ、形状パラメータ、位置パラメータ、角度（姿勢）パラメータの各パラメータ値は、上述した検査プログラムに包含され、メモリ１３３に記憶されることとなる。
【００３８】
ウィンドウ５１が設定されると、マスター画像上でウィンドウ５１内の輪郭５１ａがリアルタイムに抽出され、抽出された輪郭５１ａが“Ｎ”の文字の外周（外周縁）に沿って色付きで重ねて表示される。これにより、ユーザは、抽出される輪郭情報（輪郭形状や輪郭位置）が適切かどうかをリアルタイムに判断することができる。
【００３９】
ここで、上述した判定閾値の設定について説明する。ユーザは、ウィンドウ５１の設定が完了すると、輪郭サーチ設定画面（図４（ｅ）参照）の下方に表示された「編集」ボタンを選択し、判定閾値を設定するための設定画面を表示させる（図示は省略）。そして、図５（ａ）にて抽出された輪郭５１ａの輪郭情報をメモリ１３１に一旦保持しておき、画像処理装置をテスト運転させる。テスト運転について具体的に説明すると、ユーザが良品と考える良品ワークの画像（入力画像或いは検査対象画像）を取得し、取得した良品ワークの画像からウィンドウ５１に対応する領域内の輪郭情報を抽出し、その輪郭情報とメモリ１３１に一旦保持された輪郭情報との一致度を計測する。ここでは０．９だったとする。一方で、ユーザが不良品と考える不良品ワークの画像を取得し、取得した不良品ワークの画像についても良品ワークの画像と同様に一致度を計測する。ここでは０．１だったとする。そうすると、ユーザは、０．１と０．９の中間値である０．５を判定閾値（欠陥閾値）として設定することができる。なお、本実施形態では、このようにテスト運転によって判定閾値を設定するようにしているが、例えば、判定閾値として予め固定値０．５が設定されるようにしてもよい。
【００４０】
次に、図５（ｂ）を用いて、色面積ツールの設定について説明する。なお、図５（ｂ）では説明の便宜上、図５（ａ）で設定したウィンドウ５１の図示は省略している。色面積ツールは、マスター画像上で、ユーザが色抽出したい領域（マスター画像の全部又は一部の領域）に対してウィンドウを設定し、設定されたウィンドウ内で抽出したい色と同じ色（又は近い色）の部分の面積を抽出し、それをマスター画像の色面積情報として予め登録した後、運転モード時に、画像処理センサ１で取得したワークの画像からウィンドウに対応する領域内の色面積情報を抽出し、その色面積情報とマスター画像の色面積情報との一致度を計測し、計測された一致度が予め設定される許容範囲（いわゆる上述した判定閾値）内であればＯＫ出力を行い、一致度が許容範囲外であればＮＧ出力を行って、欠陥の有無を判定するものである。要するに、登録されたマスター画像の色面積情報を基準として、検査対象となるワーク５のうち設定されたウィンドウに対応する領域内に色欠陥があるか否かを判別するためのツールといえる。
【００４１】
図５（ｂ）に示すように、ユーザは、マスター画像上にて“Ｎ”の文字を囲むようにウィンドウ５２を設定する。そして、抽出対象となる色面積の設定を行うために、ウィンドウ５２内の中で“Ｎ”の文字の中で任意の画素を選択する（例えばタッチパネル２１上で“Ｎ”の文字のどこかをタッチする）。そうすると、上述したように“Ｎ”の文字は所定の同一色で着色されているので、図５（ｂ）に示すように、選択された画素の色と同じ色（又は近い色）の画素がリアルタイムに抽出され、抽出された同一色領域５２ａが“Ｎ”の文字に沿って色付きで重ねて表示される。これにより、ユーザは、同一色領域５２ａの抽出され具合が適切かどうかをリアルタイムに判断することができる。
【００４２】
判定閾値の設定については、上述した輪郭サーチと同様にテスト運転を行って、最適な判定閾値を設定してもよい。例えば、マスター画像における同一色領域５２ａの色面積が１０００画素あるとする。良品ワークの画像について計測した一致度が０．９（９００画素）、不良品ワークの画素について計測した一致度が０．１（１００画素）だった場合、ユーザは、０．１と０．９の中間値である０．５を判定閾値に設定することができる。このように、本実施形態に係る画像処理センサ１は、「設定モード」において、マスター画像上に設定した領域の適否をユーザに判断させるためのテスト運転を行う機能を有している。なお、上述した輪郭サーチと同様に、予め固定値０．５が設定されるようにしてもよい。また、ここでは色面積として実際の画素数を考えたが、他にも例えば、ウィンドウ５２の面積のうち、選択した色と同一色を有する画素の面積が占める割合を考えてもよい。
【００４３】
最後に、図５（ｃ）を用いて、位置補正ツールの設定について説明する。なお、図５（ｃ）では、説明の便宜上、図５（ａ）及び図５（ｂ）にてそれぞれ設定したウィンドウ５１及びウィンドウ５２、それぞれ抽出された輪郭５１ａ及び同一色領域５２ａも併せて図示している。実際に生産ライン上を流れるワークは、常に同じ位置、同じ向きに流れてくるとは限らない。すなわち、ワークが常に規則正しく整列しているとは限らず、本来あるべき位置からずれた状態、或いは、その基本姿勢から傾いた状態で流れてくることがある。そこで、位置補正ツールを示す「位置補正」を行うことにより、図５（ａ）及び図５（ｂ）に示すウィンドウ５１，５２を、ワークの位置や向きに追随（追従）させることができる。
【００４４】
具体的には、図５（ｃ）に示すように、ユーザは、マスター画像上にて“十字”（アライメントマーク）を囲むようにウィンドウ５３を設定する。ウィンドウ５３が設定されると、マスター画像上でウィンドウ５３の輪郭５３ａがリアルタイムに抽出され、抽出された輪郭５３ａが“十字”の外周に沿って色付きで重ねて表示される。なお、ウィンドウ５３の設定のやり直し、位置補正の成功または失敗を判定するための判定閾値の設定については、図５（ａ）を用いて説明した輪郭サーチツールと同様であるので、詳細な説明を省略する。また、ユーザがウィンドウ５１，５２を設定したときには、ウィンドウ５３に対するウィンドウ５１，５２の相対的な位置や姿勢（角度）も併せてメモリ１３１に保持される。
【００４５】
以上、図５を用いて説明したように、本実施形態に係る画像処理装置では、ユーザが、「輪郭サーチ」「色面積」「位置補正」の各画像処理ツールを設定可能である。特に、「位置補正」については、「輪郭サーチ」や「色面積」の画像処理ツールに基づく画像処理を実行する前に先立って行われることが多く、ユーザが画像処理ツールを設定する順序としては、「位置補正」（図５（ｃ））を設定した後、「輪郭サーチ」又は「色面積」（図５（ａ），図５（ｂ））の設定を行うことが好ましい。
【００４６】
図４に戻って、ユーザは、さらに画像処理ツールを設定する場合には、輪郭サーチ設定画面（図４（ｅ）参照）の下方に「追加」と表示されたボタンを選択することで、図４（ｄ）に示すツール選択画面が表示され、所望の画像処理ツールを追加して選択できる。所望の画像処理ツールの設定すべてが完了すると、ユーザは、輪郭サーチ設定画面（図４（ｅ）参照）の左上に「戻る」と表示されたボタンを選択することで、図４（ｃ）に示すツール設定画面を再び表示させることができる。そして、ユーザは、最後に出力割当を行うために、図４（ｃ）の「進む」と表示された「画面遷移」ボタン４８を選択する。「画面遷移」ボタン４８が選択された場合、図４（ｆ）に示す出力割当画面が表示される。出力割当画面は、画像処理装置から引き出される出力線に対する設定をするための設定画面である。出力線に対する設定の詳細は、後述する［出力割当］にて具体的に説明する。
【００４７】
図４（ｆ）において、ユーザは、出力線に対する設定が完了すると、「完了」ボタン５０を選択する。「完了」ボタン５０が選択された場合、図３（ｂ）に示す「設定モード」の画面表示に戻る。このように、ユーザは、表示装置２のタッチパネル２１上で、図４に示すように、「進む」と表示された「画面遷移」ボタン４３、４５、４８を順に選択することで、簡単かつ短時間に、検査に用いる各種パラメータを設定することができる。また、画像処理装置に慣れていないユーザであっても、表示装置２上で次の操作へ誘導されるので、各種パラメータを容易に設定することができる。
【００４８】
以上説明したように、本実施形態では、撮像条件の設定（図４（ａ））、マスター画像の登録（図４（ｂ））、マスター画像に対する輪郭サーチ等の画像処理ツールの設定（図４（ｃ）〜図４（ｅ））、詳細は後述する出力割り当て（図４（ｆ））、という流れで順次設定を行ったが、本実施形態に係る画像処理センサ１では、必ずしもこの流れに沿う必要はない。少なくとも画像処理ツールの設定が行われた後に、出力割り当てが行われればよい。画像処理ツールの設定画面の画面遷移についても同様に、図４（ｃ）〜図４（ｅ）に沿って遷移する必要はない。例えば、図４（ｃ）〜図４（ｅ）に示す画像処理ツールの設定を、画面遷移を伴うことなく、一つの画面上で行うようにしてもよい。
【００４９】
［出力割当］
ここで、本実施形態に係る画像処理センサ１は、ユーザの入力操作に基づいて、外部に出力される判定信号の内容を設定する機能を有している。特に、本実施形態では、ユーザにより設定された個々の画像処理ツールに基づく画像処理の実行結果を判定信号の内容として設定することもできるし、或いは、複数の画像処理ツールに基づく画像処理の実行結果を論理演算した論理演算結果を、判定信号の内容として設定することもできる。以下、図４（ｆ）及び図６〜図１１を用いて、これらの点につき具体的に説明する。
【００５０】
図４（ｆ）の出力割当画面に示すように、出力線を示すＯＵＴが４本あり（ＯＵＴ１〜ＯＵＴ４）、ＯＵＴ１から順に、「総合判定」「ビジー」「システム／トリガエラー（エラーと表示）」「ＯＦＦ」がデフォルトで（初期値として）設定されている（これらの詳細は図６を用いて後述する）。例えばユーザは、「総合判定」ボタン４９を選択することにより、ＯＵＴ１に対する出力割当を行うための設定画面を表示させることができる。
【００５１】
図６は、図４（ｆ）に示す出力割当画面において、「総合判定」ボタン４９を選択したときの様子を示す図であり、出力線ＯＵＴ１に割り当てることが可能な出力内容がプルダウンで表示されている。図６に示すように、出力線ＯＵＴ１には、「ＯＦＦ」「総合判定」「総合判定ＮＧ」「運転」「ビジー」「エラー」「位置補正」「ツール０１」「ツール０２」を割り当てることが可能である。なお、図６では、表示装置２の画面サイズの関係で、３頁のうちの１頁しか表示されていないが、「ツール０２」下方の下ボタンを選択すれば、「ツール０３」「ツール０４」・・・等を選択できる。「総合判定」は、総合判定結果がＯＫの時にＯＮする出力であって、総合判定結果の詳細については図８（ｂ）を用いて後述する。「総合判定ＮＧ」は、総合判定結果がＮＧの時にＯＮする出力であって、上述同様、総合判定結果の詳細については図８（ｂ）を用いて後述する。「運転」は、総合判定結果の如何にかかわらず、画像処理装置が運転中の時にＯＮする出力である。「ビジー」は、撮像中、判定処理中、プログラム切り替え中、外部マスター画像登録中など、新たなトリガ入力を受け付けられない状態の時にＯＮする出力である。「エラー」は、システムエラー、起動時メモリ読み出しエラー、外部マスター画像登録エラー、トリガエラーなど、何らかのエラーが発生した時にＯＮする出力である。「位置補正」は、位置補正処理が正常に終了した時（或いは、位置補正用の輪郭抽出が正しく行われた時）にＯＮする出力である（要するに、位置補正ツールの実行結果に等しい）。「ツール０１」「ツール０２」は、指定した画像処理ツールの判定がＯＫ（欠陥なし）のときにＯＮする出力である。
【００５２】
図６に示すように、本実施形態に係る画像処理装置は、一つの出力線に対し、「ＯＦＦ」「総合判定」「総合判定ＮＧ」「運転」「ビジー」「エラー」「各画像処理ツール（位置補正、ツール０１、ツール０２等）」を割り当てる機能を有しているが、これらのうち、少なくとも「総合判定」「各画像処理ツール」を割り当てる機能があればよい。言い換えると、本実施形態に係る画像処理装置は、少なくとも、個々の画像処理ツールに基づく画像処理の実行結果のそれぞれ、又は、それら個々の画像処理ツールに基づく画像処理の実行結果を論理演算した総合判定結果、を選択可能に表示する機能を有している。これにより、画像処理装置の出力設定の自由度を高めることができる。
【００５３】
なお、図６に示す「ツール０１」「ツール０２」は、図４（ｃ）〜図４（ｅ）及び図５を用いて説明したツール設定にてユーザが設定された画像処理ツールと対応付けられている。例えば、ツール設定時における画像処理ツールのツール番号（識別番号）と、図６に示す画像処理ツールのツール番号（識別番号）とは対応付けられており、例えば、ツール設定時にユーザが別途ツール番号を指定して領域設定するようにしてもよいし、ツール設定時に領域設定した順番に自動的にツール０１、ツール０２、・・と割り当てられてもよい。また、一般に、生産ライン上を流れるワークは様々な位置、向きとなっているので、上述した「位置補正」はユーザによって頻繁に設定される。従って、図６に示すように、位置補正ツールは、画像処理ツールの一つではあるが、「輪郭サーチ」や「色面積」などの他の画像処理ツールとは区別してプルダウン表示し、出力線ＯＵＴ１に割り当て可能にしている。
【００５４】
本実施形態に係る画像処理装置では、図６において「総合判定」を選択したとき、すなわち、図４（ｆ）に示すように出力線ＯＵＴ１に「総合判定」を割り当てたときに、ロジック設定を行うことができる点が特徴的である。ロジック設定とは、複数の異なる画像処理ツールに基づく複数の異なる画像処理の実行結果を論理演算（ロジック演算）するための設定を意味する。以下、このロジックの設定について、具体的な検査例（図７参照）を挙げながら、詳細を説明する。
【００５５】
図７は、具体的な検査内容の一例を説明するための説明図である。なお、ここでは説明の便宜上、「輪郭サーチ」と「色面積」の２種類の画像処理ツールを設定する場合について説明し、図５（ｃ）を用いて説明した「位置補正」ツールの設定は省略することとしたが、これを設定する場合も同様に考えることができる。
【００５６】
図７（ａ）は、マスター画像が主表示領域４１（図４（ａ））に表示され、マスター画像にワークＸが上に２個、ワークＹが下に２個含まれている様子を示している。そして、ワークＸそれぞれを囲むように「輪郭サーチ」のウィンドウＡ、「色面積」のウィンドウＢが設定されており、ワークＹそれぞれを囲むように「輪郭サーチ」のウィンドウＣ、「輪郭サーチ」のウィンドウＤが設定されている。ここで検査したい内容は、ウィンドウＡとＢの少なくとも一方にワークＸが存在し（ただし、ウィンドウＢについては、「色面積」ツールにより着色有無まで検査する）、かつ、ウィンドウＣとＤの少なくとも一方にワークＹが存在するか否かである。この検査内容を論理式で表現すれば、（ＡｏｒＢ）ａｎｄ（ＣｏｒＤ）である。
【００５７】
例えば、検査対象画像（入力画像）として撮像されたワークの画像が図７（ｂ）や図７（ｃ）に示す画像であった場合には、ワークＸがウィンドウＡ内に存在し、且つ、ワークＹがウィンドウＣ又はＤ内に存在するので、検査結果としていずれもＯＫ信号が出力される。一方、検査対象画像（入力画像）として撮像されたワークの画像が、図７（ｄ）に示す画像であった場合には、ワークＸがウィンドウＡ内にもウィンドウＢ内にも存在しないので、また、図７（ｅ）に示す画像であった場合には、ワークＹがウィンドウＣ内にもウィンドウＤ内にも存在しないので、検査結果としていずれもＮＧ信号が出力される。このような出力を行うための出力設定について、具体的に説明する。
【００５８】
図８〜図１１は、図７に示す検査内容の出力割当を行う際の設定画面の一例である。これらの設定画面は、いずれも、ユーザによるロジック設定を誘導するための画面である。特に、図８（ａ）は、図４（ｆ）に示す出力割当画面において「ロジック設定」ボタン５０ａを選択したときに表示される画面であって、図８（ｂ）は、図４（ｆ）に示す出力割当画面において「総合判定条件」ボタン５０ｂを選択したときに表示される画面である。
【００５９】
図４（ｆ）に示す「ロジック設定」ボタン５０ａは、複数の異なる画像処理ツールに基づく複数の異なる画像処理の実行結果を１種類の演算種別（ＡＮＤ又はＯＲ）によって論理演算する、という論理演算条件（ロジック）の設定を行うためのボタンである。また、「ロジック設定」ボタン５０ａは、複数の異なる画像処理ツールに基づく複数の異なる画像処理の実行結果に加えて、一又は複数の論理演算条件（ロジック）における論理演算結果を、１種類の演算種別（ＡＮＤ又はＯＲ）によって論理演算する、という論理演算条件（ロジック）の設定を行うためのボタンとも言える。言い換えると、本実施形態に係る画像処理センサ１は、複数の異なる画像処理ツールに基づく複数の異なる画像処理の実行結果に加えて、一又は複数の論理演算条件（ロジック）における論理演算結果を、１種類の演算種別によって論理演算する、という論理演算条件（ロジック）を設定する機能を有している。
【００６０】
一方で、図４（ｆ）に示す「総合判定条件」ボタン５０ｂは、「ロジック設定」ボタン５０ａによって設定された複数の論理演算条件（ロジック）のうちいずれの論理演算条件に基づく論理演算結果を総合判定結果とするか、を選択するためのボタンである。以下、これらの「ロジック設定」及び「総合判定条件」の設定について詳しく説明する。
【００６１】
まず、ユーザは、上述した論理演算条件（ロジック）の詳細な設定を行うために、図４（ｆ）に示す「ロジック設定」ボタン５０ａを選択する。すると、図８（ａ）に示す設定画面に遷移し、ユーザは、ロジック１〜ロジック４のいずれかを選択可能になる。まず、図８（ａ）において、ロジック１に対する設定を行うために、「ロジック１」を選択する。すると、図９に示す設定画面に遷移する。図９に示す設定画面では、複数の画像処理ツールが列挙されたリストが表示されている。ここでは、図７の検査例に示すウィンドウＡ〜Ｄに対し、それぞれ「ツール０１：輪郭」、「ツール０２：：色面積」、「ツール０３：輪郭」及び「ツール０４：輪郭」の画像処理ツールが対応付けて設定されているものとする。つまり、上述したように、図９で列挙される複数の画像処理ツールは、上述したツール設定において設定した画像処理ツールと対応付けて表示される。また、図９では、「位置補正」が他の画像処理ツール（ツール０１、ツール０２、・・・）とは区別して表示され、しかも、先頭に表示されている。これは、図６を用いて説明したように、位置補正ツールはユーザによって頻繁に使用される画像処理ツールであるから、先頭に表示することでユーザが位置補正ツールを探す手間を省けるようにしている。
【００６２】
ユーザは、図９に示す設定画面に表示された画像処理ツールの中から、論理演算に用いる一又は複数の画像処理ツールを選択する（各画像処理ツールの右方に表示されるプルダウンリストの中から、所望の画像処理ツールについて「未使用」を「使用」に変更する）。そうすると、「使用」に変更された画像処理ツールの左方には識別マーク（チェックマーク）が表示される。
【００６３】
なお、図９においては、表示装置２の画面サイズの関係で、４頁のうちの１頁しか表示されていない。ユーザは、設定をクリアするための「クリア」ボタンの直ぐ左のボタン（送り頁ボタン）を選択することで、次の頁に画面遷移することができる。なお、図９に示すように、ツール０５については、その右側に何も表示されていない。これは、５番目の画像処理ツールが設定されていないからである（すなわち、ウィンドウが５個しか設定されていないからである）。例えば、ユーザが５個目のウィンドウを設定し、そのウィンドウに対して「輪郭サーチ」を設定すれば、図９において「ツール０５：」から「ツール０５：輪郭」へと表示が変更される。また、図９に示す「ツール０５：」の状態で「未使用」を「使用」に変更しても、実際の論理演算には使用されない（つまり、「使用」に変更しても有効化されない）。このように、ユーザによって領域設定されていない画像処理ツールについては、論理演算の候補として選択できないようになっている。なお、論理演算の候補として選択できないようにするための方法は他にも幾つか考えられ、例えば、「ツール０５：」の状態では、「未使用」から「使用」に変更できないようにしてもよいし、「未使用」「使用」を選択する領域をグレーアウトしてユーザの選択操作を受け付けないようにしてもよい。
【００６４】
図９において、ユーザは、「ロジック１」の設定として、「ツール０１：輪郭」と「ツール０２：色面積」を「未使用」から「使用」に変更するとともに、これらのツールの論理演算の種別「ＯＲ」を選択する。そして、図９に示す設定画面の右下のＯＫボタンを選択することにより、ロジック１の設定を終了し、図８（ａ）に示す設定画面に戻る。
【００６５】
次にユーザは、図８（ａ）に示す設定画面において「ロジック２」を選択し、図１０に示す設定画面を表示装置２に表示させる。図１０に示す設定画面において、「ロジック２」の設定として、「ツール０３」と「ツール０４」を「未使用」から「使用」に変更するとともに、これらの論理演算の種別「ＯＲ」を選択する。そして、図１０に示す設定画面の右下のＯＫボタンを選択することにより、ロジック２の設定を終了し、図８（ａ）に示す設定画面に戻る。
【００６６】
最後にユーザは、図８（ａ）に示す設定画面において「ロジック３」を選択し、図１１に示す設定画面を表示装置２に表示させる。図１１（ａ）及び図１１（ｂ）は、４頁ある設定画面のうちの３頁目と４頁目を示している。図示は省略するが、その1頁目には、「位置補正」「ツール０１」〜「ツール０５」に関する設定が表示され、その２頁目には、「ツール０６」〜「ツール１１」に関する設定が表示される。ユーザは、各頁の左下にある、戻り頁ボタン又は送り頁ボタンを選択することにより、所望の頁の設定画面を視認することができる。図１１（ａ）及び図１１（ｂ）に示すように、「ロジック３」の設定として、「ロジック１」と「ロジック２」を「未使用」から「使用」に変更するとともに、これらの論理演算の種別「ＡＮＤ」を選択する。そして、図１１に示す設定画面の右下のＯＫボタンを選択することにより、ロジック３の設定を終了し、図８（ａ）に示す設定画面に戻る。
【００６７】
このようにして、ユーザは、「ツール０１」と「ツール０２」に基づく画像処理の実行結果を論理和（ＯＲ）によって論理演算するロジック１の設定を行い、「ツール０３」と「ツール０４」に基づく画像処理の実行結果を論理和（ＯＲ）によって論理演算するロジック２の設定を行い、「ロジック１」と「ロジック２」における論理演算結果を論理積（ＡＮＤ）によって論理演算するロジック３の設定を行うことができる。
【００６８】
次に、ユーザは、出力線ＯＵＴ１に割り当てられた「総合判定」の具体的な条件を設定するために、「総合判定条件」ボタン５０ｂを選択する。すると、図８（ｂ）に示す設定画面に遷移し、ユーザは、総合判定条件として「すべてＯＫ」、「いずれかＯＫ」、「ロジック１」〜「ロジック４」を選択できる。ここではユーザは、「総合判定条件」として上述した「ロジック３」を選択する。これにより、ロジック３の論理演算結果がＯＫのときに、出力線ＯＵＴ１の総合判定結果がＯＮする出力設定を行うことができる。ユーザは、総合判定条件の設定が終わると「ＯＫ」ボタンを選択し、図４（ｆ）に示す画面に戻る。
【００６９】
なお、図８（ｂ）に示す「すべてＯＫ」は、「ロジック１」〜「ロジック４」における論理演算結果にかかわらず、全ての画像処理ツールでＯＫ（欠陥なし）の時にＯＮする出力である。また、図８（ｂ）に示す「いずれかＯＫ」は、「ロジック１」〜「ロジック４」の論理演算結果にかかわらず、全ての画像処理ツールのうちいずれか一つでもＯＫ（欠陥なし）の時にＯＮする出力である。このように、本実施形態に係る画像処理センサ１では、「すべてＯＫ」や「いずれかＯＫ」も「総合判定条件」として設定可能とすることで、出力設定の自由度を高めることができる。
【００７０】
以上説明したように、ユーザは、上述した手順に沿って設定作業を行うだけで、出力線ＯＵＴ１に対し、図７を用いて説明した論理式（ＡｏｒＢ）ａｎｄ（ＣｏｒＤ）で表される検査内容の検査結果を割り当てることができる。なお、本実施形態では、「ロジック１」及び「ロジック２」の設定において、それぞれ２個の画像処理ツールを選択する例について説明したが、本発明はこれに限られない。例えば、「ロジック１」又は「ロジック２」の設定において、それぞれ３個以上の画像処理ツールを選択するなど、論理演算の候補としてユーザは所望の数の画像処理ツールを選択してもよい。要するに、ユーザは、予め設定された複数の画像処理ツールの中から、論理演算の候補として所望の画像処理ツールを選択でき、また、論理演算の候補数（論理演算の構成要素の数）も自由に選択でき、ひいては、１つのロジック設定により多入力一出力の論理演算を実現できる。
【００７１】
別の言い方をすれば、本実施形態における表示装置２は、予め設定された複数の画像処理ツールの中から、論理演算の候補となる任意の数からなる特定の画像処理ツールを選択可能に表示する機能を有している。なお、複数の特定の画像処理ツールを選択可能に表示させる態様は、種々考えられる。例えば、図９に示すようにプルダウンで選択可能に表示させる以外にも、複数の画像処理ツールを各行とし、「未使用」、「使用」を各列とするマトリクス状の選択テーブルを表示してもよい。そして、この選択テーブルにおいて、例えばマトリクスの各要素にラジオボックスを設け、ユーザが各ラジオボックスを選択可能に表示してもよい。
【００７２】
また、図９〜図１１では、「位置補正」についての説明は省略したが、画像処理ツールと同様に考えることができる。すなわち、図９〜図１１に示す「位置補正」について「未使用」を「使用」に変更すると、「位置補正」が正常に終了したか否か（位置補正が正常に終了した時にＯＮする）を総合判定条件の中に含めることができる。なお、例えば、複数のワークが１個のトレイに載置されている場合、トレイによって位置補正をした後にワークが１個以上存在すればＯＫ出力したい場合がある。仮に、「位置補正」が「いずれかＯＫ」に含まれている場合、ワークが０個であってもトレイの位置補正をするためＯＫ出力となり、所望の検査結果が得られない。そこで、本実施形態に係る画像処理装置では、「位置補正」の結果は、総合判定条件として「いずれかＯＫ」が選択された場合であっても、論理演算の対象に含まれないようにしている。これにより、上述した検査についても所望の検査結果を得ることができる。
【００７３】
また、本実施形態では、「ロジック１」の設定では、自身である「ロジック１」は勿論のこと、「ロジック２」や「ロジック３」も「使用」することができないようになっている。具体的には、図９に示す設定画面において、送り頁ボタンを２回操作して３頁目を表示させたとき、「ロジック１」の右方にあるプルダウン表示がグレーアウトされ、送り頁ボタンを３回操作して４頁目を表示させたとき、「ロジック２」と「ロジック３」の右方にあるプルダウン表示がグレーアウトされ、いずれもユーザが「未使用」「使用」を選択できないようになっている（図示略）。また、「ロジック２」の設定では、「ロジック１」を用いること（「未使用」「使用」の選択）はできるものの、自身である「ロジック２」と「ロジック３」は使用することができないようになっている。具体的には、図９に示す設定画面において、送り頁ボタンを３回操作して４頁目を表示させたとき、「ロジック２」と「ロジック３」の右方にあるプルダウン表示がグレーアウトされ、ユーザが「未使用」「使用」を選択できないようになっている（図示略）。本実施形態では、「ロジックＸ」（Ｘは整数）の設定において、「ロジックＸ」は勿論のこと、「ロジック（Ｘ＋１）」や「ロジック（Ｘ＋２）」を使用することができない。すなわち、自身の番号及び自身よりも番号の大きなロジックの結果を使用しない、という制約を設けることによって、参照される側から順番に単体での論理演算結果を生成すればよいので、ロジック間の循環参照の問題を解消するためのソフトウェアの実装作業を効率化することができる。なお、図９〜図１１に示す「ロジック１」〜「ロジック３」の設定においては、「ロジック４」は表示されていない。これは、ロジック４が最も大きな番号のロジックであり、上記制約に従えば、常に使用不可だからである。また、ここでは自身よりも番号の大きなロジックの結果を使用しない、という制約を設けることとしたが、他にも例えば、自身より番号の小さなロジックの結果を使用しない、という制約を設けてもよい。
【００７４】
このように、本実施形態に係る画像処理装置では、論理演算情報（論理演算単位）であるロジックを組み合わせる際に、参照する方向を一意に定める制約を設けることで、ロジック間の循環参照の問題を容易に解消することができる。
【００７５】
さらに、図９〜図１１では特に図示していないが、プルダウン表示される項目の中に、「未使用」と「使用」に加え、第３の選択肢として「使用（反転）」が含まれている。「使用（反転）」は、指定された画像処理ツールの反転出力を行うもので、例えば、「ツール０１：輪郭」を「使用（反転）」にした場合、「ツール０１：輪郭」の判定がＮＧのときに出力がＯＮされる。このように、「使用（反転）」を必要に応じて使用することで、少ないロジック段数で多様な論理演算を組むことができ、複雑な検査設定を容易に行うことができる。なお、本実施形態では、個々の画像処理ツール及び「位置補正」について「使用（反転）」を設けることとしたが、例えば、「ロジック」全体の出力を反転するような設定を可能にしてもよい。これにより、反転設定を集約することができるので、複雑な検査設定を更に容易に行うことができる。
【００７６】
［機能構成］
図１２は、本実施形態に係る画像処理装置における機能構成を示すブロック図である。
【００７７】
図１２に示すように、本実施形態に係る画像処理装置は、「設定モード」と「検査モード」を切り換えるモード切替部６０、ワークを撮像する撮像部６１、撮像部６１により取得されたワークの画像に対して複数の画像処理ツールを実行する画像処理ツール実行部６２、画像処理ツール実行部６２の実行結果に基づいて、ワークの良否を判定する良否判定部６３、良否判定部６３による判定結果を判定信号として外部に出力する出力部６４、のそれぞれを有している。なお、モード切替部６０は、図２に示すメイン基板１３のＤＳＰ１３２やメモリ１３３等によって構成することができ、撮像部６１は、例えば、図２に示すメイン基板１３のＤＳＰ１３２やカメラモジュール１４等によって構成することができ、画像処理ツール実行部６２及び良否判定部６３は、例えば、図２に示すメイン基板１３のＦＰＧＡ１３１やＤＳＰ１３２，メモリ１３３等によって構成することができ、出力部６４は、図２に示すメイン基板１３のＤＳＰ１３２や通信基板１７等によって構成することができる。また、出力部６４から出力される判定信号は、ＯＮ／ＯＦＦといった離散信号に限らず、例えばリアルタイムイーサネット（登録商標）の通信規格（Ｅｔｈｅｒｎｅｔ（登録商標）／ＩＰやＰＲＯＦＩＮＥＴ等）に沿った出力であってもよい。要するに、判定信号には、良否判定部６３の判定結果を示す信号すべてが含まれる。
【００７８】
また、本実施形態に係る画像処理装置は、良否判定の基準となるマスター画像に対して複数の領域（例えば図５を用いて説明したウィンドウ５１，５２及び５３）を設定する領域設定部６６、複数の領域の各々に対し、複数の異なる画像処理ツール（例えば図５を用いて説明した「輪郭サーチ」や「色面積」など）のうちいずれかを対応付けて設定する画像処理ツール設定部６７、をそれぞれ有しており、これらの設定処理は、表示装置２等の表示部を介してユーザ操作に基づき行われる。特に、本実施形態では、複数の画像処理ツールの中から特定の（少なくとも二以上の）画像処理ツールを選択可能に表示し、特定の画像処理ツールの実行結果を論理演算するための演算種別（ＡＮＤ又はＯＲ）を選択可能に表示する論理演算情報表示部６５を有している（例えば図９〜図１１）。
【００７９】
また、論理演算情報表示部６５により選択された特定の画像処理ツールと演算種別を関連付けて、一の論理演算情報として設定する論理演算情報設定部６８、複数の異なる論理演算情報のうちユーザ操作に基づき選択された論理演算情報における論理演算結果を総合判定結果とする総合判定条件を設定する総合判定条件設定部６９（例えば図８（ｂ））、のそれぞれを有している。領域設定部６６、画像処理ツール設定部６７、論理演算情報設定部６８、総合判定条件設定部６９の各設定部は、例えば、図２に示すメイン基板１３のＤＳＰ１３２と表示装置２の有機的な動作によって実現される。
【００８０】
領域設定部６６、画像処理ツール設定部６７、総合判定条件設定部６９の各設定部により設定された内容（上述した検査プログラムやパラメータ等の検査データ、データ群）は、検査データ記憶部７０に記憶される。画像処理ツール実行手段６２及び良否判定部６３は、運転モード時に、検査データ記憶部７０から検査データを読み出して実行する。特に、本実施形態では、検査データ記憶部７０は、論理演算情報記憶部７１を有しており、論理演算情報記憶部７１には論理演算情報設定部６８により設定された論理演算情報が格納される。なお、検査データ記憶部７０や論理演算情報記憶部７１は、一又は複数のメモリ１３３等によって構成することができる。或いは、表示装置２内のメモリであってもよい。
【００８１】
このような機能構成からなる画像処理装置において、良否判定部６３は、論理演算情報設定部６８より設定された一の論理演算情報に基づいて、論理演算情報表示部６５を介してユーザ操作に基づき選択された特定の画像処理ツールの実行結果を、論理演算情報表示部６５を介してユーザ操作に基づき選択された演算種別で論理演算することにより、検査対象物の良否を判定する。また、論理演算情報表示部６５は、画像処理ツール設定部６７により設定された複数の画像処理ツールの中から反転出力対象となる画像処理ツールを選択可能に表示し、論理演算情報表示部６５により選択された反転出力対象となる画像処理ツールと演算種別を関連付けて設定可能になっている。そして、良否判定部６３は、反転出力対象となる画像処理ツールの実行結果の反転出力を含めて論理演算することができる。これにより、簡易な設定で論理演算の自由度を高めることができる。
【００８２】
また、本実施形態における論理演算情報記憶部７１は、論理演算情報設定部６８により設定された複数の異なる論理演算情報を記憶することができる。また、論理演算情報設定部６８は、一の論理演算情報の中に他の論理演算情報を演算種別と関連付けて設定可能である。そして、良否判定部６３は、論理演算情報表示部６５を介してユーザ操作に基づき選択された特定の画像処理ツールの実行結果と他の論理演算情報における論理演算結果とを論理演算することにより、検査対象物の良否を判定する。これにより、多段論理を簡易に構築することができ、ひいては複雑な検査内容であっても簡易に出力設定することができる。
【００８３】
特に、多段論理を組む際に、他の論理演算情報として、一の論理演算情報との間で循環参照を生じない論理演算情報のみを設定可能になっている。これにより、複数の論理演算情報の間で循環参照が生じるのを防いでいる。
【００８４】
［処理の流れ］
図１３及び図１４は、本実施形態に係る画像処理装置の運転モード時における処理の流れを示すフローチャートである。
【００８５】
図１３において、まず、撮像トリガ入力及び撮像処理が行われる（ステップＳ１，Ｓ２）。具体的には、画像処理センサ１がＰＬＣ等の外部機器から撮像トリガ信号を受信して、撮像部６１が撮像指示信号を受信すると、撮像部６１によってワークの撮像が行われ、ワークの画像が取得される。
【００８６】
次に、各画像処理ツールによる画像処理が行われ、各ツールの結果が得られる（ステップＳ３，Ｓ４）。具体的には、撮像部６１により取得されたワークの画像を用いて、画像処理ツール実行部６２が各種画像処理を実行する。例えば、「輪郭サーチ」や「色面積」などの画像処理ツールを実行する。また、複数のウィンドウについては、上述した「位置補正」も行われる。各画像処理ツールの実行結果は、検査データ記憶部７０に記憶される。
【００８７】
次に、良否判定部６３によって、ロジック結果の生成処理が行われる（ステップＳ５）。より具体的には、良否判定部６３は、変数Ｎの値を１（Ｎ＝１）にセットした後（ステップＳ５１）、ＬｏｇｉｃＮ（ロジックＮ）の演算に必要なデータをメモリ１３３から読み出して収集する（ステップＳ５２）。このとき、ＬｏｇｉｃＮの設定は、事前に（設定モード時に）論理演算情報記憶部７１に記憶されているものとする（ステップＳ５５）。良否判定部６３は、図９に示すように、「使用」が選択された「ツール０１：輪郭」の処理結果（ＯＫ又はＮＧ）と「ツール０２：色面積」の処理結果（ＯＫ又はＮＧ）と、これらを論理演算するための演算種別（ＯＲ）とを論理演算情報記憶部７１から読み出す。そして、これらを用いてＬｏｇｉｃＮの単位論理演算が行われる（ステップＳ５３）。単位論理演算は、ツールの判定がＯＫでＯＮ出力のときに“１”、ツールの判定がＮＧでＯＦＦ出力のときに“０”を割り当てて、論理和（ＯＲ）の演算を行う。すなわち、上述した２個のツールの少なくとも一方がＯＮ出力のとき、演算結果として“１”を出力し、上述した２個のツールの両方がＯＦＦ出力のとき、演算結果として“０”を出力する。単位論理演算の演算結果（“１”又は“０”）は、Ｌｏｇｉｃ結果として論理演算情報記憶部７１に記憶され（ステップＳ５４）、後の単位論理演算（ステップＳ５３）に用いられる。
【００８８】
次に、良否判定部６３は、ＮがＬｏｇｉｃ数より小さいか否かを判断する（ステップＳ５６）。図９〜図１１の例では、Ｌｏｇｉｃ数は４である（本実施形態では、設定可能な最大ロジック数を「Ｌｏｇｉｃ数」としており、図８に示すようにＬｏｇｉｃ数＝４である）。したがって、Ｎ＝１＜３であるので（ステップＳ５６：ＹＥＳ）、Ｎが１だけインクリメントされ（ステップＳ５７）、処理はステップＳ５２に移される。なお、上述したように、「Ｌｏｇｉｃ数」として、設定可能な最大ロジック数（固定値）を採用することによって、設定可能な４個のロジックのうちどのロジックが実際に使用されているかを逐一判断しなくてもよく、ソフトウェア処理の負荷軽減を図ることができる。また、ステップＳ５の処理を実現するアルゴリズムは種々考えられ、「Ｌｏｇｉｃ数」も、上述した設定可能な最大ロジック数を採用することに限定されない。要するに、設定したロジックの結果が生成されるアルゴリズムであれば、如何なるものであってもよい。
【００８９】
次に、ＬｏｇｉｃＮ（Ｌｏｇｉｃ２）の演算に必要なデータ収集が行われる（ステップＳ５２）。具体的には、良否判定部６３は、Ｌｏｇｉｃ２（ロジック２）の演算に必要なデータを論理演算情報記憶部７１から読み出して収集する。良否判定部６３は、上述した図１０に示すように、「使用」が選択された「ツール０３：輪郭」の処理結果（ＯＫ又はＮＧ）と「ツール０４：輪郭」の処理結果（ＯＫ又はＮＧ）と、これらを論理演算する演算種別（ＯＲ）とを論理演算情報記憶部７１から読み出す。そして、これらを用いてＬｏｇｉｃ２の単位論理演算が行われる（ステップＳ５３）。詳細は、上述したＬｏｇｉｃ１の単位論理演算と同様である。
【００９０】
次に、良否判定部６３は、ＮがＬｏｇｉｃ数（＝４）より小さいか否かを判断する（ステップＳ５６）。いま、Ｎ＝２であって、Ｎ＜４であるので（ステップＳ５６：ＹＥＳ）、Ｎが１だけインクリメントされ（ステップＳ５７）、処理はステップＳ５２に移される。
【００９１】
次に、ＬｏｇｉｃＮ（Ｌｏｇｉｃ３）の演算に必要なデータ収集が行われる（ステップＳ５２）。具体的には、良否判定部６３は、Ｌｏｇｉｃ３（ロジック３）の演算に必要なデータを論理演算情報記憶部７１から読み出して収集する。良否判定部６３は、上述した図１１に示すように、「使用」が選択された「ロジック１」の論理演算結果と「ロジック２」の論理演算結果とを論理演算情報記憶部７１から読み出す。そして、これらを用いてＬｏｇｉｃ３の単位論理演算が行われる（ステップＳ５３）。図１１に示す論理演算の種別は論理積（ＡＮＤ）であるため、「ロジック１」の論理演算結果と「ロジック２」の論理演算結果がいずれも“１”のときのみ、Ｌｏｇｉｃ３の論理演算結果として“１”が出力される。一方で、「ロジック１」の論理演算結果と「ロジック２」の論理演算結果がいずれかが“０”のとき、Ｌｏｇｉｃ３の論理演算結果として“０”が出力される。
【００９２】
次に、良否判定部６３は、ＮがＬｏｇｉｃ数（＝４）より小さいか否かを判断する（ステップＳ５６）。いま、Ｎ＝３であって、Ｎ＜４であるので（ステップＳ５６：ＹＥＳ）、Ｎが１だけインクリメントされ（ステップＳ５７）、処理はステップＳ５２に移される。そして、ＬｏｇｉｃＮ（Ｌｏｇｉｃ４）については、未設定であるので、ステップＳ５２及びステップＳ５３をスキップする（ステップＳ５３で単位論理演算の結果としてＯＦＦを出力してもよい）。最後に、Ｎ（＝４）は、Ｌｏｇｉｃ数４より小さくなく、Ｎ＜４を満たさないので（ステップＳ５６：ＮＯ）、処理はステップＳ６の総合判定処理へ移される（ステップＳ６）。総合判定処理の詳細は、図１４を用いて説明する。総合判定処理が終了すると、出力部６４によって、総合判定結果がＰＬＣ等の外部機器に出力され（ステップＳ７）、１個のワークに対する外観検査（ＯＫ品かＮＧ品かの検査）が終了する。なお、総合判定結果は、表示装置２の画面上にＯＫ、ＮＧと表示されるが（図３（ａ）参照）、この表示態様はユーザが自由にカスタマイズすることができる。
【００９３】
総合判定処理について、図１４を用いて詳細に説明する。まず、事前の設定として、設定モード時において総合判定条件設定部６９により総合判定条件が設定され、これが論理演算情報記憶部７１に記憶されているものとする。本実施形態では、総合判定条件としてロジック３が設定されている。図１４において、良否判定部６３は、運転モード時において、総合判定条件として「Ｌｏｇｉｃ結果」「すべてＯＫ」「いずれかＯＫ」のうちのいずれが設定されているかを判断する。ここでは、「Ｌｏｇｉｃ結果」が設定されていると判定し（ステップＳ１１：Ｌｏｇｉｃ結果）、ロジック３の結果を論理演算情報記憶部７１から読み出し（ステップＳ１２）、これを総合判定結果とする（ステップＳ１６）。
【００９４】
また、図８を用いて上述したように、本実施形態では、総合判定条件として「すべてＯＫ」或いは「いずれかＯＫ」を設定することが可能である。設定モード時において総合判定条件設定部６９により「すべてＯＫ」が設定されている場合には、良否判定部６３は、運転モード時において、総合判定条件が「すべてＯＫ」であると判断し（ステップＳ１１：すべてＯＫ）、全ての画像処理ツールの処理結果を用いたＡＮＤ判定処理を行う（ステップＳ１３）。すなわち、全ての画像処理ツールでＯＫの時に出力をＯＮするＡＮＤ判定処理を行って、これを総合判定結果とする（ステップＳ１５）。
【００９５】
一方で、設定モード時において総合判定条件設定部６９により「いずれかＯＫ」が設定されている場合には、良否判定部６３は、運転モード時において、総合判定条件が「いずれかＯＫ」であると判断し（ステップＳ１１：いずれかＯＫ）、「位置補正」を除く全ての画像処理ツールの処理結果を用いたＯＲ判定処理を行う（ステップＳ１４）。すなわち、全ての画像処理ツールのうちいずれか一つでもＯＫの時に出力をＯＮするＯＲ判定処理を行って、これを総合判定結果とする（ステップＳ１５）。
【００９６】
以上説明したように、本実施形態に係る画像処理装置によれば、設定モード時にユーザが簡易な設定を行うだけで（図８〜図１１参照）、例えば図７に示したような複雑な検査を行うための出力設定を簡易に設定することができる。特に、プログラミング作業を必要としないので、プログラミング知識が乏しいユーザであっても、出力設定を簡易に設定することができる。なお、図１３及び図１４を用いて説明した各処理を実行するための検査プログラムは、画像処理装置が実行可能なコンピュータプログラムとして、検査データ記憶部７０に記憶される。また、コンピュータプログラムは、ＣＤやＵＳＢなどの持ち運び可能な記録媒体に格納することもできる。
【００９７】
また、図８〜図１１に示されるように、本実施形態に係る画像処理装置では、各単位論理演算に入力する数（入力設定数）を自由に設定することができる。すなわち、予め複数の画像処理ツールを設定しておけば、設定された複数の画像処理ツールの中から論理演算の候補を幾つ選んできてもよい。また、ロジックの段数についても自由に設定することができる（ロジック１〜４のうち幾つ使用してもよい）。したがって、本実施形態に係る画像処理装置は、入力設定数及び段数に関して設定自由度が高く、プログラミング知識に乏しいユーザに対し、簡易に検査の自由度を高めることができる。
【００９８】
［変形例］
なお、本実施形態では、論理演算の段数を４個に制限することとしたが（図８（ａ）参照）、必要に応じて５個以上にしてもよい。また、図９及び図１０では、論理演算の構成要素（元）として画像処理ツールのみを選択し、図１１では、論理演算の構成要素としてロジックのみを選択したが、一つのロジック設定において、画像処理ツールとロジックを混在させることも勿論可能である。
【００９９】
例えば、図７の検査例において、（ＡｏｒＢｏｒＣ）ａｎｄＤという論理式で表現される検査を行う場合には、ロジック１の設定において、ウィンドウＡ〜Ｃに対応する画像処理ツールを選択し（「未使用」から「使用」に変更）、論理演算の演算種別として「ＯＲ」を設定する。そして、ロジック２の設定において、ウィンドウＤに対応する画像処理ツールを選択するとともに、ロジック１も選択し（いずれも「未使用」から「使用」に変更）、論理演算の演算種別として「ＡＮＤ」を設定する。これにより、上述した論理式で表現される検査を行うことができる。このように、プログラミング知識が乏しいユーザであっても、複雑な検査を行うための出力設定を簡易に設定することができる。
【０１００】
また、本実施形態では、各ロジック設定における論理演算の種別として「ＡＮＤ」と「ＯＲ」のみを考えたが、他にも例えば「ＮＡＮＤ」や「ＥｘｃｌｕｓｉｖｅＯＲ」など、論理演算の演算種別は如何なるものであってもよい。また、図９に示すように、ユーザは、論理演算の候補として、特定の画像処理ツールを２個以上選択することが好ましいが、本発明はこれに限定されない。すなわち、特定の画像処理ツールを１個だけ選択することを排除する趣旨ではない。この場合、論理演算の種別としてＡＮＤを選択してもＯＲを選択しても、同じ出力とすればよい（その１個の画像処理ツールがＯＫならＯＫ、ＮＧならＮＧとなる）。
【０１０１】
また、図１３のステップＳ５で説明したように、本実施形態におけるＬｏｇｉｃ結果生成処理では、ロジック設定の識別番号が小さいものから順に単位論理演算を行っている。また、上述したように、自身よりも番号の大きなロジックの結果を設定できないようになっている。これにより、循環参照の問題を解消するとともに、ソフトウェアの実装作業を効率化している。ただし、本発明は、このような処理内容に限定されない。要するに、論理演算情報記憶部７１に記憶された複数のロジックのうち、互いに循環参照を生じないロジックのみを選択可能に構成されていれば、如何なる処理内容であっても構わない。
【符号の説明】
【０１０２】
１    画像処理センサ
２    表示装置
３    接続ケーブル
５    ワーク
６    生産ライン
１３  メイン基板
１４  カメラモジュール
１５  照明基板
１６  コネクタ基板
１７  通信基板
１８  電源基板
６１  撮像部
６２  画像処理ツール実行部
６３  良否判定部
６４  出力部
６５  論理演算情報表示部
６６  領域設定部
６７  画像処理ツール設定部
６８  論理演算情報設定部
６９  総合判定条件設定部
７０  検査データ記憶部
７１  論理演算情報記憶部
【図１】
2014109479.tif 000003
【図２】
2014109479.tif 000004
【図３】
2014109479.tif 000005
【図４】
2014109479.tif 000006
【図５】
2014109479.tif 000007
【図６】
2014109479.tif 000008
【図７】
2014109479.tif 000009
【図８】
2014109479.tif 000010
【図９】
2014109479.tif 000011
【図１０】
2014109479.tif 000012
【図１１】
2014109479.tif 000013
【図１２】
2014109479.tif 000014
【図１３】
2014109479.tif 000015
【図１４】
2014109479.tif 000016