以下、本発明の実施形態を図面に基づいて説明する。ただし、以下に示す実施形態は、本発明の技術思想を具体化するための例示であって、本発明は以下のものに特定されない。また、本明細書は特許請求の範囲に示される部材を、実施形態の部材に特定するものでは決してない。特に実施形態に記載されている構成部品の寸法、材質、形状、その相対的配置等は特に特定的な記載がない限りは、本発明の範囲をそれのみに限定する趣旨ではなく、単なる説明例にすぎない。なお、各図面が示す部材の大きさや位置関係等は、説明を明確にするため誇張していることがある。さらに以下の説明において、同一の名称、符号については同一若しくは同質の部材を示しており、詳細説明を適宜省略する。さらに、本発明を構成する各要素は、複数の要素を同一の部材で構成して一の部材で複数の要素を兼用する態様としてもよいし、逆に一の部材の機能を複数の部材で分担して実現することもできる。
本発明の実施形態1に係る画像処理センサ1を図1に、実施形態2に係る画像処理センサ11を図2に、それぞれ示す。図1はセンサ部2とコントローラ部3の分離型の画像処理センサ1であり、図2はセンサ部2とコントローラ部3が一体となった一体型の画像処理センサ11である。センサ部2はカメラ211や照明212などの撮像部21を備えており、一方コントローラ部3は、撮像部21で撮像された検査対象物であるワークWKの画像に対して画像処理を行う部材である。このようなセンサ部2とコントローラ部3は、それぞれ異なるケーシング(筐体)に収納したり、あるいは共通のケーシングに収納することもできる。
(ハードウエアブロック図)
このような画像処理センサ1、11のブロック図を図3に示す。この図に示すように画像処理センサ1、11のハードウエア構成は、主に、表示基板31と、接続してある各部に電力を供給するための電源基板32(24)と、メイン基板33(25)と、照明基板22と、撮像基板23と、の5枚の基板で構成されている。図3において、破線は、センサ部2のブロックとコントローラ部3のブロックとを機能的に区分けして示すための目印であり、図中右側がセンサ部2のブロック、図中左側がコントローラ部3のブロックを示している。分離型の画像処理センサ1の場合、センサ部2のケーシングには、照明基板22と、撮像基板23と、LEDドライバ241を含む電源基板24と、DSP251及びメモリ252を含むメイン基板25とが収納され、コントローラ部3のケーシングには、表示基板31と、電源基板32と、メイン基板33とが収納される。
撮像部21におけるカメラ211の動作は、撮像基板23のCMOS231を介してメイン基板33(25)が制御する。また、撮像部21における照明212の動作は、照明基板22のLED221及び電源基板32(24)のLEDドライバ241を介してメイン基板33(25)が制御する。例えば、メイン基板33(25)からのオートフォーカス動作を制御する制御信号に応じて撮像部21のモータ(図示していない。)を駆動させることにより、焦点制御部(図示していない。)が前後動し、オートフォーカス動作の制御を行う。そして、メイン基板33(25)からの撮像指示信号に応じてワークWKを撮像する。
撮像基板23は、CMOS231を備えており、CMOS231で撮像された画像は、例えばDSP251にてフィルタ処理が実行された後、画像処理後の画像データが出力される。なお、分離型の画像処理センサ1の場合、前述においては、DSP251をセンサ部2側に設けたが、これに限られず、例えば、DSP251を、メイン基板33、すなわち、コントローラ部3側に設けてもよい。この場合、演算処理負荷の大きい画像変換処理等はセンサ部2では実行されないので、センサ部2内に備える半導体装置を小型化することができる、あるいは、放熱を考慮した配置をする必要性が相対的に少なくなるので、センサ部2を小型化することができる。
メイン基板33(25)は、DSP251及びMCU331が接続してある各部の動作を制御する。DSP251は、基本的にワークWKを撮像して画像処理するところまでを行う。MCU331は、DSP251からの画像処理の結果を受けて、ワークWKを検出したか否かを示すワークWKの有無を示すON/OFF信号や、ワークWKの良否を示すOK/NG信号(判定信号)を外部に対して出力し、あるいは、表示基板31のOLED311に表示する。
DSP251は、照明基板22に対しては、LED221の点灯/消灯を制御する制御信号を、電源基板32(24)のLEDドライバ241へ送信する。LEDドライバ241は、DSP251からの制御信号に応じて、例えばLED221の点灯/消灯、光量等を調整する。また、DSP251は、撮像部21のモータ(図示していない。)に対しては、メイン基板33(25)のモータドライバ(図示していない。)を介してオートフォーカス動作を制御する制御信号を、撮像基板23に対しては、撮像指示信号等を、それぞれ送信する。
メモリ252は、DSP251に紐付く形で、撮像した画像を保存するため、あるいは、各種設定などを保存するなどのため、用途に応じて、不揮発性メモリ及び揮発性メモリの2種類設けられている。
MCU331は、主として、外部出力及び表示を制御する。OLED311には、例えば、閾値と比較するための変数である一致度(詳細は後述)などの画像処理の結果の他、設定に供する静止画像(詳細は後述)を表示する。また、MCU331は、電源基板32(24)の外部通信321を介して、画像処理の結果として、ワークWKを検出したか否かを示すワークWKの有無を示すON/OFF信号や、ワークWKの良否を示すOK/NG信号(判定信号)を出力する。ON/OFF信号やOK/NG信号は、電源基板32(24)の外部通信321を介して、コントローラ部3に備えるI/Oコネクタ(図示していない。)から、それぞれI/Oケーブル(図示していない。)を経由して外部のPLC等へ出力される。
(照明212)
照明212は、ワークWKの画像を撮像部21で撮像する際に照明光を照射するための部材である。照明光の光源としては、LEDや有機EL、白熱球やハロゲンランプ等が利用できる。照明光は、光学画像としてモノクロ画像を撮像する場合、色を問わない。例えばラインの搬送速度が速い場合は、一枚の光学画像を撮像するためにかけることのできる露光時間も短くなるため、短時間で十分な明るさを確保できるよう、光量の大きい光源とすることが好ましい。このような観点から、光源が安価で、光量を稼ぎ易い赤色等が好適に利用できる。なおカラーの光学画像を撮像する場合は、白色光とする。すなわち、判別対象の色や材質に応じて、照明色も明るさ条件としてパラメータとしてもよい。
(一体型の画像処理センサ11の構造)
図4は、一体型の画像処理センサ11の内部構成を示す構造図であって、図4Aは、メイン基板25が取り付けられた状態を示す図であり、図4Bは、メイン基板25が取り外され、光学ベース403が露出した状態を示している。これらの図に示すように、リアケース404は、断熱ケース402に対して4本の金属ネジで固定されている。また断熱ケース402は、フロントケース401に対して4本の金属ネジで固定されている。光学ベース403はフロントケース401に固定されている。
フロントケース401及びリアケース404は、例えば亜鉛ダイカストで構成され、フロントケース401は、筺体にコネクタ48を備える。光学ベース403は、照明用リフレクタ及びレンズ鏡筒が一体となったパーツであり、照明基板22と撮像基板23とが固定される。断熱ケース402は、例えば樹脂からなり、断面形状(断面積)/材質/高さを調整することにより、フロント/リアの温度差を設定できる。断熱ケース402は、断熱のため、フロント/リアに対して、それぞれ個別に固定されている(共締めしていない)。
(一体型の画像処理センサ11のケーシング4)
一体型の画像処理センサ11のケーシング4は、上下面、左右面ならびに前後の面から構成される六面体形状で構成されている。このうち、上面を第一主面とし、上面と対向する下面を第二主面としている。図5A及び図5Bに示すように、下面側の第二主面には、カメラ211と照明212を設けている。一方、上面側の第一主面には、表示画面43(特許請求の範囲における「表示部」の一例に対応する。)と操作ボタン4Cを設けている。このように、下面側の第二主面を撮像面4bとし、上面側の第一主面を表示面4aとすることで、撮像面4bで撮像した画像を、表示面4aで表示させて、画像処理センサ11の配置姿勢とレイアウトを合致させることができる。
カメラ211は撮像面4bに対して平行に配置されており、撮像素子の光軸が撮像面4bとほぼ直交するように構成される。これにより、画像処理センサ11の下方の撮像位置にあるワークWKの正射画像を撮像できる。一方、照明212は、投光面を撮像面4bに対して若干傾斜させている。照明光の光軸を撮像素子の光軸に対して斜めにすることで、自然な陰影で画像撮像できる。なお図5Aの例では、照明光の光源を一としているが、これを複数設けることもできる。例えば撮像部21を囲むように撮像面の四隅に照明光源を設ける。これにより、影の少ない画像を得ることが可能となる。
(ケーシング4の表示面4a)
また画像処理センサ11のケーシング4の表示面4aを図6の模式図に示す。この図に示すように、このケーシング4の表示面4aは、判定結果を表示するための判定結果表示灯41と、画像を登録するためのSETキー42と、画像処理の結果や設定指示などを表示するための表示画面43と、閾値の調整や画像を拡大・縮小するための上下キー44と、設定をやり直すためのBACKキー45と、画面の表示レイアウトを変更したり、詳細な設定の変更を行うためのMODEキー46と、判定出力の状態を表示するための出力状態表示灯47とを備えている。
(カバー部3B)
また、表示面4aにはカバー部3Bを設けてもよい。カバー部3Bを設けることで、操作ボタン4Cに誤ってユーザの手などが触れて、一致度閾値の設定等が意図せずに変更される事態を回避できる。図1の例では、表示画面43を覆うカバー部3Bを開閉自在に設けている。この例では、表示面4aの長手方向の一端に、ピボット式に旋回自在にカバー部3Bを連結して開閉可能としている。またカバー部3Bは透光性を有する部材で構成することで、カバー部3Bを閉じた状態でも表示画面43を視認できる。カバー部3Bは、樹脂製等とすることができる。
また、カバー部を設けない構成としてもよい。図2では、カバー部を設けない画像処理センサ11の例を示している。カバー部を設けない場合等に備えて、操作ボタン4Cにキーロック機能を持たせてもよい。キーロック機能を働かせることで、操作ボタン4Cに触れても反応しなくなり、意図しない設定の変更などを回避できる。操作を行う場合は、特定の解除操作を行い、キーロック機能を解除する。このような解除操作は、例えば特定のキーの長押し等で行うことができる。
(判定結果表示灯41)
判定結果表示灯41は、例えば緑又は赤に点灯することで、ワークWKが良品であるか、あるいは、不良品であるかを点灯色の違いで表示する部材である。判定結果表示灯41は、運転モードにおいて判定した結果を点灯で示す。例えば良品の検出であれば青色に点灯させ、不良品の検出であれば赤色に表示させる。このような出力表示灯には、LED等の発光体が利用できる。また発光色を変化可能とすることが好ましい。例えば赤色LEDと青色LEDを設けたり、色を可変としたマルチカラーのLEDが利用できる。
(SETキー42)
SETキー42は、表示画像を登録画像として登録するための部材である。設定モードにて、このボタンを押下すると表示画像が登録される。また、登録画像の設定の際に、SETキー42を押下することで、画面を遷移させることができる。
(表示画面43)
表示画面43は、撮像部21により撮像されたワークWKの画像を表示するための部材である。表示画面43には、有機EL(OLED)の他、液晶(LCD)等が利用できる。表示画面43は、7セグメントディスプレイが採用される光電センサとは異なり、登録画像やライブ画像LVI、第一登録誘導情報等の静止画像を表示するため、また小型化のニーズがあることから、高解像であることが好ましく、例えば有機ELを採用する。
(上下キー44)
上下キー44は、閾値の調整や画像を拡大・縮小するための部材である。良品画像OKIなどの画像の登録が完了した後、運転モードでは、SETキー42が押下されて登録画面が遷移する度にその登録画面の一致度と共に閾値が表示される。上下キー44は、この閾値を手動で増減させることができる。また、上下キー44は、良品画像OKIなどの画像を登録する設定モードでは、画像の拡大又は縮小を行う機能も兼ねている。
(BACKキー45)
BACKキー45は、設定をやり直すための部材である。良品画像OKIなどの画像を登録する設定モードでは、所望する表示画像でなくても、SETキー42を押下することで、その表示画像が登録され、次の登録画像の設定が促される。このような場合に、所望しなかった表示画像の登録に戻って再度登録をし直すことができる。
(MODEキー46)
MODEキー46は、表示画面43の表示レイアウトを変更するための部材である。またMODEキー46は、詳細設定モードに切り替えることもできる。運転モードでは、MODEキー46を押下することで、表示画像が切り替わり、長押しすることで、詳細設定モードに切り替わる。
(出力状態表示灯47)
出力状態表示灯47は、判定出力の状態を表示するための部材であり、LED等が利用できる。出力状態表示灯47は、判定結果を表示するのではなく、画像処理センサ1、11がONまたはOFFであるかを示す出力状態を表示する。なお、前述の操作ボタン4Cや判定結果表示灯41、出力状態表示灯47は、物理的なボタンやランプで構成する他、ディスプレイ上で仮想的に構成することもできる。例えば、表示面4aをタッチパネルで構成し、表示画面43や操作ボタン4C、判定結果表示灯41、出力状態表示灯47を、表示面4aに画像で表示させて仮想的なボタンやランプとして機能させることもできる。
(コネクタ48)
またケーシング4の六面体形状を構成する面の内、正面又は背面のいずれか一方に、ケーブルを接続するコネクタ48を配置している。図5Aや図5B等の例では、背面側(図において右側)に円筒状のコネクタ48を設けている。なお、図1に示すように、センサ部2と分離型の画像処理センサ1の場合、正面側に、センサ部2を接続するためのセンサ部側コネクタ3Aを設けている。
(機能ブロック図)
さらに、画像処理センサ1、11の機能面から捉えた詳細なブロック図を図7に示す。この図に示すように画像処理センサ1、11は、ユーザからの操作指示を受け付け、この操作指示を主制御部61に伝えるための操作部51と、画像を撮像し、撮像した画像を主制御部61に受け渡すための撮像部52と、現在のセンサ状態の表示や、ユーザへの指示内容を表示するための表示部53と、画像や設定を記憶するための画像/設定記憶部54と、登録条件パターンを変化させて、最適な登録条件を割り出す調整を行うための条件割当部55と、画像を基に画像処理登録を行い、対象画像の評価が行える状態にするための設定画像処理部56と、対象画像の評価を行い、一致度を算出するための運転画像処理部57と、操作部51及び撮像部52からの情報入力を基に、画像/設定記憶部54、条件割当部55、設定画像処理部56、運転画像処理部57を制御し、表示部53へ表示を行うための設定管理部58とを備えている。各ブロックの役割について以下説明する。
(操作部51)
操作部51はユーザからの操作指示を受け付け、この操作指示を主制御部61に伝える部材である。具体的には操作部51は少なくともSETキー42、上下キー44、MODEキー46、BACKキー45、タッチパネルを含み、例えばSETキー42のボタン操作によって、動作状態すなわち表示画面43の表示内容に応じて、対応する各種の操作指示を、主制御部61に指示する。例えば後述する図11に示す第一登録画面においては、操作部51に含まれるSETキー42を押下することで、この時点で画像表示領域PDで表示されるライブ画像LVIを良品画像OKIとして登録する良品画像OKI登録指示が与えられる。また図33に示す第二登録画面においては、SETキー42を押下することで、画像表示領域PDで表示されるライブ画像LVIを背景画像BGIとして登録する背景画像BGI登録指示が与えられる。
さらに操作部51は、複数の操作指示を与えることもできる。例えば図11の第一登録画面において、SETキー42を押下すると、前述した良品画像OKIを登録する良品画像OKI登録指示に加えて、表示画面43の表示を第一登録画面から第二登録画面に遷移させる画面遷移指示を主制御部61に指示する。このような複数の操作指示の割り当てを操作部51に含まれるSETキー42に行うことで、ユーザの操作性が向上される。すなわち、SETキー42の押下という操作部の一動作で、複数の動作を実行させることにより、ユーザは登録画面の切り替え等を意識することなく、登録作業をスムーズに行える利点が得られる。
操作部51において、ユーザからの操作は、より具体的には、良品画像設定部51a、不良品画像設定部51b、背景画像設定部51cが担い、設定管理部58が、登録しようとする画像の個数及び順番から、その設定の際に表示されるライブ画像LVIを、良品画像OKI、不良品画像NGI、背景画像BGIのいずれかと対応付けて登録する。
(良品画像設定部51a)
良品画像設定部51aは、ユーザからの良品画像OKIを登録するための操作指示を受け付け、この操作指示を主制御部61に伝える部材である。設定管理部58の誘導表示制御部58aは、操作指示表示部53fが、画像/設定記憶部54の登録識別指示情報記憶部54hから読み出した良品画像OKI登録指示を表示画面43に表示し、同時に、ライブ画像表示部53aが、画像取得部52で撮像されたライブ画像LVIを繰り返し更新しながら表示画面43に表示する。良品画像設定部51aは、この状況下で、SETキー42が押下されると、設定管理部58の画像アクセス部58cにこの操作指示を伝える。画像アクセス部58cは、この操作指示に基づいて、該押下された際のライブ画像LVIを良品画像OKIとして画像/設定記憶部54の良品画像記憶部541aに保存する。
(不良品画像設定部51b)
不良品画像設定部51bは、ユーザからの不良品画像NGIを登録するための操作指示を受け付け、この操作指示を主制御部61に伝える部材である。設定管理部58の誘導表示制御部58aは、操作指示表示部53fが、画像/設定記憶部54の登録識別指示情報記憶部54hから読み出した不良品画像NGI登録指示を表示画面43に表示し、同時に、ライブ画像表示部53aが、画像取得部52で撮像されたライブ画像LVIを繰り返し更新しながら表示画面43に表示する。不良品画像設定部51bは、この状況下で、SETキー42が押下されると、設定管理部58の画像アクセス部58cにこの操作指示を伝える。画像アクセス部58cは、この操作指示に基づいて、該押下された際のライブ画像LVIを不良品画像NGIとして画像/設定記憶部54の不良品画像記憶部542aに保存する。
この不良品画像NGIの設定の際には、表示部53の静止画像表示部53bが、設定管理部58の画像アクセス部58cを介して、画像/設定記憶部54の良品画像記憶部541aに保存された良品画像OKIを表示画面43に表示する。これにより、ユーザは、不良品画像NGIの設定の際に、良品画像OKIと対比しながら不良品画像NGIを設定することができる。
(背景画像設定部51c)
背景画像設定部51cは、ユーザからの背景画像BGIを登録するための操作指示を受け付け、この操作指示を主制御部61に伝える部材である。設定管理部58の誘導表示制御部58aは、操作指示表示部53fが、画像/設定記憶部54の登録識別指示情報記憶部54hから読み出した背景画像BGI登録指示を表示画面43に表示する。背景画像設定部51cは、この状況下で、SETキー42が押下されると、設定管理部58の画像アクセス部58cにこの操作指示を伝える。画像アクセス部58cは、この操作指示に基づいて、該押下された際のライブ画像LVIを背景画像BGIとして画像/設定記憶部54の背景画像記憶部543aに保存する。
(登録モード切替部51k)
登録モード切替部51kは、後述する画面遷移部58bにより第一登録画面、第二登録画面、及び第三登録画面の間で状態を遷移させる3点ティーチングモードと、画面遷移部58bにより第一登録画面及び第三登録画面の間で状態を遷移させる2点ティーチングモードとを切り替える選択をするための部材である。なお、登録モード切替部51kにて、例えば一の画像のみを取得して、その対象物の存否を判別する一点ティーチングモードに切替可能になっていてもよい。後述するように、例えばSETキー42の短押しした場合、図72Bに示すように、表示画面43の全面を使用して、2点のティーチングの設定モードを起動するためのプログレスバーが表示され、2点のティーチングの設定モードに切り替わる。また、例えばSETキー42を長押しした場合、図72Cに示すように、表示画面43の全面を使用して、3点のティーチングの設定モードを起動するためのプログレスバーが表示され、3点のティーチングの設定モードに切り替わる。
(画面表示切替部51f)
画面表示切替部51fは、第一の表示形式による画面表示と第二の表示形式による画面表示とを切り替えるための部材である。表示制御部58fは、表示部53において、画面表示切替部51fによって切り替えられた第一の表示形式または第二の表示形式にて種々の表示を行う。なお、画面表示切替部51fが切り替え対象とする画面表示は、第一の表示形式、第二の表示形式の他、例えば第三〜第五の表示形式でもよく、また、これらに限定されることもない。図12Aは、ティーチングが終了後の運転時に、予め設定されている標準の状態で表示される画面表示である。
(第一の表示形式:ライブ画像LVI及び一致度並びに閾値)
第一の表示形式は、例えば図12Bに示すように、表示画面43において、画像を表示させるための画像表示領域PD(Picture Display Area)にライブ画像LVI(特許請求の範囲における「入力画像」の一例に対応する。)と、説明を表示させるための説明表示領域ED(Explanation Display Area)に、閾値算出部56cにより算出された閾値の数値表示である閾値4314a、及び、差分画像やエッジなどのパターンモデルに対するライブ画像LVIの一致度の数値表示である一致度4313aとを表示する表示形式である。このように、ワークWKの良否判定を行う運転モードにおける表示画面である運転画面にて、この第一の表示形式でライブ画像LVI、閾値4314a、及び、一致度4313aが表示されることにより、ライブ画像LVI及び閾値との対比において、ワークWKの良品画像OKIとの一致度が適切か否かの見当を付けることができる。
(第二の表示形式:最大/最小一致度及び一致度並びに閾値)
第二の表示形式は、例えば図12Cに示すように、表示画面43において、閾値算出部56cにより算出された閾値の数値表示である閾値4314a、及び、差分画像やエッジなどのパターンモデルに対するライブ画像LVIの一致度の数値表示である一致度4313aと、運転中の過去最大の一致度の数値表示である最大一致度4319aと、運転中の過去最小の一致度の数値表示である最小一致度4320aとを表示する表示形式である。第二の表示形式では、図13に示すように、例えば、ユーザの操作によって、あるいは、所定時間(例えば数秒)毎に自動で、最大一致度4319aと最小一致度4320aとを交互に切り替えて表示できるようにしてもよい。本明細書においては、最大/最小一致度を含む後述するON時ピーク最大値などの一致度の統計値の全般を一致度統計値と定義する。
図14は、最大/最小一致度について説明するための、一致度とサンプリング期間との関係性を示す図である。サンプリング期間を例えば3msとすると、一致度は、3ms毎に、後述するように画像取得部52にて撮像され、一致度算出部57cにて算出される。したがって、一致度は、この図においては折れ線で表示されているが、実際には3ms毎に更新される不連続な値をとる。ここで、一致度が波形となるのは、ワークWKが例えば等速で流れている場合、ワークWKが撮像視野に入り始めると同時に一致度が高くなり始め、ワークWKが撮像視野に完全に入ったところで一致度が最も高くなり、ワークWKが撮像視野から外れていくと一致度が低くなっていくことに起因する。この図に示すように、一致度の過去最大値は、3ms毎に更新される一致度が過去最大値を上回れば、過去最大値は、該一致度の値に変わる。同様に、一致度の過去最小値は、3ms毎に更新される一致度が過去最小値を下回れば、過去最小値は、この時の一致度の値に変わる。
良否判定を高精度に行うためには、一致度の最大値と最小値の中間の値を閾値に設定することが望ましい。例えば、閾値が600で、一致度の最大値及び最小値がそれぞれ909及び222であったとした場合、最大値と最小値との中間値である565.5よりも閾値が大きな値となっており、若干余裕を持って良判定が行われていないことが分かる。このように、運転画面にて、この第二の表示形式で閾値4314a、一致度4313a、最大一致度4319a、最小一致度4320aが表示されることにより、運転中のワークWKの良品画像OKIとの一致度を確認しながら、閾値が適切か否かの見当を付けることができる。
以上説明したように、第一の表示形式からは、(1)ユーザは、ライブ画像LVI及び閾値との対比において、ワークWKの良品画像OKIとの一致度が適切か否かの見当を付けることができ、第二の表示形式からは、(2)ユーザは、運転中のワークWKの良品画像OKIとの一致度を確認しながら、閾値が適切か否かの見当を付けることができる。加えて、本実施の形態においては、画面表示切替部51fにて第一の表示形式と第二の表示形式とを切り替え可能とすることで、(3)ユーザは、運転中に算出される一致度や運転前に設定した閾値を確認しながら、運転し始めてからの一致度のバラツキ具合が分かり、再設定や調整の要否を判断することができる。
(第三の表示形式:拡大表示した一致度及び閾値)
第三の表示形式は、例えば図12Aに示すように、表示画面43において、差分画像やエッジなどのパターンモデルに対するライブ画像LVIの一致度の数値表示である一致度4313aの数字のサイズを、閾値算出部56cにより算出された閾値の数値表示である閾値4314aの数字のサイズより大きく表示する表示形式である。これにより、運転時に、情報をシンプルかつ明瞭に表示させることができる。図12Aにおいて、右上の大きな表示が現在撮像しているライブ画像LVIの一致度4313aを示している。また同図における右下の表示が閾値4314aを示している。この閾値4314aの右側に、閾値を増減させるための上下表示4315aがあり、運転画面にてこの上下表示4315aを押下することで閾値を増減させることができる。
(第四の表示形式:ON時ピーク)
第四の表示形式は、例えば図12Dに示すように、表示画面43において、閾値算出部56cにより算出された閾値を超えた一致度の中での過去最大値(以下、「ON時ピーク最大値」という。)の数値表示であるON時ピーク最大値4321aと、閾値を超えた一致度の中での過去最小値(以下、「ON時ピーク最小値」という。)の数値表示であるON時ピーク最小値4322aとを表示する表示形式である。この第四の表示形式による表示は、この他の表示形式、例えば第一の表示形式による表示や第二の表示形式による表示とも切り替えることができる。なお第四の表示形式では、ON時ピーク最大値4321aとON時ピーク最小値4322aとを交互に切り替えて表示できるようにしてもよい。
図15は、ON時ピーク最大値などの一致度統計値について説明するための、一致度とサンプリング期間との関係性を示す図である。この図において、一致度が閾値を上回る値をとる時は良品と判定するON時であり、下回る値をとる時は良品と判定しないOFF時である。まず(1)〜(3)のサンプリング期間のうち(1)のON時に着目して、(1)のサンプリング期間の開始時の一致度は閾値を超えているため、サンプリングの開始時には良品と判定されるが、最大値は(1)のサンプリングが終了するまでは、そのサンプリング期間における一致度の最大値(ON時ピーク最大値)は確定していないため、(1)のサンプリング期間の終了時に、(1)の(C)設定閾値に紐づいたON時ピーク値が確定する。したがって、(1)のサンプリング期間の終了時すなわちOFFに切り替わる時からON時ピーク最大値4321aが表示されるようになる。なお、この時点では、比較する一致度の過去最大値がないため、ON時ピーク最大値4321aを表示しないという態様もあり得る。ON時ピーク最小値も同様に、(1)のサンプリング期間の終了時に、(1)の設定閾値に紐づいたON時ピーク最小値が確定する。この時点では、比較する一致度の過去最小値がないため、ON時ピーク最小値は、ON時ピーク最大値と同値になる。
次に(2)のON時でも同様に、(2)のサンプリング期間における(C)設定閾値に紐づいたON時ピーク値は、(2)のサンプリング期間の終了時すなわちOFFに切り替わる時に確定する。図15に示すように、(1)のサンプリング期間における(C)設定閾値に紐づいたON時ピーク値は、(2)の(C)設定閾値に紐づいたON時ピーク値よりも大きいので、(1)の(C)設定閾値に紐づいたON時ピーク値がそのままON時ピーク最大値として維持される。一方、(2)のサンプリング期間における(C)設定閾値に紐づいたON時ピーク値の方が、(1)の(C)設定閾値に紐づいたON時ピーク値よりも小さいので、(2)のサンプリング期間の終了時に、(2)のサンプリング期間における(C)設定閾値に紐づいたON時ピーク値がON時ピーク最小値として確定する。
図15に示すように、サンプリング期間の(3)のON時でも、(3)のサンプリング期間における(C)設定閾値に紐づいたON時ピーク値は、(3)のサンプリング期間の終了時すなわちOFFに切り替わる時に確定する。(3)のサンプリング期間における(C)設定閾値に紐づいたON時ピーク値は、(2)のサンプリング期間の終了時のON時ピーク最大値よりも大きいので、ON時ピーク最大値は、(3)のサンプリング期間の終了時に、(3)の(C)設定閾値に紐づいたON時ピーク値に更新される。一方、図15に示すように、(3)のサンプリング期間における(C)設定閾値に紐づいたON時ピーク値は、(2)のサンプリング期間の終了時のON時ピーク最小値よりも小さいので、(2)のサンプリング期間の終了時のON時ピーク最小値がそのままON時ピーク最小値として維持される。
(OFF時ボトム)
ここまでは第四の表示形式におけるON時ピークについて詳述してきたが、ON時ピークに対して、表示画面43において、閾値算出部56cにより算出された閾値を下回る一致度の中での過去最大値(以下、「OFF時ボトム最大値」という。)と、閾値を下回る一致度の中での過去最小値(以下、「OFF時ボトム最小値」という。)とを表示することもできる。図15に示すように、OFF時ボトム最大値及びOFF時ボトム最小値は、(1)〜(3)のサンプリング期間において、(F)閾値に紐づいたOFF時ボトム値を記憶し、(1)〜(3)のサンプリング期間の開始時に統計的に最大・最小となる場合、その時の最大値・最小値に更新される。
この第四の表示形式の実施形態では、ON時ピーク最大値4321aとON時ピーク最小値4322aとを表示するが、この変形例として、ON時ピーク最小値4322aとOFF時ボトム最大値とを表示するようにしてもよい。ON時ピーク最小値及びOFF時ボトム最大値は、運転し始めてからの一致度と閾値との関係で、ギリギリ閾値を超えたのか、それとも余裕を持って閾値を超えたのかを示す一致度統計値であり、ON時ピーク最小値が閾値と近ければ良品と算出されるべき一致度の値も閾値と近いことを意味し、OFF時ボトム最大値が閾値と近ければ不良品と算出されるべき一致度の値も閾値と近いことを意味するので、ユーザは、これらの一致度統計値から、閾値の調整要否の判断や、手動によって閾値を調整する際の参考にすることができる。
(第五の表示形式)
第五の表示形式は、例えば図12Eに示すように、表示画面43において、画像を表示させるための画像表示領域PDにライブ画像LVIと、説明を表示させるための説明表示領域EDに、良品画像記憶部541aに記憶された良品画像OKIとを表示する表示形式である。この第五の表示形式による表示は、この他の表示形式、例えば第一の表示形式による表示や第二の表示形式による表示とも切り替えることができる。このように、運転画面にて、この第五の表示形式でライブ画像LVI、及び、良品画像OKIが表示されることにより、運転中に、判定結果表示灯41による判定結果、ライブ画像LVI、及び、良品画像OKIを対比することで、ワークWKの良否判定が正常に行われているか否かの見当を付けることができる。
第五の表示形式は、ライブ画像LVIと良品画像OKIとを表示する表示形式の他、例えば三点によるティーチングの場合、ライブ画像LVIと不良品画像NGIとを表示する表示形式を含んでいてもよい。図16Aは、前者の表示形式を示しており、図16Bは、後者の表示形式を示しており、本実施形態においては、例えば、前者の表示形式と後者の表示形式とが切替可能に構成されている。これにより、運転中に、判定結果表示灯41による判定結果を参照しながら、ライブ画像LVIと、良品画像OKIまたは不良品画像NGIとを対比することで、ワークWKの良否判定が正常に行われているか否かの見当を付けることができる。
(第二の表示形式の変形例)
以上のとおり、閾値4314a、一致度4313a、最大一致度4319a、最小一致度4320aを表示画面43に表示する第二の表示形式を図17Aに示す表示形式を例に挙げて説明したが、これに代えて、例えば図17Bに示す表示形式で表示することもできる。図17Bに示す表示形式は、ライブ画像LVIを表示すると共に、閾値、一致度、最大一致度、最小一致度をグラフ表示することでユーザに感覚的に分かりやすいよう構成されている。図18は、図17Bに示す表示形式を拡大して示した図である。図18の表示形式に示すように、運転画面の左端に長手方向が縦を向くようバー4323が表示され、このバー4323の中に、一致度のアイコン表示である太巾横線状の一致度4313bと、閾値のアイコン表示である細巾横線状の閾値4314bとが表示されている。この閾値4314bの右側に、閾値を増減させるための上下表示4315bがあり、運転画面にてこの上下表示4315bの上側を押下することで閾値が増加し、その増加分だけ、閾値4314bが上昇して表示される。また、運転画面にてこの上下表示4315bの下側を押下することで閾値が減少し、その減少分だけ、閾値4314bが下降して表示される。バー4323の中にはさらに、一致度のアイコン表示である一致度4313bが表示され、一致度の値が大きくなれば、一致度4313bが上昇して表示され、一致度の値が小さくなれば、一致度4313bが下降して表示される。
また、バー4323の右側に、最大一致度及び最小一致度のアイコン表示である最大一致度4319b及び最小一致度4320bがそれぞれ表示され、最大一致度及び最小一致度の値が大きくなれば、最大一致度4319b及び最小一致度4320bがそれぞれ上昇して表示され、最大一致度及び最小一致度の値が小さくなれば、最大一致度4319b及び最小一致度4320bがそれぞれ下降して表示される。
さらにまた、運転画面の右側の説明表示領域EDに、最大一致度4319a及び最小一致度4320aが表示され、それらの左側に、それぞれのアイコン表示である最大一致度4319b及び最小一致度4320bが表示される。
さらにまた、運転画面の左側の画像表示領域PDには、ライブ画像LVIが表示される。この画像表示領域PDに表示する画像は、ライブ画像LVIに限られず、例えば、図19Aに示すように、最大一致度/最小一致度が得られた画像4325を表示してもよい。また、図17Aに示す表示と図17Bに示す表示とは、ユーザの操作によって、あるいは、所定時間(例えば数秒)毎に自動で、交互に切り替えることもできる。
この変形例によれば、一致度、最大一致度、最小一致度がそれらの値に応じて、それらに対応するアイコンが上下動して表示されると共にライブ画像LVIが表示され、それらの表示と閾値4314bとを対比することができるので、視覚的かつ感覚的に、閾値の適否を判断でき、かつ、運転状況も把握することができる。また、閾値の調整が必要な場合には、運転画面にて上下表示4315bを押下することで閾値4314bが上下動して表示されるので、視覚的かつ感覚的に、閾値を調整できる。
(第四の表示形式の変形例)
また、第四の表示形式を図17Cに示す表示形式を例に挙げて説明したが、これに代えて、例えば図17Dに示す表示形式で表示することもできる。図17Dに示す表示形式は、ライブ画像LVIを表示すると共に、閾値、一致度、ON時ピーク最大値、ON時ピーク最小値をグラフ表示することでユーザに感覚的に分かりやすいよう構成されている。図20は、図17Dに示す表示形式を拡大して示した図である。図20の表示形式に示すように、バー4323、一致度4313b、閾値4314b、上下表示4315bが表示されている。これらについては、第二の表示形式の変形例の項目で説明しているため、ここでは説明を省略する。
図20の表示形式において、バー4323の右側に、ON時ピーク最大値及びON時ピーク最小値のアイコン表示であるON時ピーク最大値4321b及びON時ピーク最小値4322bがそれぞれ表示され、ON時ピーク最大値及びON時ピーク最小値の値が大きくなれば、ON時ピーク最大値4321b及びON時ピーク最小値4322bがそれぞれ上昇して表示され、ON時ピーク最大値及びON時ピーク最小値の値が小さくなれば、ON時ピーク最大値4321b及びON時ピーク最小値4322bがそれぞれ下降して表示される。
さらにまた、運転画面の右側の説明表示領域EDに、ON時ピーク最大値4321a及びON時ピーク最小値4322aが表示され、それらの左側に、それぞれのアイコン表示であるON時ピーク最大値4321b及びON時ピーク最小値4322bが表示される。
さらにまた、運転画面の左側の画像表示領域PDには、ライブ画像LVIが表示される。なお、この画像表示領域PDに表示する画像は、ライブ画像LVIに限られず、例えば、図19Bに示すように、ON時ピーク最大値/ON時ピーク最小値が得られた画像4326を表示してもよい。また、図17Cに示す表示と図17Dに示す表示とは、ユーザの操作によって、あるいは、所定時間(例えば数秒)毎に自動で、交互に切り替えることもできる。またこの変形例においても、ON時ピーク最大値4321a及びON時ピーク最小値4322aの表示に代えて、ON時ピーク最小値4322a及びOFF時ボトム最大値を表示するようにしてもよい。
この変形例によれば、一致度、ON時ピーク最大値、ON時ピーク最小値がそれらの値に応じて、それらに対応するアイコンが上下動して表示されると共にライブ画像LVIが表示され、それらの表示と閾値4314bとを対比することができるので、視覚的かつ感覚的に、閾値の適否を判断でき、かつ、運転状況も把握することができる。また、閾値の調整が必要な場合には、運転画面にて上下表示4315bを押下することで閾値4314bが上下動して表示されるので、視覚的かつ感覚的に、閾値を調整できる。
(第五の表示形式の変形例)
また、第五の表示形式を図17Eに示す表示形式を例に挙げて説明したが、これに代えて、例えば図17Fに示す表示形式で表示することもできる。この変形例は、画像の表示に関しては第五の表示形式と同一であるが、運転画面の左端に表示された、後述するバンク表示4311、出力チャネル表示4312の代わりに、一致度4313bと閾値4314bとを表示することでユーザに感覚的に分かりやすいよう構成されている。また、図17Eに示す表示と図17Fに示す表示とは、ユーザの操作によって、あるいは、所定時間(例えば数秒)毎に自動で、交互に切り替えることもできる。
図21は、図17Fに示す表示形式を拡大して示した図である。図21の表示形式に示すように、画像を表示させるための画像表示領域PDにライブ画像LVIと、説明を表示させるための説明表示領域EDに良品画像記憶部541aに記憶された良品画像OKIとを表示する。加えて、運転画面の左端に、バー4323、一致度4313b、閾値4314b、上下表示4315bが表示されている。これらについては、第二の表示形式の変形例及び第五の表示形式の項目で説明しているため、ここでは説明を省略する。
この変形例によれば、ライブ画像LVI、及び、良品画像OKIが表示され、さらに、運転画面の左端に一致度4313b及び閾値4314bが表示されるので、運転状況を確認しながら、閾値の調整を適宜行うことが可能であり、加えて、判定結果表示灯41による判定結果、ライブ画像LVI、及び、良品画像OKIを対比することで、ワークWKの良否判定が正常に行われているか否かの見当を付けることができる。
(出力チャネル設定部51m)
出力チャネル設定部51m(特許請求の範囲における「出力設定選択部」の一例に対応する。)は、一致度に対して、第一閾値と第二閾値とが設定可能であり、入力画像の一致度と、第一閾値及び第二閾値との比較に基づいて、第一の判定結果及び第二の判定結果のそれぞれを出力する出力チャネル1及び出力チャネル2を設定するための部材である。図22は、出力チャネル設定部51mについて説明するための図である。なお、図22Aは、画面表示を示す図であり、図22Bは、閾値と出力チャネル毎の良否判定との関係を示す図である。図22Aにおいて、OUT1またはOUT2は出力チャネルを示しており、OUT1は出力チャネル1から判定結果が出力されることを表示している。
図22Aの左側の図で、OUT1は、閾値として600が設定されており、図22Aの右側の図で、OUT2は閾値として808が設定されている。仮に、一致度が700のワークWKが検査対象となった場合、出力チャネル1はONを出力するが、出力チャネル2はONを出力しない。図22Bの上側の図に示すように、第一閾値、第二閾値、一致度がそれぞれグラフに示す値をとると仮定すると、判定結果は、図22Bの下側の図に示すように、(1)出力チャネル1:OFF、出力チャネル2:OFF、(2)出力チャネル1:ON、出力チャネル2:OFF、(3)出力チャネル1:ON、出力チャネル2:ON、のいずれかとなる。第一閾値は第二閾値よりも小さいため、出力チャネル1の方が、ONを出力するタイミングが出力チャネル2よりも早くなり、出力チャネル2よりも遅くまでONを出力することになる。
これにより、出力チャネル1と出力チャネル2とで異なる閾値を設定できるので、例えば、長時間運転をすることで一致度の精度が下がることがあっても、閾値を低く設定した出力チャネルでは余裕を持ってONにできるので、近々にメンテナンスすることを前提として、閾値を低く設定した出力チャネルに切り替えて、予知保全的に使うことができる。
(バンク切替部51l)
バンク切替部51lは、複数のバンクの切り替え操作を行うための部材である。図23は、バンク設定についての説明に供する図である。この図において、運転画面の左端に表示されるバンクは、1つの製造ラインに複数のワークWKを流すという段取り替えが必要な場合があり、段取り替えの度に、再度ティーチングを行わなくてもよいよう、例えばBNK1〜BNK4というように4つの設定をバンク設定記憶部54fに記憶させておくことができ、その設定がBNK1〜BNK4のいずれであるかを表示している。
例えば、BNK1は、ネジを登録し、登録されたネジが検出されたらONするようにティーチングをして閾値を決める。BNK2は、ネジにナットが付いていたら良品と判定し、BNK3では、キャップ付きのネジを登録し、登録されたキャップ付きのネジが検出されたらONするように設定しておく。このようにバンク切替部51lにて、予め設定しておき、段取り替えを行った際に、BNK1〜BNK4を切り替えて運転を行う。MODEキー46と上下キー44の下キー44bとを同時短押しを行うと、バンクを切り替えることができる。また、運転中は、外部入力信号に対してシーケンス制御を行い、自動でバンクを切り替えることもできる。
(回転許容範囲設定部51j)
回転許容範囲設定部51jは、撮像された画像の姿勢を回転して表示するための角度設定を行う部材である。例えば、図24に示すように、ワークWKの流れ方向に対して、図中左側の(A)のように設置される場合もあれば、同(B)のように設置される場合もあり、作業現場の物理的制約などから、画像処理センサ1のセンサ部2の取付方向は様々である。(A)のように設置した時に表示画面43に表示されるライブ画像LVIが図中右側の(a)だとすると、(B)のように設置した場合の表示画面43に表示されるライブ画像LVIは図中右側の(b)のように表示される。例えば、(B)のように設置した場合でも、(a)のように表示画面43に表示させたい場合に、回転許容範囲設定部51jにて回転角度を指定することにより、表示画面43において表示されるライブ画像LVIの表示姿勢を回転させる。回転許容範囲設定部51jによる操作は、設定モードの中で、MODEキー46を長押しすることで表示される詳細設定画面にて行う。
本実施の形態では、回転角度の指定については、図25Aに示す(1)回転なし(デフォルト)、図25Bに示す(2)90°回転、図25Cに示す(3)180°回転、図25Dに示す(4)270°回転の中から選択できるようにしている。設定モードにおいては、図25に示すように、画像表示領域PDにライブ画像LVIが表示されると共に、説明表示領域EDには入力画像であることを示す「View-finder」の文言と、デフォルトの状態からの回転角度が表示される。この回転角度表示の右側に、回転角度を増減させるための上下表示4315cがあり、設定画面にてこの上下表示4315cの下側または上側を押下することで回転角度が90°ずつ増減し、図25の(1)〜(4)の順または逆順(時計回りまたは反時計回り)にライブ画像LVIが回転して表示される。
図26Aは、(1)回転なしの第一の表示形式及び第五の表示形式で表示された運転画面を示している。また図26Bは、(3)180°回転の第一の表示形式及び第五の表示形式で表示された運転画面を示している。これらの図に示すように、運転モードでは、ライブ画像LVI及び良品画像OKI並びに不良品画像NGIは、回転許容範囲設定部51jにて回転角度を指定した場合、その指定した回転角度で表示される。一方、説明表示領域EDに表示された一致度4313a及び閾値4314a並びに上下表示4315aは回転表示されない。なお前述の実施形態では、第一の表示形式と第五の表示形式とを例示したが、これに限られず、例えば第二、第三、第四の表示形式の変形例でも同様である。
(反転表示機能)
画像処理センサ11は、入力画像以外の表示内容を反転表示する設定が可能である。図27Aは、反転表示する前の画面表示を示しており、図27Bは、画面反転機能により、反転表示した画面表示を示している。この反転表示機能により、ユーザが設定画面に対して対向する向きが変わった場合に、操作性を高めることができる。具体的には、画像処理センサ11の生産ラインへの組み込み時の姿勢を、ケーブル類の引き出し方向等に応じて柔軟に変化させつつ、表示画面43での表示自体はユーザが視認する方向に応じて変化させて、天地逆の表示となって判別し難くなる等の事態を回避できる。このような表示画面43における表示態様の変更は、後述する表示制御部58fにて行わせることができる。
(反転表示連動増減機能)
また、この場合において、表示画面43の表示を反転させた際には増減調整部51hの上下キー44の機能を入れ替えて、表示画面43に表示される数値や画像の上下と合致させるように、増減の操作を変更できる。すなわち、このように入力画像以外の表示内容を反転表示させた際には、上下キー44は、反転表示前の上キー44aが操作されたとき、入力画像の倍率又は閾値が減少し、反転表示前の下キー44bが操作されたとき、入力画像の倍率又は閾値が増加するように構成してもよい。これにより、従来のように表示が逆の場合には、矢印や天地と逆に増減しなければならなくなって誤操作が生じ易くなる環境を避け、感覚的に判り易い、数値や画像の上方向で増加、下方向で減少という入力操作とすることで設定ミスを回避できる。
(一致度統計値クリア部51g)
一致度統計値クリア部51gは、一致度統計値の記憶をクリアするための部材である。一致度統計値は、ユーザが閾値を適切に設定するため、良否判定が安定して行われているかを確認して閾値を調整するために有用な情報であって、例えば、前述した、最大一致度、最小一致度、ON時ピーク最小値、OFF時ボトム最大値が含まれる。図14または図15に示すように、一致度統計値は、一致度統計値クリア部51gにてホールドクリアされると、その時点からの統計値として算出される。
(増減調整部51h)
増減調整部51hは、アップ側のスイッチとダウン側のスイッチという一対のスイッチを介して、ユーザからの設定値を増減させるための操作指示を受け付け、この操作指示を制御部61に伝える部材である。この増減調整部51hは、例えば表示画面43で表示される画像の表示倍率を変更するために用いられる。表示画面43で表示される画像は、例えば良品画像OKI等の第一画像や、不良品画像NGI等の第二画像、背景画像BGI等の第三画像等である。特に、良品画像OKIや良品候補画像を拡大表示させるために、増減調整部51hで表示倍率を調整する。また、同じ増減調整部51hでもって、閾値を調整することもできる(これらの調整作業の詳細については後述)。この例では、アップ側のスイッチが操作されたとき、第一画像の倍率や閾値が増加し、またダウン側のスイッチが操作されたとき、第一画像の倍率や閾値が減少するよう指示できる。このように、増減調整部51hは、画像の表示倍率の調整機能と、閾値の調整機能という異なる操作を可能としている。共通の増減調整部51hでもって異なる値の調整に利用することで、表示画面43に設けるべき操作ボタンの数を低減したことにより、構成の簡素化、操作性の向上、コストの削減等が図られる。
具体的には、増減調整部51hは、増減ボタンであり、上下キー44、上下の矢印のアイコンである上下表示4315a、b、c、dが相当する。上下キー44は上キー44aと下キー44bを備えており、増減の調整や上下への移動等に利用される。なお、図6の例では、上下キー44を上キー44aと下キー44bという別個のキーで構成しているが、本発明はこの構成に限らず、上下キーを統合して、一の上下キーで増減させることもできる。例えば、上下キー44を傾動可能なシーソー式に構成し、上方に倒すと増加、下方に倒すと減少するようにしてもよい。
上下キー44は、上下に並べて配置することで、ユーザは感覚的に操作できる。すなわち、上方に配置された上キー44aを押下すれば値を増加させ、下方に配置された下キー44bを押下すれば値を減少させることができるので、誤操作の虞を低減できる。一般に画像処理センサ11は光電センサに比べて部品点数が多く、ケーシング4が厚くなる傾向にあるため、あえて大型化しなくても上キー44aや下キー44bを縦長の形状として上下に並べることができる。これにより、上下キー44の形状を、機能と合致させるように外観を構成することが可能となる。
また、一方向に延長した矩形状の表示面4aに、同じく矩形状の表示画面43を配置する場合、表示画面43の長手方向を表示面4aの長手方向と合致させるように配置することが、スペース効率の点で合理的となる。この場合、上下キー44は表示画面43の長手方向の側面に配置することが好ましい。表示画面43の上下に上下キー44を配置すると、表示面4aの厚さが増し、画像処理センサ11のケーシング4の大型化に繋がる。そこで、表示画面43と上下キー44とが、表示面4aの長手方向に沿って並ぶように配置することで、画像処理センサ11の小型化に寄与できる。
さらに上下キー44は、表示画面43に対して同じ側に、SETキー42と纏めて配置せず、表示画面43を跨いで反対側に位置するように配置することが好ましい。このようにすることで、表示倍率や閾値を増減した後、決定の指示をSETキー42から送るという操作に際して、未だ増減の途中で上下キー44を操作する際に誤ってSETキー42に触れて、意図しない決定の指示がなされる誤操作のリスクを、物理的にこれら上下キー44とSETキー42を離間させることで低減することができる。
なお、上下キー44は必ずしも上下に並べて配置する構成に限られず、例えば上下キー44Cを左右に並べて配置させてもよい。特に、従来の光電センサは、薄型化を図るために上下キー44を90度回転させて、左右に並べて配置することが行われている。そこで、画像処理センサを、このような光電センサでの配置例に倣って上下ボタンを配置することで、光電センサと同様の操作感を提供して、光電センサの使用経験があるユーザが違和感なく操作することが容易となる。
また上下キー44やBACKキー45、MODEキー46等を表示画面43の右側に配置している。このように微細な操作が必要なキー類を右側に配置することで、右利きが多いと思われるユーザが右手で操作し易くできる。
さらに、各キーは、互いに異なる形状であることが好ましい。これによって、ユーザは手触りでキーを区別できるので、暗所や、奥まった位置に配設されてキーを直接目視することが困難な場合でも、触感での操作が可能となる。例えば図6の例では、上下キー44は、上キー44aは上側の先端を、下キー44bは下側の先端を、それぞれ先細りとした形状とし、BACKキー45とMODEキー46は、横長で上下に並べて配置し、一方、SETキー42は縦長に形成している。特にSETキー42の形状を、BACKキー45やMODEキー46と異ならせることで、増減調整部51hで調整後にSETキー42を押下する作業を確実に行わしめることができる。
さらにまた、上下キー44には、「△」や「▽」等のマークをキートップに刻印や印刷などで表示させている。これにより、増加、減少を行わせるキーであることをユーザに視覚的に把握させることができる。
(上下表示4315a、b、c、d)
また、図9や図10等で示す通り、表示画面43で表示されるアイコンである上下表示4315a、b、c、dは、増減調整部51hで調整可能な項目に応じて表示形態を変化させることができる。例えば図9に示すように閾値を変更可能な画面においては、閾値4314aの隣に上下表示4315aとして「△」や「▽」等のマークを表示させて、表示された値を上下、すなわち増減させることが可能であることを示している。一方、図10や図11に示すように、画像表示領域PDに画像を表示させた画面においては、増減調整部51hでズームインやズームアウトが可能であることを示すよう、上下表示4315dとして「ZOOM」の文字と、その隣に△や▽等のマークを表示させている。
図28に示すように、上下キー44の上キー44aを押下すると画像が拡大されて表示され、下キー44bを押下すると画像が縮小されて表示される。また、表示画面43をタッチパネルとして、「ZOOM」表示に並べて設けられた上下表示4315dの上アイコンをタッチすると画像が拡大され、下アイコンをタッチすると縮小される。また閾値の増減は、例えば図12A〜図12Dまたは図17B、図17D、図17Fの運転画面において、図6の表示面4aに設けられた上下キー44を操作することで可能となる。また、これらの図に表示されている上下表示4315aまたは上下表示4315bの上アイコンをタッチすると閾値を増加させ、下アイコンをタッチすると減少させることもできる。さらにまた、図25A〜図25Dの設定画面において、同様に、上下キー44を操作することで、または、上下表示4315cの上アイコンあるいは下アイコンをタッチすることで、ライブ画像LVIの表示姿勢の回転角度を増減させることができる。
(閾値と画像倍率の増減に用いるキーの兼用)
上下キー44は、閾値、及び、撮像部21で撮像された画像の倍率の増減に兼用される。図29Aは、登録画像処理を行うための設定画面であり、図29B及び図29Cは、それぞれ第一の表示形式及び第三の表示形式で表示した運転画面を示している。
運転画面でSETキー42が押下されると、図29Aに示すような設定画面に遷移し、画像登録処理に移行する。図28または図29Aに示すように、画像表示領域PDにはライブ画像LVIが表示され、説明表示領域EDには「SET OK」または「良品」、「ZOOM」の文言とその「ZOOM」の右隣に上下の矢印のアイコンである上下表示4315dとが表示される。この画面において、ライブ画像LVIは、上下表示4315dの上アイコンがタッチされると拡大され、下アイコンがタッチされると縮小される。またこの画面において、上下キー44の上キー44aが押下されると画像が拡大されて表示され、下キー44bが押下されると画像が縮小されて表示される。SETキー42が押下されると、表示されたライブ画像LVIが静止画像記憶部54aの対応する記憶部に記憶されると共に、画像の倍率が設定保存部54dに記憶される。
これに対して、例えば図29B及び図29Cに示す運転画面では、前述のとおり、上下表示4315aにて閾値を増減できる。これらの運転画面が表示される運転モードでは、上下キー44は、閾値を増減するためのスイッチとして機能する。すなわち、運転モードでは、画像取得部52にて撮像する際の画像倍率が変更されると、一致度に影響があるため、設定保存部54dに記憶されている画像の倍率にて画像を表示し、運転時には変更ができないように、上下キー44は、例えば図29B及び図29Cに示す運転画面では、閾値を増減するためのスイッチとして機能する。したがって、例えば図29Bに示すように、上下キー44が押下されてもライブ画像LVIには変化がない。なお、画像処理センサ1、11は、設定などを変更できないように、キーロック機能を備えている。
このように、上下キー44に、閾値及び画像倍率の増減を兼用させることで、複数のスイッチを設けなくとも済むので、ケーシング4を小型化することができ、操作容易性の低下を回避することもできる。
(増減調整部51hの機能の切り替え)
この増減調整部51hの機能の切り替えは、増減調整部51hの機能を選択した上で行うように構成してもよいが、この場合は増減調整部51hを操作する前に、増減調整部51hの機能を選択、切り替える操作が必須となり、ユーザに煩わしい操作を強いることとなる。そこで、現在選択中の動作モードに応じて、増減調整部51hの機能が各動作モードに適した機能となるように自動的に機能切り替えが実行されるように構成することで、このような増減調整部51hの機能切り替えの操作を不要とできる。例えば、運転/設定モード切替部51dで、設定モードが選択された状態においては、増減調整部51hには、画像の表示倍率を変更する機能が割り当てられる。一方、運転/設定モード切替部51dで運転モードが選択された状態においては、増減調整部51hには閾値を調整する機能が割り当てられる。このようにして、複数の機能が割り当てられた増減調整部51hに対して、予めいずれかの機能を選択することなく、適切な機能が自動的に割り当てられることで、ユーザの操作性を向上できる。
なお、前記の運転モード毎の機能割り当ては一例であり、例えば設定モードにて、画像の表示倍率と閾値の増減を行うよう構成されている場合においては、増減調整部51hに対して表示倍率または閾値の増減機能から一方をユーザが選択するように構成されてもよい。
(取消指示部51i)
取消指示部51iは、ユーザ操作により取消指示を行うための部材である。図6等の表示面4aの例ではBACKキー45が取消指示部51iに該当する。
(良品/不良品出力設定部51n)
良品/不良品出力設定部51nは、良品ワークWKを検出する出力設定と、不良品ワークWKを検出する出力設定とを切り替え操作を行うための部材である。この良品/不良品出力設定部51nは、拡張機能の設定画面において、MODEキー46を長押しすることで、図30に示すように、例えば「Output mode」と表示された選択画面を表示し、ユーザは、三点ティーチングモードで動作させる際に、この選択画面にて、良品画像OKIをマスター画像として動作させるか、あるいは、不良品画像NGIをマスター画像として動作させるかを選択することができる。言い換えると、運転動作中の評価対象が、良品画像OKIに近しいときに出力をONにするか、あるいは、不良品画像NGIに近しいときに出力をONにするかを選択可能である。
(判別対象の選択機能)
このように、良品/不良品出力設定部51nにて、判別対象を選択する操作を行うことができる。ここでは、この判別対象の選択機能について説明する。通常は、良品画像OKIをマスター画像として動作させる。この場合、(1)良品画像OKIに対する良品画像OKIの一致度100%と、その良品画像OKIに対する不良品画像NGIの一致度との間に閾値を設定し、最新の入力画像と良品画像OKIとの一致度を算出し、当該閾値を超えた場合に、ONを出力するよう設定する。これに対して、不良品画像NGIをマスターとして動作させるには、(2)不良品画像NGIに対する不良品画像NGIの一致度100%と、その不良品画像NGIに対する良品画像OKIの一致度との間に閾値を設定し、最新の入力画像と不良品画像NGIとの一致度を算出し、当該閾値を超えた場合に、ONを出力するよう設定する。これら(1)(2)の設定を、前述の良品/不良品出力設定部51nにて、ユーザの操作によって切り替えることができる。
(画像取得部52)
画像取得部52は、撮像部21にて画像を撮像し取得した画像、または外部記憶デバイス等から取得した画像を主制御部61に受け渡す部材である。画像取得部52は、CMOS231が光像からデジタル画像を作成し、例えば、一画素飛ばしというように、読み出し方を変更できるようになっている。分離型の画像処理センサ1では、コントローラ部3は、この画像取得部52が、センサ部2で撮像された、あるいは、外部記憶デバイス等に保存された画像を取得する。なお、画像取得部52は、露出の異なる画像を連続撮影して自動で合成するHDR機能を搭載していてもよい。
(表示部53)
表示部53は現在のセンサ状態の表示や、ユーザへの指示内容を表示する部材である。表示部53には、表示画面43として、有機EL(OLED)の他、液晶(LCD)等が利用できる。また、図6等のようにケーシング4に表示画面43を組み込む他、表示画面43を外付けとしてもよい。また、前述の表示画面43に表示する出力は、外部表示デバイスの表示画面に出力することもできる。
表示画面43の表示例を図10、図11、図31、図33に示す。これらの図に示す表示画面43は、表示領域を二分割して、画像を表示させるための画像表示領域PDと、説明を表示させるための説明表示領域EDを設けている。この図10等の例では、横長の表示画面43の左側に画像表示領域PDを、右側に説明表示領域EDを設けている。もちろん、左右を入れ替えたり、あるいは縦長として上下に二分割するなど、様々な態様にて表示させることができる。
(ライブ画像表示部53a)
ライブ画像表示部53aは現在のライブ画像LVIを繰り返し更新して表示するための部材である。画像取得部52にて取得されたライブ画像LVIは、設定管理部5によって、画像/設定記憶部54の揮発性メモリであるライブ画像記憶部54bに一時的に保存されている。また、表示制御部58fはライブ画像記憶部54bより画像を、設定保存部54dよりズーム倍率などの設定を、それぞれ読み出す。ライブ画像表示部53aは、読み出された画像を、読み出された設定に基づいて、画像表示領域PDに繰り返し更新して表示する。
(静止画像表示部53b)
静止画像表示部53bは、登録画像を表示するための部材である。静止画像表示部53bは、後述するティーチング時の第二登録画面において、第一登録画面が表示された状態で登録された良品画像OKIを表示させる。
(操作指示表示部53f)
操作指示表示部53fは、画像登録手順をユーザに対して指示し、ユーザが登録を完了できるよう誘導するための登録誘導情報を表示するための部材である。具体的には、良品画像OKI、不良品画像NGI、背景画像BGIを登録する際に、操作指示表示部53fは、誘導表示制御部58aにより、説明表示領域EDに登録誘導情報を表示させる。説明表示領域EDには、良品画像OKI、不良品画像NGI、背景画像BGIを登録する際に、例えば、これから何を登録すべきなのかという説明のための文字、あるいは、アイコンが表示される。
(登録誘導情報)
登録誘導情報は、画像登録手順をユーザに対して指示し、ユーザが登録を完了できるよう誘導するための情報である。例えば、文字情報、または、画像情報、あるいは、文字情報と画像情報を組み合わせた情報を登録誘導情報に利用できる。具体的に、文字情報は前述の説明のための文字を、画像情報は説明のためのアイコンを示しており、また、画像情報には静止画像の他、動画像を用いてもよい。前述の登録誘導情報は、誘導表示制御部58aにより、説明表示領域EDに表示される。ここでは、登録誘導情報として、第一登録画面において、一方の画像の登録の手順を指示し、ユーザをするための第一登録誘導情報と、第二登録画面において、他方の画像の登録の手順を指示し、ユーザを誘導するための第二登録誘導情報とを含む。登録誘導情報は、画像/設定記憶部54の不揮発性メモリである登録識別指示情報記憶部54hに保存されており、誘導表示制御部58aの管理下において、操作指示表示部53fによって、説明表示領域EDに表示される。これらの詳細については後述する。
(一致度統計値表示部53g)
一致度統計値表示部53gは、一致度統計値を表示するための部材である。一致度統計値表示部53gは、一致度統計値算出部57eにて算出された、最大/最小一致度、設定閾値と紐づいたON時ピーク値、ON時ピーク最大/最小値、OFF時ボトム値、OFF時ボトム最大/最小値を表示する。図17A及び図17Bは最大一致度4319a、最小一致度4320aを表示しており、図17C及び図17DはON時ピーク最大値4321a/ON時ピーク最小値4322aを表示している。
(一致度統計時画像表示部53h)
一致度統計時画像表示部53hは、最大/最小一致度を含むON時ピーク最大値などの一致度の統計値の全般である一致度統計値が算出された時のライブ画像LVIを一致度統計時画像として表示するための部材である。一致度統計時画像表示部53hは、図19に示すように、一致度統計時画像記憶部54cから読み出された一致度統計時画像を、第二の表現形式や第四の表現形式またはそれらの変形例の表現形式におけるライブ画像LVIの代わりに表示するよう構成できる。
(運転バンク表示部53i)
運転バンク表示部53iは、バンクを表示するための部材であり、例えば図23に示すように、BNK1〜BNK4というように、予めバンク設定記憶部54fに記憶させておいた4つの設定の中から、現在の設定がBNK1〜BNK4のいずれであるかを運転画面の左上端に表示する。
(画像/設定記憶部54)
画像/設定記憶部54(特許請求の範囲における「画像登録部」の一例に対応する。)は画像や設定を記憶する部材である。本実施の形態では、この部材として、内部SRAMまたは外部FlashROMが用いられる。例えば、登録誘導情報は常に記憶されている必要があるため、その記憶するための登録識別指示情報記憶部54hには不揮発性メモリであるFlashROM等が用いられる。なお、画像/設定記憶部54は、個々のデータ毎に別のデバイスを備えても良く、また揮発性・不揮発性のいずれのメモリを用いてもよい。
(静止画像記憶部54a)
静止画像記憶部54aは、登録画像を記憶するための部材である。操作部51における、良品画像設定部51a、不良品画像設定部51b、背景画像設定部51cからの指示に応じて、入力時のタイミング、あるいは、入力直後のタイミングで、設定管理部58が画像/設定記憶部54に保存されているライブ画像LVIを画像/設定記憶部54の静止画像記憶部54a(良品画像記憶部541a、不良品画像記憶部542a、背景画像記憶部543a)に保存する。
(ライブ画像記憶部54b)
ライブ画像記憶部54bは、ライブ画像LVIを記憶するための部材である。ライブ画像記憶部54bは、画像取得部52から得られる画像を常に画像/設定記憶部54に保存する。ライブ画像LVIは、繰り返し更新され、一時的に記憶されるよう非常に高速に動作することが求められるため、それを記憶するためのライブ画像記憶部54bにはSRAMが使用される。
(一致度統計時画像記憶部54c)
一致度統計時画像記憶部54cは、最大/最小一致度を含むON時ピーク最大値などの一致度の統計値の全般である一致度統計値が算出された時のライブ画像LVIを一致度統計時画像として記憶するための部材である。一致度統計時画像は、一致度統計時画像記憶部54cから読み出され、第二の表現形式や第四の表現形式またはそれらの変形例の表現形式におけるライブ画像LVIの代わりに表示されるよう構成できる。
(設定保存部54d)
設定保存部54dは、設定モードで設定された画像の倍率などの各種設定値を記憶するための部材である。例えば画像倍率は、運転モードにて、画像アクセス部58cによって、設定保存部54dから読み出され、表示制御部58fによって、読み出された画像倍率に設定され、ライブ画像表示部53aにてライブ画像LVIが表示される。
(一致度統計値記憶部54e)
一致度統計値記憶部54eは、最大/最小一致度を含むON時ピーク最大値などの一致度の統計値の全般である一致度統計値を記憶するための部材である。
(バンク設定記憶部54f)
バンク設定記憶部54fは、バンク切替部51lにて切り替えて読み出す複数の設定を記憶するための部材である。MODEキー46と上下キー44とが同時に押下されると、BNK1〜BNK4の間でバンクが切り替わり、表示画面43に表示されたバンクと対応付けて、バンク設定記憶部54fに記憶される。
(閾値(第一、第二)記憶部54g)
閾値(第一、第二)記憶部54gは、出力チャネル設定部51mにて、第一の判定結果及び第二の判定結果を出力するチャネルを設定する際に、入力画像の一致度と比較される第一閾値及び第二閾値とを記憶するための部材である。
(登録識別指示情報記憶部54h)
登録識別指示情報記憶部54hは、登録誘導情報を記憶するための部材である。登録誘導情報は、誘導表示制御部58aの管理下において、操作指示表示部53fによって、説明表示領域EDに表示される。不揮発性メモリ、半導体メモリやハードディスク等が利用できる。
(良品/不良品出力設定記憶部54i)
良品/不良品出力設定記憶部54iは、良品ワークWKを検出する出力設定と、不良品ワークWKを検出する出力設定とを記憶するための部材である。良品/不良品出力設定記憶部54iは、例えば、図30に示す選択画面において、SETキー42が押下されると、良品画像OKIまたは不良品画像NGIのいずれがマスター画像として設定されたかを記憶する。
(テーブル記憶部)
テーブル記憶部(図示していない。)は、各応答時間に対する最大露光時間や読み出し可能画素数などの情報を記憶するための部材である。
(条件割当部55)
条件割当部55は登録設定条件を変化させて、最適な登録設定条件を決定する調整を行うための部材である。具体的には、設定モードにおいて、応答時間設定部51eから与えられた応答時間に従って、設定可能な複数の異なる登録設定条件の候補を設定し、これらの登録設定条件候補で得た候補画像に対して評価を行い、良否判定に適した候補画像を登録画像として登録すると共に、このときの登録設定条件を保持して、運転モードにおいてこの登録設定条件で画像を撮像して良否判定を行うようにする。
この条件割当部55は、撮像条件割当部55aと、画像圧縮度設定部55eと、画像処理内容割当部55fを備えている。撮像条件割当部55aは、応答時間設定部により設定された応答時間内に良否判定を行うための所定の画像処理が可能となるように、画像の撮像条件を調整可能としている。また撮像条件割当部55aは、画像の明るさに関する条件、すなわち明るさのパラメータを調整可能な明るさ条件割当部55bを含んでいる。明るさのパラメータには、露光時間や照明強度等が挙げられる。明るさ条件割当部55bはさらに、明るさ条件候補設定部55cと、明るさ条件選択部55dを備える。
(明るさ条件候補設定部55c)
明るさ条件候補設定部55cは、与えられた応答時間内に判別結果が出力されるように、複数の明るさ条件の各々を明るさ条件候補として設定するための部材である。
(明るさ条件選択部55d)
明るさ条件選択部55dは、一致度算出部57cにより複数の明るさ条件候補毎に算出された一致度に基づいて、複数の明るさ条件候補の中から選択条件に従い明るさ条件を選択するための部材である。
以上の条件割当部55は、例えば、良品画像OKI及び背景画像BGIと、不良品画像NGI及び背景画像BGIとから、背景を取り除いた良品画像OKIと、背景を取り除いた不良品画像NGIとをそれぞれ切り出し、それらの背景を取り除いた画像に基づいて、良品と不良品とを判別するのに最適な登録条件を割り出すための評価方法を決定する。例えば、画像圧縮度設定部55eが画像の解像度を変更し、画像処理内容割当部55fが画像の処理方法を変更し、明るさ条件割当部55bが画像を撮像する際の明るさを変更する。あるいは条件割当部55が、内部的な特徴量の抽出方法を変更する特徴量抽出処理割当部を備えてもよい。このようにして条件割当部55は登録条件パターンを変えていき、設定画像処理部56の閾値算出部56cで算出される一致度が最適となる登録条件パターンを最適な登録条件とする。なお、この機能ブロックは、例えば設定管理部58が担うようにしてもよい。
(設定画像処理部56)
設定画像処理部56は、画像を基に画像処理登録を行い、対象画像の評価が行える状態にするための部材である。与えられた良品画像OKI、不良品画像NGI、背景画像BGIのうち少なくとも1枚の画像を基に画像処理アルゴリズムの登録を行い、内部の特徴量の重みパラメータを決定すると共に、登録処理中に、運転画像処理部57にて、対象画像の評価を行い、一致度を算出して、良品画像OKIと不良品画像NGIとを判別するための閾値を算出する。
(差分画像生成部56a)
差分画像生成部56aは、良品画像OKIから背景画像BGIを除いて、良品ワークのみを抽出する単純差分画像を生成する、あるいは、不良品画像NGIから背景画像BGIを除いて、不良品ワークのみを抽出した単純差分画像を生成するための部材である。これらの差分画像は、2枚の画像の対応する画素同士を減算して、差分を得ている。ただ本明細書において「差分」とは、このような対応画素同士を減算する単純差分処理に限定されない。例えば、背景との共通要素を除外することで、ワーク領域を特定することも含む意味で使用する。
(特徴量抽出部56b)
特徴量抽出部56bは、画像データから特徴量を抽出するための部材である。特徴量は、特徴点や単に特徴などとも呼ばれ、例えば、輪郭(エッジ)、エッジピクセル数、輝度平均/分散などが挙げられる。またこのような特徴量を画像データから抽出するアルゴリズムとしては、例えば、エッジ特徴を抽出するアルゴリズムであるSobelフィルタ等、既知のアルゴリズムが利用できる。
(閾値算出部56c)
閾値算出部56cは、表示画面43に表示された、良品とすべきワークWKを含む良品画像OKI(特許請求の範囲における「第一画像」の一例に該当する。)と、表示画面43に表示された、良品とすべきワークWKを含まない背景画像BGI(特許請求の範囲における「第二画像」の一例に該当する。)または不良品画像NGI(特許請求の範囲における「第二画像」の一例に該当する。)との特徴一致度合いを示す一致度に対する閾値を算出するための部材である。この閾値算出部56cが、良品画像OKIと背景画像BGIまたは不良品画像NGIとの特徴一致度合いを示す一致度に対する閾値を自動的に算出する。良品画像OKIと背景画像BGIとの2点からティーチングを行う場合、良品画像OKI及び背景画像BGIの特徴量をそれぞれ算出し、その特徴量の間に閾値を引く。また、良品画像OKI、不良品画像NGI、背景画像BGIの3点からティーチングを行う場合、良品画像OKI及び背景画像BGIと、不良品画像NGI及び背景画像BGIとから、背景を取り除いた良品画像OKIと、背景を取り除いた不良品画像NGIとをそれぞれ切り出し、背景が取り除かれた良品画像OKI及び不良品画像NGIの特徴量を算出し、その特徴量の間に閾値を引く。なお、閾値を算出する手法は様々あるが、少なくとも、良品と判別されるべき検査対象物を含む良品画像OKI(第一画像)に対する一致度を用いることで足りる。例えば、良品画像OKIに対する不良品画像NGIの一致度であってもよいし、良品画像OKIに対する背景画像BGIの一致度であってもよい。
(画像圧縮部56d)
画像圧縮部56dは、画像を圧縮して低解像度化するための部材である。画像の圧縮方法としては、Lanczos法、平均画素法、バイキュービック法など、既知の手法が利用できる。また画像圧縮部56dは、圧縮対象の入力画像を、与えられた応答時間に基づいて、所定の画像処理がこの応答時間内で処理可能なデータサイズとなるように圧縮するようにも機能する。
(運転画像処理部57)
運転画像処理部57は、対象画像の評価を行い、一致度を算出するための部材である。設定画像処理部56によって、画像処理アルゴリズムの登録ができた状態で、評価対象の画像に対して、登録された画像処理アルゴリズムを動作させ、運転画像に対して、良品画像OKIとの一致度を算出する。また運転画像処理部57は、運転画像に対して算出した一致度と設定画像処理部56の閾値算出部56cで算出した閾値とを比較して、ワークWKが良品か不良品かを判定する。
(特徴量抽出部57a)
特徴量抽出部57aは、画像データから特徴量を抽出するための部材である。特徴量は、特徴点や単に特徴などとも呼ばれ、例えば、輪郭(エッジ)、エッジピクセル数、輝度平均/分散などが挙げられる。またこのような特徴量を画像データから抽出するアルゴリズムとしては、例えば、エッジ特徴を抽出するアルゴリズムであるSobelフィルタ等、既知のアルゴリズムが利用できる。なお、後述する設定画像処理部56の特徴量抽出部56bと共通化することもできる。この場合、登録時において特徴量抽出部57aで特徴量を算出して設定画像処理部56に送出したり、逆に運転時において設定画像処理部56の特徴量抽出部56bで特徴量を算出して運転画像処理部57に送出することができる。あるいは、設定画像処理部56と運転画像処理部57を統合してもよい。
(一致度算出部57c)
一致度算出部57cは、対象画像の評価を行い、一致度を算出するための部材である。ここで、一致度とは、良品画像OKIとの一致する度合いを意味し、例えば、対象画像が良品画像OKIである場合を100%とした時に、背景画像BGIと良品画像OKIとの一致する度合いが70%だとすると、背景画像BGIの一致度は70%ということになり、良品画像OKIの一致度と背景画像BGIの一致度との間の85%を閾値とする。このように、割合として一致度を算出してもよいし、特徴量毎に点数を配分し、度合いではなく、特徴量毎に配分された点数を合算した値を一致度としてもよい。また、前述の実施形態では、一致度は、良品画像OKIとの一致の度合い、あるいは、特徴量をスコア化した値として定義しているが、不良品画像NGIとの一致の度合いと定義してもよいし、さらには、第一画像を適宜選択することでユーザが所望する対象画像との一致の度合いと定義することもできる。
(一致度統計値算出部57e)
一致度統計値算出部57eは、一致度算出部57cにて算出された一致度の、運転開始時から、または、一致度統計値がホールドクリアされてからの一致度統計値を算出するための部材である。一致度統計値算出部57eは、図14に示すように、例えば3ms毎に更新される一致度が過去最大値を上回れば、該一致度の値を最大一致度として算出する。同様に、一致度統計値算出部57eは、例えば3ms毎に更新される一致度が過去最小値を下回れば、この時の一致度の値を最小一致度として算出する。
また一致度統計値算出部57eは、図15に示すように、一致度が閾値を上回り良品と判定するON時であって、現在のサンプリング期間の終了時に、該サンプリング期間のON時ピーク値がそれまでのON時ピーク最大値を上回れば、該ON時ピーク値をON時ピーク最大値として算出し、該サンプリング期間のON時ピーク値がそれまでのON時ピーク最小値を下回れば、該ON時ピーク値をON時ピーク最小値として算出する。さらにまた、一致度統計値算出部57eは、図15に示すように、一致度が閾値を下回り不良品と判定するOFF時であって、現在のサンプリング期間の終了時に、該サンプリング期間のOFF時ボトム値がそれまでのOFF時ボトム最大値を上回れば、該OFF時ボトム値をOFF時ボトム最大値として算出し、該サンプリング期間のOFF時ボトム値がそれまでのOFF時ボトム最大値を下回れば、該OFF時ボトム値をOFF時ボトム最小値として算出する。
(設定管理部58)
設定管理部58は、各機能ブロックを統括するための部材である。設定管理部58は、操作部51及び画像取得部52によって入力された情報に基づいて、画像/設定記憶部54、条件割当部55、設定画像処理部56、運転画像処理部57を制御し、必要な画像や情報を表示部53に表示する。例えば設定モードにおいて、ライブ画像LVIの設定待ち状態では、画像取得部52から得られる画像を常にメモリ(揮発性又は不揮発性)に保存している。そして操作部51から画像設定命令を受け取ったタイミングで、メモリに保存されているライブ画像LVIを良品画像OKI/不良品画像NGI/背景画像BGIとして登録する。あるいは、メモリに保存されている画像データを経由させず、操作部51が押下された直後のライブ画像LVIを、良品画像OKI/不良品画像NGI/背景画像BGIに登録させる。そして条件割当部55に登録画像を転送し、登録結果を表示部53に表示させる。一方、運転モードにおいては、画像取得部52から評価対象のライブ画像LVIを受けて、運転画像処理部57に送出し、運転画像処理部57の評価結果を、表示部53に表示させる。
設定時には、設定管理部58は、画像取得部52から得られる画像を常に画像/設定記憶部54に保存しており、操作部51における、良品画像設定部51a、不良品画像設定部51b、背景画像設定部51cを介して入力時のタイミング、あるいは、入力直後のタイミングで、画像/設定記憶部54に保存されているライブ画像LVIを画像/設定記憶部54の静止画像記憶部54a(良品画像記憶部541a、不良品画像記憶部542a、背景画像記憶部543a)に保存し、登録結果として、表示部53の静止画像表示部53bに表示する。
運転時には、設定管理部58は、画像取得部52から得られる画像を対象画像として運転画像処理部57に出力し、運転画像処理部57による評価結果を表示部53の判定結果表示部53eに表示する。
(誘導表示制御部58a)
誘導表示制御部58aは、表示部53における表示内容を制御するための部材である。誘導表示制御部58aは、画面遷移部58bを含んでもよい。また、第二登録画面におけるライブ画像LVIと第一登録画面が表示された状態で登録された良品画像OKIとの並列表示機能を画像アクセス部58cに持たせているが、誘導表示制御部58aがこの機能を担ってもよい。
(画面遷移部58b)
画面遷移部58bは、閾値算出部56cによる閾値算出に用いられる画像として、第一画像又は第二画像のうち一方の画像を登録するための第一登録画面から、閾値算出部56cによる閾値算出に用いられる他方の画像を登録する第二登録画面に遷移させるための部材である。画面遷移部58bは、第一登録画面において、画像取得部52により撮像された一方の画像をライブ画像LVIとして表示部53に表示させる。さらに画面遷移部58bは、この一方の画像の登録を誘導するための第一登録誘導情報を、表示部53に表示させる。画面遷移部58bは、ライブ画像LVIを表示部53の画像表示領域PDに表示させ、第一登録誘導情報を説明表示領域EDに表示させる。
また画面遷移部58bは、第二登録画面においても、他方の画像をライブ画像LVIとして画像表示領域PDに表示させると共に、この他方の画像の登録を誘導するための第二登録誘導情報を説明表示領域EDに表示させることもできる。
(画像アクセス部58c)
画像アクセス部58cは、良品画像OKI、不良品画像NGI、背景画像BGI、ライブ画像LVI、一致度統計時画像などの保存、削除、読出しを行うための部材である。画像アクセス部58cは、例えばティーチング時の第二登録画面において、ライブ画像表示部53aを介して表示画面43の左側にライブ画像LVIを表示させ、静止画像表示部53bを介して右側に前回登録済みの良品画像OKIを表示させる。これにより、ユーザは、例えば、良品画像OKIの登録画像を見ながら、不良品画像NGIを登録することができるので、意図しない登録を防止できる。
画像アクセス部58cは、良品画像OKIと背景画像BGIとの2点ティーチングの際の図11に示す第一登録画面においては、操作部51であるSETキー42が押下されると、この時点で画像表示領域PDで表示されるライブ画像LVIを良品画像OKIとして良品画像記憶部541aに保存する。また図33に示す第二登録画面においては、SETキー42が押下されると、画像表示領域PDで表示されるライブ画像LVIを背景画像BGIとして背景画像記憶部543aに保存する。
また画像アクセス部58cは、良品画像OKI、不良品画像NGI、背景画像BGIとの3点ティーチングの際の図31に示す第二登録画面においては、SETキー42が押下されると、画像表示領域PDで表示されるライブ画像LVIを不良品画像NGIとして不良品画像記憶部542aに保存する。また図33に示す第三登録画面においては、SETキー42が押下されると、画像表示領域PDで表示されるライブ画像LVIを背景画像BGIとして背景画像記憶部543aに保存する。
(一致度統計値アクセス部58d)
一致度統計値アクセス部58dは、一致度統計値の保存、削除、読出しを行うための部材である。一致度統計値アクセス部58dは、例えば運転時に、一致度統計値算出部57eにて算出させ、一致度統計値記憶部54eに保存すると共に、一致度統計値記憶部54eにて保存された一致度統計値を読み出して、表示部53に表示させる。
(バンク切替制御部58e)
バンク切替制御部58eは、複数のバンクを切替可能とすると共に、バンクと対応付けて設定をバンク設定記憶部54fに記憶させたり、バンクと対応付けて設定を読み出し、読み出された設定にて運転させる制御を行う部材である。
(表示制御部58f)
表示制御部58fは、表示部53における表示内容を制御するための部材である。表示制御部58fは、誘導表示制御部58aを包含してもよい。表示制御部58fは、表示部53において、画面表示切替部51fによって切り替えられた第一の表示形式〜第五の表示形式にて種々の表示を行う。
(設定モードにおける画像の登録)
この画像処理センサ1、11では、設定モードにおいて画像を登録する方法として、以下の4つが挙げられる。
1.三点ティーチング
三点ティーチングにおいては、良品画像OKIと、不良品画像NGIと、背景画像BGIを登録する。三点ティーチングは、良品と不良品の識別を目的としている。三点ティーチングした後に運転モードに切り替えると、入力画像が如何に良品画像OKIに近いかを評価する一致度が算出される。
2.二点ティーチング(良品画像OKIと不良品画像NGIを登録)
二点ティーチングでは、良品画像OKIと、不良品画像NGIを登録する。二点ティーチングも、良品と不良品の識別を目的としており、二点ティーチングした後に運転モードに切り替えると、入力画像が如何に良品画像OKIに近いかを評価する一致度が算出される。
三点ティーチングとの相違点は、背景画像BGIの有無により、ワーク特定の可否が異なる。背景画像BGIが登録されていない状況では差分処理が行えないため、良品ワーク・不良品ワークを良好に特定できない。ワークが特定できないため、登録時の良品・不良品の情報は、背景を含む良品と背景を含む不良品となる。背景とワーク領域の識別ができないことから、良品画像OKIに含まれる背景と不良品画像NGIに含まれる背景が異なる場合(例えば、良品ワークと不良品ワークの大きさが違う場合)では、本来評価対象外とすべき背景の差により識別をしようとしてしまい誤検出に繋がる。
また、登録時のみならず運転画像に対しても良品あるいは不良品の切出しができないため、背景を含んだワークにより良否判別を行うことになる。この場合、良品と不良品とは無関係な背景が変化した場合であってもその変化に基づき一致度が変化してしまうことになる。
良品と不良品だけに着目した識別に対して不安定な要素(例えば背景が該当する。)が識別に含まれるため、最良な識別結果が期待できない。この結果、背景画像BGIの有無により検出性能に差が生じ、ワーク特定ができる三点登録の方が性能が良いと見込まれる。
3.二点ティーチング(良品画像OKIと背景画像BGIを登録)
この二点ティーチングでは、良品画像OKIと、不良品画像NGIに代えて背景画像BGIを登録する。この二点ティーチングでは、良品のワークの有無の判別を目的としており、二点ティーチングした後に運転モードに切り替えると、良品のワークと思しきものが存在する確率が0〜100%の一致度で算出される。
良品画像OKIと背景画像BGIを登録する二点ティーチングを識別用途に用いることも可能である。この場合、登録時に良品ワークが特定されるため、運転画面に対しても良品ワークが存在するかを識別することで識別動作が可能となる。しかし不良品ワークが存在しないため、良品ワーク全体で一致度を評価する必要が生じる。この場合、仮に不良品ワークとして良品ワークの一部が欠けたワークを想定すると、欠けの大きさに基づき一致度を変化させざるをえず、小さい欠けに対しては大きな一致度差を出すことができず良品・不良品の判別感度が不十分となる虞がある。
一方、三点ティーチングでは良品ワークと不良品ワークが登録されているため、事前に差のある領域を特定することができる。そのためワーク及び差の大小によらず、差のある部分で一致度判定を行うことで小さな欠けに対しても大きな一致度差を出すことが可能である。
この結果、不良品画像NGIの有無により識別性能に差が生じ、不良品特定ができる三点ティーチングの方が識別性能が良いと見込まれる。
また、これら複数枚の画像登録により従来のように1枚の画像で登録処理を行う方法に比べ高識別性・高安定性が実現可能となる。
4.一点ティーチング(良品画像OKI又は背景画像BGIを登録)
一点ティーチングでは、良品画像OKI又は背景画像BGIを登録する。この一点ティーチングでは、登録状態から何か違うかを評価することを目的としている。例えば、背景画像BGIを登録することで、背景状態を把握させ、何らかのワークが搬送されてきた場合に反応するといった態様で用いられる。
(良品画像OKIと不良品画像NGIを登録する二点ティーチングの手順)
次に、具体的なティーチングとして、二点ティーチングの手順を、画像処理センサ側から見た図8のフローチャート、及び図9〜図11、図28、図31に基づいて説明する。ここでは二点ティーチングの例として、良品画像OKIと、不良品画像NGIの2つの画像を登録する例について説明する。
まずステップST100において処理を開始し、ステップST101において、二点ティーチングモードへの切り替えの有無を判定する。ここでは、操作部51の一形態であるSETキー42の短押しの有無を判定する。具体的には図9に示す運転画面から、SETキー42が押下された時間を計測し、所定の秒数(例えば3秒)以下の場合は短押しと判定する。短押しが検出された場合は、ステップST102に進み、検出されない場合は二点ティーチングモードの処理を中止する。図8の例ではステップST100に戻る。なお、ステップST100に戻る代わりに、後述する三点ティーチングモードに移行させてもよい。
次にステップST102において、第一登録画面から第一画像の登録を行う。ここでは、撮像した画像を表示画面43に表示させる。具体的には、まず登録識別指示情報記憶部54hから、良品画像OKIを登録するための指示情報である第一登録誘導情報を読み出し、表示画面43に表示させる。表示画面43における第一登録画面の表示例を図10に示す。表示画面43には画像表示領域PD(図10において左側)と説明表示領域ED(右側)を設けており、画像表示領域PDにライブ画像LVIを、説明表示領域EDに登録誘導情報を、それぞれ表示させている。ここでは、登録誘導情報は、第一画像として良品画像OKIを登録するよう指示するガイダンスをユーザに示している。この例では、「検出ワークあり(良品)」状態での画像の登録を指示するよう、「SET PRESENSE」を表示させている。このようにして、ユーザに対して良品画像OKIとして登録すべき良品ワークを撮像位置に置き、撮像部21に撮像させるように、誘導表示制御部58aは第一登録誘導情報を表示画面43に表示させて誘導する。ユーザはこのような表示により、良品ワークを置く(なお、ワークを動かさずにセンサを移動させてもよく、良品ワークが撮像部21で撮像できる位置関係になっていればよい。以下同様。)動作がこのタイミングで必要なことを理解でき、この誘導に従って良品ワークを置くよう案内される。
次に撮像部21で撮像した現在の画像を、表示画面43の第一登録画面に表示させる。前述の通り画像表示領域PDは、リアルタイムに表示内容を更新させるライブ画像LVIの表示状態となっている。前記の第一登録誘導情報に従い、ユーザが良品ワークを撮像位置に置いた場合は、ライブ画像LVI表示機能により、図11に示すようにユーザはリアルタイムで良品ワークを表示画面43上で確認できる。この段階で表示画面43に表示されるライブ画像LVIは、良品候補画像となる。このように第一画像の候補となる画像の表示形態をライブ画像LVI表示としたことで、ユーザが良品ワークを置く位置や回転角度を変更すると、直ちに表示画面43の表示内容が反映されるので、ユーザは良品ワークを撮像した良品画像OKIとして登録する画像を、所望の状態に調整し易い利点が得られる。すなわち、良品画像OKIとして登録する上で、大きさや視野等が適切であるかをユーザは表示画面43上から目視により確認し、問題がない場合は、現在、表示画面43に表示されている画像の登録を行う(詳細は後述)。
(拡大縮小機能)
また、画像表示領域PDで表示されるライブ画像LVIを拡大あるいは縮小表示させることもできる。このような拡大縮小機能により、表示面積の限られた表示画面43を有効に活用できる。拡大、縮小は、撮像した光学画像のデジタルズームとする他、撮像部21に設けた光学レンズの倍率調整としてもよい。
図11の例では、このような拡大縮小操作が可能であることを示すため、説明表示領域EDには拡大縮小可能表示情報として「ZOOM」の文字を示したアイコンと、上下表示4315dを表示している。このような視覚的な表示によってユーザは、この画面において画像の拡大縮小が可能であることが認識できる。具体的には、図6の表示面に設けられた増減調整部51hの一形態である上下キー44を操作して、画像の拡大又は縮小操作が可能となる。例えば図28に示すように、上下キー44の上キー44aを押下すると画像が拡大されて表示され、下キー44bを押下すると画像が縮小されて表示される。また、表示画面43をタッチパネルとして、「ZOOM」アイコンに並べて設けられた上アイコンをタッチすると画像が拡大され、下アイコンをタッチすると縮小されるように構成してもよい。
このように、画像の拡大縮小表示が可能な画面では「ZOOM」アイコンを表示させ、画像の拡大縮小機能が無効となっている画面では「ZOOM」アイコンを表示させないことで、画像の拡大縮小機能が利用可能であることをユーザに対し告知できる。
なお図11の例では、説明表示領域EDに拡大縮小可能表示情報を表示させた例を示しているが、この構成に限られず、例えば画像表示領域PDに拡大縮小可能表示情報を表示させたり、あるいは画像表示領域PDと説明表示領域EDに跨がって拡大縮小可能表示情報を表示させてもよい。
このようにして、ユーザは必要に応じて視野や倍率を適切に調整した良品画像OKIを画像表示領域PDに表示させた状態で、操作部51の一形態であるSETキー42を押下することで、画像表示領域PDで表示されるライブ画像LVIを、良品画像OKIとして登録する。この処理の具体的な流れを、図8のフローチャートに戻って説明する。
まずステップST102−1において、操作部51からの操作指示の有無を検出する。ここでは、ユーザが操作部51の一形態であるSETキー42を操作したか否かを判定する。操作指示がない場合、すなわちユーザがSETキー42を押下していない場合は、ステップST103に進み、倍率変更指示の有無を検出する。ここでは、増減調整部51hの操作の有無を検出する。図6に示す表示面4aの例では、増減ボタンである上下キー44が増減調整部51hに該当する。
ステップST103において増減調整部51hの操作が検出された場合は、ステップST104に進み、表示画面43における表示倍率を変更する。図6の例では、上下キー44の内、上キー44aが押下された場合は表示倍率を高め、拡大表示される(テレ)。一方、下キー44bが押下された場合は表示倍率を低下させ、撮像領域を広くする(ワイド)。その後、ステップST105に進む。あるいはステップST102に戻って表示を繰り返してもよい。
一方、ステップST103において増減調整部51hの操作が検出されない場合は、ステップST105に進み、取消指示の有無を判定する。取消指示は取消指示部51iから行い、図6の表示面4aの例ではBACKキー45が取消指示部51iに該当する。BACKキー45は、ユーザが画像の登録処理等を中止する場合に操作するキーである。取消指示が検出された場合は、処理を中止する(例えばステップST100に戻ったり、二点ティーチングを中止して図9の運転画面に戻る)。
ステップST102−1において、操作指示があった場合、すなわちユーザがSETキー42を押下した場合は、ステップST102−2に進み、画像表示領域PDに現在表示中のライブ画像LVIを良品画像OKIとして登録する。
さらにステップST106において、第二登録画面から第二画像の登録を行う。このため、新たに画像を撮像して表示画面43に表示させる必要がある。ここでは、登録識別指示情報記憶部54hから、不良品画像NGIを登録するための指示情報乃至誘導情報である第二登録誘導情報を読み出し、表示画面43に表示させて第二登録画面を構成する。具体的には、図31に示すように誘導表示制御部58aが第二登録誘導情報を表示画面43に表示させて、ユーザに対して不良品画像NGIとして登録すべき不良品ワークを撮像位置に置くように誘導する。これにより、ユーザはこのタイミングで不良品ワークを置く作業が必要なことが理解でき、ユーザが行うべき作業を案内される。言い換えると、表示画面43を通じた視覚的な誘導により、良品ワークを置くタイミングと、不良品ワークを置くタイミングを取り違えるリスクを回避できる。
このようにして表示画面43の第二登録画面に表示された第二登録誘導情報に従い、ユーザが不良品ワークを置くと、撮像部21で新たに撮像した画像が表示画面43に表示される。具体的には、不良品候補画像となる現在の画像を、表示画面43にライブ画像LVIとして表示させる。この状態でユーザは、図31に示すように、不良品ワークを撮像した不良品候補画像となるライブ画像LVIを表示画面43上で確認できる。具体的には、不良品画像NGIとして登録する前に、大きさや視野等が問題無いかを視覚的に確認でき、登録可能と判断した上で不良品画像NGIを登録できる。図31の例では、第二登録誘導情報として「検出ワークあり(不良品)」状態の登録を指示するよう、「SET NG」を説明表示領域EDに表示している。一方、画像表示領域PDには、不良品候補画像となる画像をライブ画像LVIで表示する。
次にステップST106−1において、操作部51からの操作指示があったか否かを検出する。操作指示がない場合、すなわちユーザがSETキー42を押下していない場合は、ステップST107に進み、取消指示の有無を判定する。BACKキー45の押下が検出された場合は、ステップST102に戻る。BACKキー45の操作が検出されない場合は、ステップST106に戻って処理を繰り返す。
なお不良品画像NGIの登録に際しては、表示倍率変更機能を実施していない。なぜなら、後述する差分の取得等の画像処理に際して、良品画像OKIと不良品画像NGIの倍率を一致させる必要があるからである。このため、良品画像OKIの登録時に設定された表示倍率を、不良品画像NGIの登録時に維持することで、同じ倍率の画像をそのまま登録でき、後の画像作業をスムーズに行える。また、良品画像OKIと不良品画像NGIのスケールは概ね同程度のことが多いため、良品画像OKIで設定された倍率のままで不良品画像NGIも適切に撮像できる場合が多いと考えられる。
ただし、不良品ワークが良品ワークより大きい場合等、倍率を変更したい場合も考えられる。この場合は、不良品候補画像に対しても、前述した良品候補画像と同様、表示倍率の変更を追加してもよい。例えば図31に示す表示画面43において、「ZOOM」アイコンのような拡大縮小可能表示情報を表示させる。なお、この場合は、登録済みの良品画像OKIの表示倍率を不良品画像NGIの表示倍率と一致させるため、良品画像OKIを再登録することが好ましい。ただ、デジタルズーム等を用いて、良品画像OKIや不良品画像NGIの倍率を一致させるように拡大縮小させてもよい。この場合は、良品画像OKIを再撮像する手間を省くことができる。
一方で、ステップST106−1において、操作指示があった場合、すなわちユーザがSETキー42を押下した場合は、ステップST106−2に進み、画像表示領域PDに現在表示中のライブ画像LVIを不良品画像NGIとして登録する。
さらにステップST108に進み、登録された良品画像OKI及び不良品画像NGIを、良品画像記憶部541a及び不良品画像記憶部542aに保存する。なお、本実施の形態では、良品画像OKI及び不良品画像NGIが揃った時点で登録作業を行っているが、各々を登録するための操作があった時点で良品画像記憶部541aまたは不良品画像記憶部542aに保存するようにしてもよい。そしてステップST109に進み、良品画像OKIと不良品画像NGIから、閾値を算出し、さらに演算された閾値を設定する。このようにして、二点ティーチングを行い、良品画像OKIと不良品画像NGIから適切な閾値を自動的に演算して、閾値の設定までを行うことができる。設定された閾値は、表示画面43上に表示させてもよい。また、設定モードの登録画面から、運転時の運転画面に切り替えることで、閾値を確認できるようにしてもよい。例えば二点ティーチングの設定モード終了後に、運転モードに戻るようにすることで、図9に示す運転画面において、設定された閾値を表示画面43に表示させ、ユーザが数値を確認できるようにしてもよい。また、新たに設定あるいは更新された閾値を、表示画面43上で点滅表示させる等して、閾値が設定乃至更新されたことを示すように構成してもよい。
以上のように、SETキー42の一回の押下で、良品画像OKIの登録(ステップST102−2)と、不良品画像NGIの登録用画面への切り替え(ステップST106)が同時に行われる。また不良品画像NGIの登録(ステップST106−2)と、登録処理から閾値の算出(ステップST108以降)も、SETキー42の一回の押下で同時に行われる。これによってユーザはSETキー42を押すだけで、二点ティーチングの設定作業を進めることができる。言い換えると、複雑な操作を必要とせず、表示画面43に表示された誘導に従って、ワークWKを置く作業とSETキー42の押下とによって、良否判定に適した閾値を設定することが可能となる。
なお、これらの動作は、一回の操作で纏めて行えるようにすることで省力化が図られるが、その一方で、各動作を個別に指示するように構成することもできる。例えばSETキー42を操作して良品画像OKIの登録を行い、さらにSETキー42を操作して、不良品画像NGIの登録用画面への切り替えを行うように構成してもよい。
以上のようにして、良品画像OKIと不良品画像NGIとの差が顕著に表れるような特徴量の選択が可能となる。すなわち、差分を利用して良品と不良品のワーク領域を抽出するため、その領域内で特徴差が最大化するような調整が可能となる。また登録作業を簡単に行える利点が得られる。すなわち画像を見ながらSETキー42を押すだけで済み、従来の画像処理センサのようなツール枠やパラメータ設定を不要とできる。
(良品画像OKIと背景画像BGIを登録する二点ティーチングの手順)
以上の例では、良品画像OKIと不良品画像NGIの2つの画像を登録する二点ティーチングについて説明した。ただ、二点ティーチングはこれらの画像の組み合わせに限らず、他の画像とすることもできる。例えば良品画像OKIと、ワークWKの存在しない背景画像BGIの2つの画像を、二点ティーチングしてもよい。このような例を、図32のフローチャートに基づいて説明する。
まずステップST200において処理を開始し、ステップST201において、二点ティーチングモードへの切り替えの有無を判定する。ここでは、SETキー42の短押しの有無を判定する。短押しが検出された場合は、ステップST202に進み、検出されない場合は二点ティーチングモードの処理を中止する。
次にステップST202において、第一登録画面から第一画像の登録を行う。ステップST202開始時より、登録識別指示情報記憶部54hから、良品画像OKIを登録するための指示情報である第一登録誘導情報を読み出し、表示画面43に表示させる(図10)。ここで、ユーザに対して良品画像OKIとして登録すべき良品ワークを配置させ、撮像部21に撮像させるように、誘導表示制御部58aは第一登録誘導情報を表示画面43に表示し、ユーザを誘導する。ユーザはこのような表示により、良品ワークを置く動作が必要なことが理解でき、この誘導に従って良品ワークを配置するよう案内される。
ステップST202−1において、撮像部21で撮像した現在の画像を、表示画面43に表示させる。ここでは表示画面43はリアルタイムに表示内容を更新させるライブ画像LVIの表示状態となっている。この状態で、ユーザは良品ワークを撮像した良品候補画像となるライブ画像LVIを、図11に示すように表示画面43上で確認できる。具体的には、良品画像OKIとして登録する上で、大きさや視野等が問題無いかを確認した後に、問題がない場合は、SETキー42を押下し、問題がある場合は、SETキー42を押下しない。
具体的には、問題があった場合、すなわちユーザがSETキー42を押下していない場合は、ステップST203にて倍率変更指示の有無を確認し、ステップST204にて倍率を変更する。その後、ステップST205に進み、「戻る」指示があったか否かを判定する。「戻る」指示は、例えば図6の操作ボタン4Cの例においてBACKキー45の押下により判定される。BACKキー45は、ユーザが良品画像OKIの登録を中止する場合に操作するキーであり、BACKキー45の操作が検出された場合は、ステップST200に戻る。BACKキーの操作が検出されない場合は、ステップST202に戻って処理を繰り返す。
一方で、ステップST203において、問題がなかった場合、すなわちユーザがSETキー42を押下した場合は、ステップST202−2に進み、画像表示領域PDに現在表示中のライブ画像LVIを良品画像OKIとして登録する。ここまでの手順は、前述した図8に示す良品画像OKIと不良品画像NGIを登録する二点ティーチングの手順と同じである。
さらにステップST206において、第二登録画面から第二画像の登録を行う。具体的には、登録識別指示情報記憶部54hから、背景画像BGIを登録するための指示情報である第二登録誘導情報を読み出し、表示画面43に表示させる。ここでは、図33に示すように誘導表示制御部58aが第二登録誘導情報を表示画面43に表示させて、ユーザに対して背景画像BGIとして登録するために、良品ワークを撮像位置から除くように誘導する。ユーザは表示された第二登録誘導情報に従い、ワークを除去する動作が必要なことが理解でき、この段階で必要な動作が誘導される。言い換えると、表示画面43を通じた視覚的な誘導により、良品ワークを置くタイミングと、良品ワークを除くタイミングを取り違えるリスクを回避できる。
次にステップST206において、撮像部21で撮像した現在の画像(背景候補画像)を、表示画面43に表示させる。ここでは表示画面43には、背景画像BGIをライブ画像LVIで表示させる他、静止画像で表示させてもよい(図33)。すなわち、背景画像BGIはワークと異なり、視野や大きさの調整が不要なため、ワークWKがないことのみが確認されれば足りるので、ライブ画像LVIとせずとも目的を達成でき、また静止画像の表示とすることで処理を簡素化できる利点が得られる。背景画像BGIとして登録する上で問題がない場合は、SETキー42を押下する。なお、背景画像BGIの表示を省略してもよい。
次にステップST206−1において、SETキー42が押下されたか否かを検出する。SETキー42が押下されていない場合は、ステップST207に進み、「戻る」指示があったか否かを判定する。BACKキー45の操作が検出された場合は、ステップST202に戻る。BACKキー45の操作が検出されない場合は、ステップST206に戻って処理を繰り返す。
一方で、ステップST206−1において、SETキー42が押下された場合は、ステップST206−2に進み、画像表示領域PDに現在表示中の画像を背景画像BGIとして登録する。
さらにステップST208において、登録された良品画像OKI及び背景画像BGIを、良品画像記憶部541a及び背景画像記憶部543aに保存する。なお、本実施の形態では、良品画像OKI及び背景画像BGIが揃った時点で登録作業を行っているが、各々を登録するための操作があった時点で良品画像記憶部541aまたは背景画像記憶部543aに保存するようにしてもよい。そしてステップST209において、良品画像OKIと背景画像BGIから、閾値を算出して設定する。このようにして二点ティーチングを行い、良品画像OKIと背景画像BGIから適切な閾値を自動的に演算して、閾値の設定までを行うことができる。
以上のようにして、背景の影響を除去した判別処理が可能となる。すなわち、背景画像BGIを登録しておくことで、背景要素に影響を受け難いような評価が可能となる。
なお以上の例では、まず第一登録画面として良品画像OKIを登録し、次に第二登録画面として背景画像BGIを登録する手順を説明した。このように、ティーチング時に画像を登録する順序は、予め規定しておく。また、登録すべき画像や順序をユーザが間違わないように、前述した登録誘導情報が利用される。ただ、画像を登録する順序は、前記例に限らず、例えば背景画像BGIを先に登録して、次いで良品画像OKIを登録するなど、任意の順序として規定することも可能であることはいうまでもない。
(三点ティーチング)
以上は、良品画像OKIとそれ以外の画像の二点を登録する二点ティーチングについて説明した。ただ本発明は、登録する画像を二枚に限定せず、三枚以上の画像を登録することもできる。従来の画像処理センサは、一枚の画像のみを登録し、この画像に対して複数の画像処理ツールを設定可能としたものが多く、いいかえると、複数枚の画像を登録する画像処理センサは殆ど存在していない。ここで、ユーザ側の作業として、一枚の画像に対して複数の画像処理ツールを設定する作業を考えると、予め用意された複数の画像処理ツールの中から、ユーザが望む画像処理の検出に必要なツールを選択し、さらにこのツールを適用する領域としてウィンドウを設定したり、画像処理のパラメータを選択して、これらを設定、あるいは微調整する等の作業が必要であった。このような作業は、用意された各画像処理ツールの効用や用途を理解した、ある程度の知識を持ったユーザでないと、適切に行うことが困難であり、かつ作業自体も面倒という問題があった。
また、画像処理センサ側から見ても、良品画像OKIを1枚登録すると、画像全体として登録されることから、背景も含めた画像として登録されてしまう。このため、背景も含めて画像処理されて良否判定が行われる。背景部分は良品画像OKIのみならず不良品画像NGIにも存在するため、背景部分が大きいと、不良品画像NGIと良品画像OKIの差が小さくなって、不良品の検出がなされ難くなる。その一方で、日中と夜間で太陽光の光量が変化して、照明光の光量や色合いが変化すると、良品であっても背景部分の照明光の違いによって不良品と判定される虞が生じる。このように、従来の画像処理センサでは、対象となるワークWKの領域と背景との境界が判断できないことから、良品判定や不良品判定に際して本来は不要な背景の部分も含めて画像処理が行われる結果、良品と不良品の差が背景や照明光によっても左右され、検出したい良品と不良品の差に基づいた画像処理を適切に行えないことがあるという問題が生じていた。
これに対して本実施の形態では、良品画像OKI、不良品画像NGI、背景画像BGIの3枚を登録することで、背景を除外した良品ワークや不良品ワークを抽出でき、良否判定の精度を向上させることができる。具体的には、良品画像OKIのみならず背景画像BGIを登録することで、背景など不要な部分を抽出してこれを判定対象から除外することができる。さらに、これらの画像の登録に際しても、3枚の画像を順次登録するだけで、適切な閾値を演算、設定できるようにして、従来のようにウィンドウを設定したり画像処理パラメータを設定する等の面倒な作業を不要とでき、設定作業自体の大幅な省力化が実現される。
より具体的には、本実施の形態においては、三点ティーチングとして、良品画像OKI、不良品画像NGI、背景画像BGIの3枚を登録し、これら3枚の画像により、良品画像OKIと背景画像BGIの差分、及び不良品画像NGIと背景画像BGIの差分を抽出する。これにより、背景を除外した良品ワーク、不良品ワークが抽出できる。
図34Aに、良品画像OKIから背景画像BGIを除いて、良品ワークのみを抽出する単純差分画像を生成する例を示す。また図34Bには、不良品画像NGIから背景画像BGIを除いて、不良品ワークのみを抽出した単純差分画像を生成する例を示している。このような差分画像は、2枚の画像の対応する画素同士を減算して、差分を得ている。
ただ本明細書において「差分」とは、このような対応画素同士を減算する単純差分処理に限定されない。例えば、背景との共通要素を除外することで、ワーク領域を特定することも含む意味で使用する。
(三点ティーチングの手順)
ここで、設定モードにおいて、良品画像OKI、不良品画像NGI、背景画像BGIの三枚の画像を登録する三点ティーチングを行う手順について、以下図35のフローチャートと図36〜図38に基づいて説明する。
まずステップST300において処理を開始し、ステップST301において、三点ティーチングモードへの切り替えの有無を判定する。ここでは、SETキー42の長押しの有無を判定する。具体的には図9に示す表示画面43の運転画面から、SETキー42が押下された時間を計測し、所定の秒数(例えば3秒)以上の場合は長押しと判定する。長押しが検出された場合は、ステップST302に進み、検出されない場合は三点ティーチングモードの処理を中止する。図35の例ではステップST300に戻る。なお、短押しの場合に前述した二点ティーチングモードに移行させてもよい。
次にステップST302において、第一登録画面から第一画像の登録を行う。ここでは、撮像した画像を表示画面43に表示させる。具体的には、まず登録識別指示情報記憶部54hから、良品画像OKIを登録するための指示情報である第一登録誘導情報を読み出し、表示画面43に表示させる。ここで、ユーザに対して良品画像OKIとして登録すべき良品ワークを撮像位置に置き、撮像部21に撮像させるように、誘導表示制御部58aは第一登録誘導情報を表示画面43に表示させて誘導する。ユーザはこのような表示により、良品ワークを置く動作が必要なことが理解でき、この誘導に従って良品ワークを置くよう案内される。
さらに撮像部21で撮像した現在の画像を、表示画面43に表示させる。ここでは表示画面43はリアルタイムに表示内容を更新させるライブ画像LVIの表示状態となっている。この状態で、ユーザは良品ワークを撮像した良品候補画像となるライブ画像LVIを、図36に示すように表示画面43上で確認できる。具体的には、良品画像OKIとして登録する上で、大きさや視野等が問題無いかを確認し、問題がない場合は、SETキー42を押下する。
なお図36の例では、登録すべき画像の順序を示す登録順序情報を説明表示領域ED上に表示させている(詳細は後述)。また、拡大縮小可能表示情報として「ZOOM」アイコンも設けている。ここでは登録順序情報を説明表示領域EDの上段に、拡大縮小可能表示情報を下段に、それぞれ配置しているが、この配置例に限定されるものでない。さらに画像表示領域PDにおいて、ワークWKの相違点を収めるガイド線を表示させている(詳細は後述)。
次にステップST302−1において、操作部51からの操作指示があったか否かを検出する。操作指示がない場合、すなわちユーザがSETキー42を押下していない場合は、ステップST303に進み、倍率変更指示の有無を検出する。ここでは、増減調整部51hの操作の有無、図6に示す表示面4aの例では、増減ボタンである上下キー44の押下の有無を検出する。ステップST303において増減調整部の操作が検出された場合は、ステップST304に進み、表示倍率を変更する。その後、ステップST305に進む。あるいはステップST302に戻って表示を繰り返してもよい。一方、ステップST303において増減調整部の操作が検出されない場合は、ステップST305に進み、取消指示の有無を判定する。ここでは「戻る」指示があったか否かを判定する。具体的には、BACKキーの操作が検出された場合は、ステップST300に戻り、BACKキーの操作が検出されない場合は、ステップST302に戻って処理を繰り返す。あるいは三点ティーチングを中止して図9の運転画面に戻ってもよい。
一方で、ステップST302−1において、操作指示があった場合、すなわちユーザがSETキー42を押下した場合は、ステップST302−2に進み、画像表示領域に現在表示中のライブ画像LVIを良品画像OKIとして登録する。
さらにステップST306において、第二登録画面において第二画像の登録を行う。具体的には、登録識別指示情報記憶部54hから、不良品画像NGIを登録するための指示情報である第二登録誘導情報を読み出し、表示画面43に表示させる。ここでは、誘導表示制御部58aが第二登録誘導情報を表示画面43に表示させて、ユーザに対して、不良品画像NGIとして登録すべき不良品ワークを撮像位置に置くように誘導する。
さらに撮像部21で撮像した現在の画像(不良品候補画像)を、表示画面43に表示させる。このような第二登録画面の例を図37に示す。ここでは不良品候補画像を、画像表示領域PDにライブ画像LVIとして表示させている。ユーザは不良品画像NGIとして登録すべく、必要に応じて撮像位置や姿勢、倍率の調整を行い、ライブ画像LVI上で登録できると判断した場合は、SETキー42を押下する。
次にステップST306−1において、操作部51からの操作指示があったか否かを検出する。操作指示がない場合、すなわちユーザがSETキー42を押下していない場合は、ステップST307に進み、取消指示があったか否かを判定する。ここで「戻る」指示、例えばBACKキー45の押下が検出された場合は、処理を中止してステップST301に戻る等、所定の動作を行う。BACKキー45の押下が検出されない場合は、ステップT306に戻って処理を繰り返す。
一方で、ステップST306−1において、操作指示があった場合、すなわちユーザがSETキー42を押下した場合は、ステップST306−2に進み、現在画像表示領域PDに表示中のライブ画像LVIを不良品画像NGIとして登録する。
さらにステップST308において、第三登録画面において第三画像の登録を行う。具体的には、背景画像BGIを登録するための指示情報である第三登録誘導情報を読み出し、表示画面43に表示させる。ここでは、誘導表示制御部58aが第二登録誘導情報を表示画面43に表示させて、ユーザに対して背景画像BGIを撮像すべく、不良品ワークを撮像位置から除くように促す。ユーザは表示された第三登録誘導情報に従い、ワークWKの除去が必要なことを指示され、必要な作業、すなわちワークWKのない背景画像BGIを撮像するよう誘導される。これによって撮像された背景画像BGIが画像表示領域に表示される。このような第三登録画面の例を図38に示す。なお背景画像BGIは、ライブ画像LVIとする他、前述の通り静止画像として表示させることができる。すなわち、背景画像BGIはワークWKと異なり、視野や大きさの調整が不要なため、ワークWKがないことのみが確認されれば足りるので、ライブ画像LVIとせずとも目的を達成でき、また静止画像の表示とすることで処理を簡素化できる利点が得られる。あるいは、背景画像BGIの表示を省略してもよい。背景画像BGIとして登録する上で問題がない場合は、SETキー42を押下する。
さらにステップST308−1において、操作部51からの操作指示があったか否かを検出する。操作指示がない場合、例えばユーザがSETキー42を押下していない場合は、ステップST309に進み、取消指示があったか否かを判定する。「戻る」指示として、例えばBACKキー45の操作が検出された場合は、ステップST306に戻る等の所定の処理を行う。BACKキー45の操作が検出されない場合は、ステップST308に戻って処理を繰り返す。
一方で、ステップST308−1において、操作指示があった場合、例えばユーザがSETキー42を押下した場合は、ステップST308−2に進み、画像表示領域PDに現在表示中の画像を背景画像BGIとして登録する。
さらにステップST310において、登録された3枚の画像を、静止画像記憶部54aに保存する。そしてステップST311において、良品画像OKIと不良品画像NGIと背景画像BGIから、閾値を算出して設定する。このようにして、三点ティーチングを行い、良品画像OKIと不良品画像NGIと背景画像BGIから適切な閾値を自動的に演算して、閾値の設定までを行うことができる。
この三点ティーチングの例では、第一登録画面において良品画像OKIを登録する際にのみ、拡大縮小機能を機能させ、第二登録画面や第三登録画面では拡大縮小機能を働かせていない。すなわち、第一登録画面で設定した倍率で固定したまま、第二画像と第三画像を登録することとし、このような拡大縮小機能を自動でON/OFFさせる制御によってユーザの設定作業の繁雑さや混乱を避け、操作の簡略化を図っている。ただ、第二登録画面や第三登録画面で拡大縮小機能をONさせてもよい。
また以上説明した三点ティーチングの例では、まず第一登録画面として良品画像OKIを登録し、次に第二登録画面として不良品画像NGIを、さらに第三登録画像として背景画像BGIを登録する手順を説明した。ここでも、画像を登録する順序は前記に限定されず、例えば背景画像BGIを先に第二登録画像として登録して、次いで不良品画像NGIを登録するなど、任意の順序として規定することも可能であることはいうまでもない。
(良品画像OKI又は背景画像BGIを登録する一点ティーチングの手順)
さらに、良品画像OKI又は背景画像BGIを登録する一点ティーチングの手順を、図39に基づいて説明する。まずステップST401において、背景画像BGIを取得する。例えば図40に示すような背景画像BGIを登録する。
次にステップST402において、予め設定された応答時間設定に基づいて、背景画像BGIを低解像度化する。
さらにステップST403において、画面全体を評価領域として設定する。例えば図40の背景画像BGIに対して、図41において枠状で示すように評価領域が自動的に設定される。
さらにステップST404において、特徴量を抽出する。具体的には、まずステップST404−1において、評価領域内の背景画像BGIの特徴量を抽出する。例えば、図41の背景画像BGIに対して、エッジ点数が0点、輝度平均が70等の特徴量が得られる。
次にステップST404−2において、各特徴量に対し、評価の重み付けを決定する。例えばエッジ点数の50%、輝度平均の50%を、良否判定の特徴量として選択する。
さらにステップST404−3において、閾値を設定する。例えばエッジ点数と輝度平均に対して、閾値を自動的に設定する。
このようにして設定モードが終了すると、運転モードに移行する。運転モードにおいて、ステップST405では、入力画像の評価を行う。なお、ここではサーチは行わない。
(判別対象が不良品ワークである場合の設定)
前述した判別対象の選択機能は、マスター画像を良品画像OKIまたは不良品画像NGIのいずれかに切り替えるモードであるから、良品及び不良品を登録対象とする2点ティーチングモードあるいは3点ティーチングモードに紐付く機能である。ここでは、良品画像OKI、不良品画像NGI、背景画像BGIの順で画像登録を行う3点ティーチングモードの例を基にして、判別対象が不良品ワークである場合の設定手順について説明する。ここでは、判別対象が不良品ワークである場合の設定の動作手順について、以下図42のフローチャートに基づいて説明する。図42は、判別対象が不良品ワークWKである場合の設定の動作手順を示すフローチャートである。
まずステップST450にて処理を開始し、ステップST451において、撮像部21でワークWKを撮像し、表示画面43にライブ画像LVIを表示する。ステップST452において、SETキー42の押下の有無を判定する。SETキー42の押下が検出された場合は、ステップST453に進み、ライブ画像LVIを良品画像OKIに登録する。SETキー42の押下が検出されない場合は、ステップST451に戻り、ライブ画像LVIを更新する。ステップST454〜ステップST459については、ステップST451〜ステップST453と同様に、ライブ画像LVIを表示して、SETキー42の押下の有無を判定し、ライブ画像LVIを不良品画像NGIと背景画像BGIとにそれぞれ登録する。
ステップST460に進み、3つの登録画像から不良品画像NGIをマスター画像として登録処理を実行する。図35A、図35Bに示す、判別対象が良品ワークWKである場合との動作手順の主な違いは、判別対象が良品ワークWKである場合には、良品画像OKIをマスター画像として登録処理を行うのに対して、判別対象が不良品ワークWKである場合には、この不良品画像NGIをマスター画像として登録処理を行う点である。
最後に、ステップST461において閾値を算出して設定する。具体的には、判別対象が良品ワークWKである場合には、一致度算出部57cにて、良品画像OKIに応じたモデルパターンに対する不良品画像NGIの特徴一致度合いを示す第一の一致度を算出し、閾値算出部56cにて、第一の一致度に基づいて、運転モードにて用いられる第一閾値を算出するのに対して、判別対象が不良品ワークWKである場合には、一致度算出部57cにて、不良品画像NGIに応じたモデルパターンに対する良品画像OKIの特徴一致度合いを示す第二の一致度を算出し、閾値算出部56cにて、第二の一致度に基づいて、運転モードにて用いられる第三閾値を算出する。
(好ましい登録状態)
設定モードにおいて画像を画像/設定記憶部54に登録するにあたっては、好ましい登録設定条件にて登録を行う。ここで好ましい登録設定条件とは、運転モードにおいて良否判定部57dが良否判定を行う際、良品と不良品を安定して判別できるような条件である。この判定に際しては、良品と不良品とをいかにして安定して区別できるかが重要となる。良否判定部57dは、運転モードにおいて、入力される入力ライブ画像LVIと良品画像OKIとの一致度を評価値として、良否判定を行う。入力ライブ画像LVIに対して、一致度算出部57cで算出される一致度は、0%〜100%の評価値が算出されることになる。入力ライブ画像LVIが良品を撮像した良品画像OKIの場合、その一致度は理想的には100%と算出される。ただし入力ライブ画像LVIが不良品を撮像した不良品画像NGIの場合、一致度は一般に0%とならない。なぜなら、不良品画像NGIは多くの場合、良品画像OKIの一部が欠けや割れなどによって異なるため、良品画像OKIと一致している部分を含んでいるからである。
(閾値)
良否判定の基準となる閾値は、不良品の一致度と良品の一致度に基づいて決定される。例えば、閾値算出部が、一般に高くなる良品の一致度と、一般に低くなる不良品の一致度との中間の値を、閾値に設定する。ここで、良品と不良品とを安定的に区別、すなわち判定結果を安定させるためには、良品の一致度と不良品の一致度との差が大きくなるように、両者を極力分離させることが好ましい。このことから、良品に対する一致度のばらつきが一定とみなせる条件下では、不良品の一致度が低く算出される程、良品と不良品の一致度の差が大きくなるように分離されて、安定した良否判定が期待できるので、よい登録状態と考えられる。よって、良品と不良品が分離され安定した判定結果が得られるように、撮像する画像の明るさや解像度、画像処理の条件を求めることが必要となる。これによって良否判定の基準となる閾値を適切に設定できるようになる。
なお一致度算出部57cと閾値算出部56cは、図7のブロック図の例では別部材としたが、本発明はこの構成に限られず、例えば一致度算出部57cと閾値算出部56cを同一の部材で構成してもよい。
(閾値算出部56cが閾値を設定する方法)
良否判定の基準となる閾値の設定は、閾値算出部56cで行われる。閾値算出部56cは、一致度算出部57cで算出された不良品画像NGIの一致度と、良品画像OKIの一致度との間に閾値を設定する。閾値は、良品画像OKIと不良品画像NGIの一致度の中間に設定されることが望ましい。一例として、良品画像OKIの一致度を100%とした場合、不良品画像NGIの一致度に応じて閾値を設定する例を図43の表に示す。例えば、不良品画像NGIの一致度が80%である場合は、閾値は、(100%+80%)/2=90%に設定される。同様に不良品画像NGIの一致度が70%である場合は、閾値は(100%+70%)/2=85%に設定される。また不良品画像NGIの一致度が60%である場合は、閾値は(100%+60%)/2=80%に、一致度が50%である場合は、閾値は(100%+50%)/2=75%に、それぞれ設定される。
このように、不良品画像NGIの一致度が低いほど、良品画像OKIと不良品画像NGIが分離されて良否判定の安定性がよくなると考えられる。よって、画像/設定記憶部54における画像の登録に際しては、このように不良品画像NGIの一致度が低くなるような画像の登録状態を目指す。図43の例では、閾値の最も低い50%が、良品画像OKIと不良品画像NGIの一致度の差が最も大きく、好ましい。
(登録時における特徴量の決定)
その一方で、度閾値の差が最も低い特徴量のみで良否判定を行うと、特定の場合に誤判定を生じることがある。例えば、良品画像OKIと不良品画像NGIの一致度が表1に示すような値を示す特徴量A〜Dにおいては、特徴量Dが最も良品画像OKIと不良品画像NGIで一致度の差が大きく、好ましいといえるが、特定のノイズ耐性が低下することがある。
そこで、一の特徴量で良否判定を行うのでなく、他の特徴量も参酌して良否判定の評価を行うことで、良否判定結果を安定させることができる。例えば表1の場合、特徴量Dのみで良否判定を行うのでなく、良品と不良品を判別できている他の特徴量A、Bも評価する。
(重み付け設定部56e)
ここで画像処理センサは、設定モードにおいて、複数の異なる画像処理アルゴリズム毎の第一一致度に応じて、閾値算出部56cにより閾値を算出する際に用いる重み付けを画像処理アルゴリズム毎に設定するための重み付け設定部56eを備えることもできる。
複数の特徴量を組み合わせた評価を行うため、例えば複数の特徴量に対して重み付けを行う。重み付けは、良品と不良品との一致度の差が大きいものほど重み付けを大きく、逆に一致度の差が小さいものほど重み付けを小さくする。例えば、表1の例では、特徴量Aに対して40%、特徴量Bに対して10%、特徴量Cに対して0%、特徴量Dに対して50%の重み付けを行う。この場合、特徴量Cは重み付けが0%であって算出しても評価されないことから、良否判定の評価実行時には処理を行わなくてもよい。
このような特徴量の重み付けは、前述の特徴量抽出部56bで行うことができる。登録モード、運転モードのいずれにおいても、一致度の算出は一致度算出部57cで行われる。一致度算出部57cは、登録時に算出した重み付けに基づき、入力画像に対して一致度を算出する。例えば、表1の特徴量A〜Dを、前述した重み付けで評価する場合の一致度の最終スコアは、
(特徴量Aのスコア)x(特徴量Aの重み)+(特徴量Bのスコア)x(特徴量Bの重み)+(特徴量Cのスコア)x(特徴量Cの重み)+(特徴量Dのスコア)x(特徴量Dの重み)で算出できる。
(ガイド線)
前述した図36等の例では、画像表示領域PDにおいて、ワークWKの位置決めの指標となるガイド線を示している。これらのガイド線は、四隅をL字状に囲む枠状に表示されている。このようにすることで、例えば検査対象物であるワークWKの内、不良品であることが現れる部位等、特徴的な部分がガイド線の枠内に含まれるように配置するよう、ユーザに位置合わせを促すことができる。いいかえると、重要な画像が中心近傍に配置されるようにユーザに意識させる効果が得られ、この結果、特徴差に重みを付けた評価が期待され、一致度の判定を安定的に行わせ、信頼性の高い判定結果を得ることができる。またガイド線は、このような枠状に限られず、他の態様、例えば画像表示領域PDの中央を通る十字線や的状とするなど、ワークWKを中心に配置させるように誘導する表示を適宜採用できる。なおガイド線の表示は、ON/OFFを切り替え可能としてもよい。
なお、前述した図11、図33の例では、第一登録誘導情報として文字情報を二列で表示させる例を説明したが、文字情報を一列で表示させてもよい。このような例を図44、図45に示す。図44は、第一登録画面において良品画像OKIを登録させるための第一登録誘導情報として、「OK SET」を説明表示領域EDに表示させている。また図45は、第二登録画面において背景画像BGIを登録させるための第二登録誘導情報として、「BG SET」を説明表示領域EDに表示させている。
(登録順序情報)
さらに、登録誘導情報として、登録順序を示す登録順序情報を含めてもよい。例えば図44の第一登録画面では「1」、図45の第二登録画面では「2」を、ぞれぞれ表示させており、これらの表示からユーザは画像登録の段階を視覚的に把握することができる。このように登録誘導情報には、文字列のみならず、数字を用いることもできる。また数字は、画像の登録順序の他、表示画面の種類を示してもよく、例えば第一登録画面で「1」、第二登録画面で「2」、第三登録画面で「3」を表示させてもよい。
(誘導情報)
また以上の例では、表示制御部58fが誘導情報として文字情報を表示画面43に表示させた例を説明したが、本発明は文字による案内に限られず、図形や音声、あるいはこれらの組み合わせ等、他の態様でユーザに対して、登録の手順を誘導することもできる。一例として、文字に図柄を組み合わせて登録指示を行う例を、図46及び図47に示す。図46は、「検出ワークあり」状態での登録を指示する第一登録誘導情報として、ワークWKを撮像位置に置く様子を図形で示しており、前述した図11や図44に対応する。この図においても、表示領域で表示されるライブ画像LVIの拡大縮小表示が可能であることを示すために、説明表示領域EDに拡大縮小可能表示情報として「ZOOM」アイコンを表示させてもよい。またこのような拡大縮小可能表示情報は、図11の例のように横書きにする場合に限られず、図46のように縦書きで示すこともできる。これにより、限られた面積の表示領域を有効に活用することができる。
また図47は「検出ワークなし」状態の登録を指示するための第二登録誘導情報として、ワークWKを撮像位置から除く様子を図形で示しており、図33等に対応する。このように図形を表示部に示すことで、行うべき動作を視覚的に指示して、操作に不慣れなユーザに対しても判り易い操作環境を提供できる。また、図形は静止画に限らず、動画像で表示させることもできる。例えば手でワークWKを置く様子やワークWKを除去する様子を、動画像、例えばアニメーションで表示させることで、ユーザに対して行うべき操作を一層判り易く指示できる。
(表示切り替え)
さらに表示部53は、複数の画面表示を切り替えて表示可能としてもよい。例えば、前記の図46、図47の例では画像表示領域PDと説明表示領域EDを、一画面で同時に表示させているが、図48、図49に示すように、画像表示領域PDと説明表示領域EDとを切り替えて表示させることもできる。あるいは、画像表示領域PDと説明表示領域EDとの切り替えに限られず、画像を切り替えて表示させてもよい。例えば図50に示すように、第二登録画面において、登録しようとしている候補画像と、登録済みの良品画像OKIとを切り替えて表示させる。これにより、画像と共に説明も表示させることができるので、どの画像が何を表示させているのかを一層把握し易くなり、さらに切り替えて表示させることにより、両画像の対比も行うことができる。あるいは図51に示すように、第二登録画面において、登録しようとしている候補画像と、後述する並列表示(ここでは良品画像OKIと候補画像)とを切り替えて表示させることもできる。このようにして、限られた表示画面43の表示面積を更に有効に活用でき、特に表示画面43の表示面積が狭い場合に、表示される画像や文字が小さくなったり、高解像度の表示画面43を用意する必要が生じるといった問題を回避できる。画面の切り替えは、一定周期で交互に表示を自動的に切り替えることができる。または、このような自動的な交互表示機能の他、ユーザが切り替えボタン等を操作して手動で行うようにしてもよい。
(並列表示機能)
また二点ティーチングや三点ティーチングにおいて、複数の画像を一画面で並べて表示させることもできる。例えば、設定モードにおいて一方の画像を登録した後、他方を登録する際に、登録済みの画像を静止画像として表示し、現在登録中の画像をライブ画像LVIとして表示する。このような並列表示の例を図52に示す。この図は、二点ティーチングの第二登録画面を示している。ここでは、予め二点ティーチングの第一登録画面において、第一画像として良品画像OKIを登録しているものとする。この状態で第二画像として不良品画像NGIを登録する第二登録画面において、図52に示すように表示画面43の画像表示領域PDに、第一画像を表示させる第一画像表示領域と、第二画像を表示させる第二画像表示領域を設ける。これにより、登録済みの良品画像OKIを参酌しながら、ユーザは不良品画像NGIを登録することができる。このような第二登録画面は、前述した図31や図33等に代えて利用できる。また第二登録画面に限らず、第三登録画面に際しても、このような並列表示機能を適用できる。
(静止画像・ライブ画像LVI同時表示機能)
さらに並列表示に際して、一部の画像を静止画像として表示させ、他の画像をライブ画像LVIとして表示させることもできる。すなわち、登録済みの画像は静止画として表示させつつ、これから登録しようとする画像をライブ画像LVIとして表示させることで、ワークWKの位置や照明などを変化させた状態をリアルタイムで確認しながら、最適な状態に調整することが容易となる。例えば図52の例では、右側の第一画像表示領域に第一画像として良品画像OKIを静止画像として表示させ、左側の第二画像表示領域においては第二画像として登録する不良品画像NGIのライブ画像LVIを表示させている。ユーザは、右側の良品画像OKIを見ながら、不良品の姿勢や大きさなどが良品画像OKIのそれと一致するように、置き方を調整することができる。また、照明の光量なども合わせて調整できる。これにより、良品画像OKIと不良品画像NGIを、同じ部分が合致しやすいよう、いいかえると差分を抽出する際に相違点が浮き彫りになりやすい状態として登録することができるので、より高精度な一致度の算出が容易となり、またこれらを区別する閾値の設定に際しても有利となる。また、既に登録済みの良品画像OKIに対しても、これを表示させることでユーザは先に登録した良品画像OKIが正しく登録されているかを確認することができる。例えば、良品画像OKIに対する意図せぬ背景の見切れなどが発生している場合にはこれに気付くことができ、撮像し直しなどの判断材料となる。さらに表示部53の画面上で良品画像OKIと不良品画像NGIを並べて表示させることで、ワークWKの実物が画面上ではどのような差異として映るかを比較することが可能となる。このように登録された画像の様子をユーザが意識できる状態とすることで、良好な登録状況を作り出し易くなり、検出の安定化に繋げることができる。
このような静止画像・ライブ画像LVI同時表示機能を実現する手順の一例を図53のフローチャートに示す。ここでは、図8の二点ティーチングにおけるステップST108の詳細なフローに該当する。まずステップST501において、ライブ画像LVIを取得する。ここでは、第二画像として不良品候補画像となる光学画像を撮像部でライブ画像LVIを撮像する。次にステップST502において、ライブ画像LVIを保持するメモリの内容を更新する。具体的には、前回ライブ画像LVIを撮像してライブ画像記憶部54bに収納されたデータを、新たに取得したライブ画像LVIのデータで上書き保存する。なお、ライブ画像記憶部54bはライブ画像LVI用の専用メモリとしてもよいし、共通のメモリとしてもよい。次にステップST503において、保存されたライブ画像LVIと、第一登録画面で登録済みの良品画像OKIとを読み出す。そしてステップST504において、これらの画像を表示画面に転送する。ここでは、良品画像OKIを静止画像で、不良品候補画像をライブ画像LVIで、第二登録画面にて表示させる。以下、これらのステップを繰り返して、表示部53の表示内容を更新させるリアルタイム表示を実現している。このようにして、不良品画像NGIの登録に際してライブ画像LVIで表示させつつ、静止画像の良品画像OKIを参酌しながら、不良品のワークを置く位置や姿勢等を調整し、調整後の画像をリアルタイムで表示部上で確認できるようにして、所望の画像の登録作業を容易に行える環境が提供される。
以上の例では、第一登録画面において登録された良品画像OKIを、第二登録画面において静止画として表示し、不良品画像NGIをライブ画像LVIとして表示させる例を説明したが、本発明はこの構成に限られず、例えば第一登録画面において登録された良品画像OKIを、第二登録画面において静止画として表示し、背景画像BGIをライブ画像LVIとして表示させることもできる。あるいは逆に、第一登録画面において背景画像BGIや不良品画像NGIを登録し、第二登録画面に置いてこれら登録済み画像を静止画で表示させながら、良品画像OKIをライブ画像LVIで表示させながら登録することもできる。さらに、この静止画像・ライブ画像LVI同時表示機能は二点ティーチングに限らず、三点ティーチングにおいて用いることもできる。すなわち、第一登録画面において登録された良品画像OKIを、第二登録画面において静止画として表示し、不良品画像NGIをライブ画像LVIとして表示させ、さらに第三登録画面においても良品画像OKIを静止画として表示させつつ、背景画像BGIをライブ画像LVIとして表示させることもできる。または、第三登録画面において不良品画像NGIを静止画として表示させつつ、背景画像BGIをライブ画像LVIとして表示させてもよい。
あるいは、三点ティーチングにおいて並列表示や静止画像・ライブ画像LVI同時表示を、単独表示と組み合わせてもよい。例えば不良品画像NGIを第二登録画面で登録する際には、静止画像の良品画像OKIとライブ画像LVIの不良品候補画像との並列表示を行わせつつ、第一登録画面で良品画像OKIを登録する際、及び第三登録画面で背景画像BGIを登録する際には、単独の画像表示とする。特に背景画像BGIは、一般にはそのまま撮像すれば足りることが多いため、並列表示を不要とすることで処理の簡素化が図られる。
このような並列表示画面として、例えば登録済みの画像と、現在のライブ画像LVIとを並べて表示させる。一例として図52に示す表示部は、登録済みの良品画像OKIと、不良品候補画像として現在のライブ画像LVIとを並べて表示させている。この場合において、通常の登録画面と並列表示画面とを切り替えて表示させてもよい。例えば前述した三点ティーチングに際して、図37に示す第二登録画面と、図52に示す並列表示画面とを切り替え表示可能とすることができる。これにより、不良品画像NGIの登録に際して、良品画像OKIと対比しながら登録することができる。同様に、背景画像BGIの登録に際しても、例えば図38に示す第三登録画像を表示する際、図54に示す、登録済み不良品画像NGIと、現在登録中の、背景候補画像としての画像(静止画像又はライブ画像LVI)とを並べて表示させた並列表示画面とを切り替えて表示させてもよい。あるいは、並列表示画面は、不良品画像NGIと背景画像BGIの組み合わせ出なく、良品画像OKIと背景画像BGIの組み合わせとしてもよい。さらに並列表示画面は、二枚の画像を並列表示させる構成に限られず、3枚以上の画像を一画面に表示させてもよい。
なお、以上の例では画像表示領域PDと説明表示領域EDを分けているが、これらを部分的に重ね合わせて表示させたり、オーバーラップさせてもよい。例えば図55の例では、画像表示領域PDと説明表示領域EDを部分的にオーバーラップさせて、第一登録誘導情報である文字情報を表示させている。あるいは図56に示すように、画像表示領域PDと説明表示領域EDを完全にオーバーラップさせて文字情報を表示させてもよい。また、画像表示領域PDと説明表示領域EDとに区別することなく、これらを統合して、画像の表示中に第一登録誘導情報を組み込んで表示させることもできる。このようにして、限られた表示部の領域を有効に活用できる。このように、本実施形態においては画像表示領域PDと説明表示領域EDとを排他的に設けたり、境界を明確に区切る必要は必ずしもなく、一部あるいは全部が重なるように配置したり、これらを渾然一体に統合する等して、画像上に文字情報を重ねるような態様も含む。
なお、これらの例では、表示部における文字列やアイコンの表記は英語としているが、言語は英語に限られず、日本語やその他の言語としてもよいことはいうまでもない。
このように、設定モードにおける設定作業を、SETキー42の押下で進められるように案内することで、画像処理センサの動作原理等を理解していない初心者であっても簡単に利用できるという優れた利便性を発揮する。
(上下キー44による画像倍率の増減の手順)
画像登録の際には、上下キー44または上下表示4315dは、画像の倍率を増減するためのスイッチとして機能する。画像の倍率を増減する手順について、以下図57のフローチャートと図29Aとに基づいて説明する。なお、特に言及しない限り、ここでの上下キー44を押下する動作は、上下表示4315dをタッチする動作を含むものとする。
まずステップST550において画像登録処理を開始し、ステップST551において、撮像部52にてライブ画像LVIを取得し、ステップST552において、表示画像を常時更新している。ステップST553において、上下キー44の上キー44aまたは下キー44bの押下の有無を判定する。上下キー44の押下が検出された場合は、ステップST554に進み、上キー44aが押下されていれば画像倍率を拡大する設定変更を行い、下キー44bが押下されていれば画像倍率を縮小する設定変更を行う。そして、ステップST551に戻り、変更された画像倍率にて撮像を行い、ライブ画像LVIを取得する。上下キー44の押下が検出されない場合は、ステップST555において、SETキー42の押下の有無を判定する。SETキー42の押下が検出されていなければ、ステップST551に戻り、変更のない画像倍率にてライブ画像LVIを取得する。
ステップST555において、SETキー42の押下が検出された場合、ステップST556に進み、表示画像を登録画像として登録する。次にステップST557にて、画像登録処理を行う。画像登録処理が完了すると運転が開始される。
(第一閾値及び第二閾値の設定)
ここで、設定モードにおいて、第一閾値及び第二閾値の設定を行う手順について、以下図58のフローチャートと図22Aに基づいて説明する。
まずステップST600において処理を開始し、ステップST601において、第一閾値設定を表示する。ステップST602において、上下キー44の押下の有無を判定する。上下キー44の押下が検出された場合は、ステップST603に進み、第一閾値設定値を変更し、閾値(第一、第二)記憶部54gに記憶する。検出されない場合は、ステップST604に進み、第一閾値設定値を保持する。このとき、図22Aの左側の図の例では、出力チャネル1には第一閾値が設定されている。
ステップST603またはステップST604のいずれを経由しても、ステップST605に進み、MODEキー46の押下の有無を判定する。MODEキー46の押下が検出された場合は、ステップST606に進み、第二閾値設定を表示する。ステップST607において、上下キー44の押下の有無を判定する。上下キー44の押下が検出された場合は、ステップST608に進み、第二閾値設定値を変更し、閾値(第一、第二)記憶部54gに記憶する。検出されない場合は、ステップST609に進み、第二閾値設定値を保持する。このとき、図22Aの右側の図の例では、出力チャネル2には第二閾値が設定されている。
ステップST608またはステップST609の手順を実行した後、第一閾値及び第二閾値の設定は終了する。またステップST605において、MODEキー46の押下が検出されない場合は、第二閾値は設定されずに終了する。
(運転モード)
以上のようにして画像の一致度に対する閾値の設定が終了すると、設定モードから運転モードに移行させることができる。運転モードにおいては、実際に搬送ライン上を搬送されるワークの画像を撮像し、得られた入力画像に対して一致度を算出し、閾値と比較して良品や不良品の判定を行う。また、運転モードにおける判定結果に応じて、所望の判定結果が得られていない場合、あるいはより精度を高めた設定に調整したい場合等は、再度設定モードに移行して、設定の更新を行うことができる。あるいは、運転モードの最中において、一時的に登録設定条件を変更することも可能である。例えば、良否判定の結果に応じて、閾値を微調整する(詳細は後述)。
このような運転モードと設定モードの切り替えは、運転/設定モード切替部から行う。運転/設定モード切替部の一例として、図6の画像処理センサではSETキー42を用いている。ここでは、図59に示すように、SETキー42を押下することで運転モードと設定モードとを切り替え可能としている。例えば前述した設定モードにおいて、必要な画像の登録が終了した状態でSETキー42を押下すると、運転モードに切り替わる。ここで、前述した設定モードにおいては、第一登録画面から第二登録画面に移行する等、画面遷移を指示するためにSETキー42を用いていた。そして最終の設定が終了した段階でSETキー42を押下することで、設定モードから運転モードに切り替えることができる。このように、設定モードにおける画面遷移の手段と、設定モードから運転モードへの切替手段を、共通の操作、ここではSETキー42の押下とすることで、ユーザにおいては、SETキー42を押す作業の繰り返しで、必要な設定を行い、さらに設定モードから運転モードへの切り替えも行え、スムーズな設定作業が実現される。さらに、設定モードから運転モードへの切り替えは、設定モードにおける最終作業と共通化することもできる。例えば図59に示す三点ティーチングでは、第一登録画面においてSETキー42を押下することで良品画像OKIを登録し、第二登録画面においてSETキー42を押下することで不良品画像NGIを登録し、さらに第三登録画面においてSETキー42を押下することで、背景画像BGIを登録すると共に、設定モードから運転モードへの切り替え作業も同時に実行される。これによって、必要な設定が終了後に自動的に運転モードに切り替わるため、ユーザは戸惑うことなく、設定作業から運転モードへの切り替えをスムーズに行うことが可能となる。
(上下キー44による閾値の増減の手順)
運転時には、上下キー44または上下表示4315a、bは、閾値を増減するためのスイッチとして機能する。閾値を増減する手順について、以下図60のフローチャートと図29B及び図29Cとに基づいて説明する。なお、特に言及しない限り、ここでの上下キー44を押下する動作は、上下表示4315a、bをタッチする動作を含むものとする。
前述のステップST557を経て画像登録処理が完了すると運転が開始する。上下キー44の押下による動作に関して、図57のフローチャートの手順と図60のフローチャートの手順とは交互に繰り返される関係にあり、設定モードから運転モードへと、または、運転モードから設定モードへと遷移する一連の流れの中で、画像倍率の増減も閾値の増減も、一つの上下キー44の操作でそれぞれ機能させることが可能である。
図60のフローチャートに示すように、ステップST650において運転を開始し、ステップST651において、撮像部21にてライブ画像LVIを取得し、ステップST652において、画像処理を行うと共に、一致度算出部57cが一致度を算出する。次に、ステップST653において、良否判定部57dが、一致度と閾値とを比較し、良品であるかの判定を行い、判定出力を更新する。またステップST654において、表示画像を常時更新している。なお、ステップST654における表示画像の更新は、ステップST651における撮像の直後に行ってもよい。
次に、ステップST655において、上下キー44の上キー44a(UP)または下キー44b(DOWN)の押下の有無を判定する。上下キー44の押下が検出された場合は、ステップST656に進み、上キー44aが押下されていれば閾値を増加する設定変更を行い、下キー44bが押下されていれば閾値を減少する設定変更を行う。そして、ステップST651に戻り、変更された画像倍率にて撮像を行い、ライブ画像LVIを取得する。上下キー44の押下が検出されない場合は、ステップST657において、SETキー42の押下の有無を判定する。SETキー42の押下が検出されていなければ、ステップST651に戻り、変更のない閾値にてステップST651からステップST657までの一連の工程を繰り返し実行する。ステップST657にて、SETキー42の押下が検出された場合、ステップST658において、運転を停止し、設定モードを実行する。言い換えると、閾値の変更があった場合、SETキー42が押下されるまで、変更後の閾値で運転される。
(運転中のバンク設定変更時の動作手順)
ここでは、運転中のバンク設定変更時の動作手順について、以下図61のフローチャートと図23に基づいて説明する。
まずステップST700において処理を開始し、ステップST701では、第一のバンク設定で運転状態にある。このとき、図23の左上の図の例では、1の番号、及び、バンク1のライブ画像LVIが表示され、バンク1の閾値が設定されている。ステップST702において、MODEキー46と上下キー44との同時押下の有無を判定する。MODEキー46と上下キー44との同時押下が検出された場合は、ステップST703に進み、運転動作を停止する。この運転動作の停止中には、例えば判定結果表示灯41が緑点滅するようにしてもよい。ステップST704において、選択された第二のバンクの登録画像を読み出し、第二のバンクの登録画像、バンク番号表示、及び、変更中である旨を表示する。図23の左下の図の例では、2の番号、及び、バンク2のライブ画像LVIが表示され、バンク2の閾値が設定されている。ステップST705に進み、第二のバンクの設定に基づき動作設定を変更し、ステップST706に進む。ステップST706において、第二のバンクの設定で運転を開始する。ステップST702において、MODEキー46と上下キー44との同時押下が検出されない場合は、第一のバンク設定での運転状態が保持される。
(一致度統計値の算出手順)
続いて、運転中の一致度統計値のうち最大一致度及び最小一致度の算出手順について、以下図62のフローチャートに基づいて説明する。
まずステップST800において処理を開始し、ステップST801において、撮像部52から最新入力画像を取得する。ステップST802において、一致度算出部57cが一致度を算出する。次に、ステップST803において、良否判定部57dが、最新一致度を閾値設定値と比較し、比較検討に基づき判定し、ステップST804に進み、一致度統計値算出部57eが、最新一致度と過去最大一致度とを比較する。ステップST805において、一致度統計値算出部57eが、最新一致度が過去最大一致度を上回っているかを判定する。上回っていると判定された場合は、ステップST806に進み、一致度統計値アクセス部58dが、最新一致度を過去最大一致度として、一致度統計値記憶部54eに上書きし記憶する。上回っていないと判定された場合は、ステップST807に進み、過去最大一致度をそのまま保持する。
ステップST806またはステップST807のいずれを経由しても、ステップST808に進み、一致度統計値算出部57eが、最新一致度と過去最小一致度とを比較する。ステップST809において、一致度統計値算出部57eが、最新一致度が過去最小一致度を下回っているかを判定する。下回っていると判定された場合は、ステップST810に進み、一致度統計値アクセス部58dが、最新一致度を過去最小一致度として、一致度統計値記憶部54eに上書きし記憶する。下回っていないと判定された場合は、ステップST811に進み、過去最小一致度をそのまま保持する。
ステップST810またはステップST811のいずれを経由しても、ステップST812に進み、一致度統計値アクセス部58dが、最大/最小一致度を表示するよう設定されているかを判定する。最大/最小一致度を表示するよう設定されている場合は、ステップST813において、最新一致度、閾値設定値、過去最大一致度、過去最小一致度を表示する。最大/最小一致度を表示するよう設定されていない場合は、ステップST814において、最新一致度、閾値設定値、最新入力画像を表示する。
(判別対象が不良品ワークである場合の運転時の動作手順)
ここでは、判別対象が不良品ワークである場合の運転時の動作手順について、以下図63のフローチャートに基づいて説明する。
まずステップST900において処理を開始し、ステップST901において、撮像部21からライブ画像LVIを取得する。ステップST902において、一致度算出部57cが、ライブ画像LVIとマスター画像として登録した不良品画像NGIとの一致度である第二の一致度を算出する。次に、ステップST903において、良否判定部57dが、第二の一致度を第三閾値と比較し、ステップST904において、第二の一致度が第三閾値を上回っているかを判定する。上回っている場合には、不良品画像NGIと判定し、ステップST905において出力をONする。上回っていない場合には、ステップST906において出力をOFFする。
(判別対象の選択機能と動作原理)
ここでは、判別対象の選択機能と動作原理について、図64、図65、図66に基づいて説明する。図64は、製造ライン上に、良品ワークと不良品ワークとが流れている状態を示すイメージ図である。図64に示すように、画像処理センサ1、11の検出領域は幅を持っている。画像処理センサ1、11のスポット径は、例えば、大きなサイズでは6cm×6cm程度あり、小さいサイズでも2mm×2mm程度ある。これは、通常の光電センサのスポット径が1.2mmφ程度であることに鑑みると、画像処理センサ1、11のスポット径は大きいといえる。
このため、撮像部52で撮像している検出領域では、例えば、図65Aに示すように、ワークWKは、(A)〜(F)の順で変わっていく。この時、通常の運転状態、すなわち、マスター画像が良品画像OKIである場合には、第一の一致度の時系列変化のイメージ図である図65Bに示すように、第一の一致度は、(B)の辺りから徐々に増加して行き、(C)の時点でピークを迎え、(D)では次第に減少して行く。第一の一致度が、(E)で若干増加しているのは、不良品画像NGIに良品画像OKIの特徴と一致する要素があることを意味する。この場合の出力状態を示すイメージ図を図65Cに示す。この図に示すように、第一の一致度が第一閾値を超えたところで、出力をONにする。すなわち、良品ワークWKが来た時にだけ出力がONになる。
図65Cに示す出力の時系列変化に対して、例えば光電センサの負出力のように、出力論理を反転する、あるいは、閾値を下回る場合に出力をONにする、という設定を行った場合の出力の時系列変化を図65Dに示す。この図に示すように、いずれの場合でも、(1)検出領域内にワークWKがない((A)の状態)、若しくは、中途半端に検出領域内に入った状態((B)(D)(F)の状態)と、(2)不良品ワークが来ている状態((E)の状態)とを出力により分離することができない。
したがって、不良品ワークが検出領域に入って来ていることを認知するためには、「検出領域内にワークWKが来ており、判定すべきタイミングである」((C)(E)の状態)ことを、別の手段によりセンサに通知する必要がある。すなわち、「判定すべきタイミングであり」、かつ、「判定出力がOFF」であれば、不良品ワークが来ていると認知することができる。
ここで、不良品画像NGIをマスター画像として動作させる設定を選択した場合、例えば図66Aの(A)〜(F)の順で変わっていくワークWKの流れに対して、図66Bに示す第二の一致度の時系列変化、及び、図66Cに示す出力の時系列変化が得られる。
すなわち、不良品出力設定時には、第二の一致度は、(D)の辺りから徐々に増加して行き、(E)の時点でピークを迎え、(F)では次第に減少して行く。この場合、図66Cに示すように、第二の一致度が第三閾値を超えたところで、出力をONにする。すなわち、不良品ワークが来た時にだけ出力がONになる。
このように不良品画像NGIをマスター画像として動作させる設定を選択した場合、この出力をトリガーとして不良品を排出する制御をかけることが可能になる。ここで、本実施形態に係る画像処理センサ1、11は、良品画像OKIをマスター画像として動作させるか、あるいは、不良品画像NGIをマスター画像として動作させるかを選択することができるので、不良品が来た際に排出制御など行うユーザ(不良品が来たことを知りたいユーザ)、及び、良品が来た際に計数などを行うユーザ(良品が来たことを知りたいユーザ)の両方のユーザに対して、一の設定変更により対応することが可能となる。
(運転時における登録画像差替機能)
画像センサにおいて、運転開始後に登録画像を再登録するケースとして、例えば、(1)生産ライン上のワークWKの品種変更時、あるいは、(2)設定の再調整、が挙げられる。(1)品種変更時の対応として、従来、複数バンクを用意しておき、各バンクに複数品種の画像を登録しておき、品種変更時にバンク切替する方法があるが、安価な画像処理センサではバンク数に応じたメモリを用意する必要がありコスト高となる。メモリが用意できない場合は、品種変更毎に登録画像を差し替える必要がある。
(2)再調整が必要なケースとして、画像処理センサの照明やレンズの汚れによる経時変化や、ワーク以外の背景の変化がある。閾値調整で対応可能なケースもあるが、登録画像そのものを現状の良品ワーク、不良品ワーク、及び、背景のいずれかで差し替えたいケースがある。従来の画像センサでは、登録画像を差し替える場合、専用の設定モードを経る必要があり、手間がかかっていた。
本実施形態に係る画像処理センサ1、11では、運転時において、登録画像を差し替えたいという要求があった場合に、設定モードでのすべての登録作業を再度やり直すことなく、所望する新たな画像に登録画像を差替可能とする登録画像差替機能を備える。
図67は、運転中の画面表示であって、画面A、画面B、画面C、画面Dの順で画面表示が切り替わる様子を示している。この画面表示を切り替えて登録画像を差し替える操作は、機能的には例えば差替対象選択部(図示していない。)によって行い、具体的には、運転中に、MODEキー46を押下して画面表示を切り替え、その画面にてSETキー42を押下することで実現する。この図において、画面Aは、通常の運転画面を示しており、画像表示領域PDにはライブ画像LVIが表示され、説明表示領域EDには、一致度4313a及び閾値4314aが表示されている。この画面で、MODEキー46を一回押下すると、画面Bの表示に切り替わる。この画面Bは、左端にバー形式で、一致度4313b及び閾値4314bが表示され、画像表示領域PDにはライブ画像LVIが表示さると共に、説明表示領域EDにおいて良品画像OKIが表示される。この画面において、SETキー42を押下すると、ライブ画像LVIを良品画像OKIに差し替えることができる。同様に、MODEキー46を押下して表示させた画面CにてSETキー42を押下すると、ライブ画像LVIを背景画像BGIに差し替えることができ、MODEキー46を押下して表示させた画面DにてSETキー42を押下すると、ライブ画像LVIを不良品画像NGIに差し替えることができる。図67の例は、三点ティーチングを想定しており、二点ティーチングの場合、例えば画面Dが表示されない。
一致度の算出などの処理においては、二点ティーチングの場合は良品画像OKIと背景画像BGIの差分画像を用い、三点ティーチングの場合は不良品画像NGIと背景画像BGIの差分画像を用いるので、それぞれ差分登録画像の更新も行う。画像処理のアルゴリズム及び閾値は、更新された登録画像に基づき自動更新する。
(変形例:登録画像の追加)
ここまでは、登録画像を差し替えることを前提として説明してきたが、良品画像OKI及び不良品画像NGIを複数登録することで良品ワークWKと不良品ワークWKとの識別能力を向上させることができる。この変形例では、差替対象選択部による操作で、登録された、良品画像OKIや不良品画像NGIなどを、差し替えるのではなく、図67の例でSETキー42が押下されるタイミングで追加登録して、例えば、良品ワークWKと不良品ワークWKとの識別能力が最も高くなる登録画像を採用する。また、追加登録された登録候補画像群からユーザが選択可能に構成してもよい。
(登録画像の差替の動作手順)
ここでは、登録画像の差替の動作手順について、以下図68、図69、図70のフローチャート及び図67に基づいて説明する。図68は、登録画像を差し替えない通常の運転処理を示すフローチャートであり、図69及び図70は、それぞれ二点ティーチング及び三点ティーチングにおける登録画像の差替の動作手順を示すフローチャートである。
まず通常の運転処理の流れを、図68のフローチャートに基づいて説明する。ステップST1000において処理を開始し、ステップST1001において、撮像部21からライブ画像LVIを取得する。ステップST1002において、一致度算出部57cが、ライブ画像LVIに対して画像処理をして一致度を更新する。次に、ステップST1003において、良否判定部57dが、一致度を閾値と比較し、判定結果を出力して更新する。ST1004において、表示部53がライブ画像LVIの表示を更新する。
続いて、二点ティーチングにおける登録画像の差替の動作手順を、図69のフローチャートに基づいて説明する。まずステップST1100において処理を開始し、ステップST1101において、画面表示は図67の画面Aに設定される。ステップST1102において、通常の運転処理を行う。この手順は、図68のフローチャートのステップST1000からST1004の手順と同様である。ステップST1103において、MODEキー46の押下の有無を判定する。MODEキー46の押下が検出された場合は、ステップST1104に進み、画面A〜画面Cの間で画面表示を切り替える。MODEキー46が押下された場合には、切り替えられた画面表示にて、また、MODEキー46の押下が検出されない場合は、そのままの画面表示にて、ステップST1105に進み、SETキー42の押下の有無を判定する。SETキー42の押下が検出されない場合は、ステップST1102に戻り、運転処理が繰り返される。SETキー42の押下が検出された場合は、ステップST1106に進み、現在の画面表示が画面A〜画面Cのいずれであるかを判断する。画面Aである場合、ステップST1107において、運転を停止し、ティーチングモードへ遷移する。画面Bである場合には、ステップST1108に進み、良品画像OKIを差し替える。画面Cである場合には、ステップST1109に進み、背景画像BGIを差し替える。ステップST1108またはステップST1109を実行後、ステップST1110において、(1)複数の明るさ条件、(2)解像度、(3)アルゴリズム負荷を考慮した再ティーチング処理を行う。再ティーチング処理後、ステップST1102に戻り、再ティーチング処理が実行された設定に基づいて運転処理を行う。
最後に、三点ティーチングにおける登録画像の差替の動作手順を、図70のフローチャートに基づいて説明する。三点ティーチングにおける登録画像の差替の動作手順は、二点ティーチングのケースと概ね同様であるが、ステップST1203〜ステップST1206において、不良品画像NGIの差替登録のため、画面Dを選択する手順が増える点、及び、画面Dが選択された場合に、不良品画像NGIを差し替える点で異なっている。差替登録後は、二点ティーチングの場合と同様に、ステップST1211において、(1)複数の明るさ条件、(2)解像度、(3)アルゴリズム負荷を考慮した再ティーチング処理を行う。再ティーチング処理後、ステップST1202に戻り、再ティーチング処理が実行された設定に基づいて運転処理を行う。
(運転モード画面)
また運転モードにおいて表示画面43に表示される運転モード画面では、画像表示領域PDと説明表示領域EDを設けている。図59の例では、表示画面43の左側に画像表示領域PDを、右側に説明表示領域EDを配置している。
(共通位置表示機能)
ここで、表示画面43の表示内容は、設定モードと運転モードにおいて、画像表示領域PDと説明表示領域EDのレイアウトを共通にすることが好ましい。特に画像を表示させる領域を設定モードと運転モードで共通の位置とすることで、ユーザは戸惑うことなく画像を確認できる。より具体的には、ライブ画像LVIを表示させる領域を一定位置に固定することで、対象となる画像がいずれであるかをユーザは把握し易くなる。図59の例では、設定モードと運転モードにおいて、いずれも画像表示領域PDを表示部53の左側に固定している。このように、相対的な位置関係を設定時と運転時で共通にしたことで、ユーザに対して操作の安心感を与えることができる。また第二登録画面においては、登録済みの第一画像と、第二画像の候補となるライブ画像LVIとを一画面で表示させているが、ライブ画像LVIは左側に固定することで、ユーザは登録対象のライブ画像LVIが共通位置の左側であることを認識でき、いずれの画像が登録すべき画像であるのか、戸惑うことが少ない。
また運転モード画面には、一致度と閾値を表示させている。これによりユーザは、逐次撮像されるワークWKの入力画像と、この画像で算出される良品画像OKIとの一致度、及び設定モードで設定された閾値とを一画面で確認できる。
良否判定の結果は、外部に出力される。例えばOK信号やNG信号等の判定結果を示す信号を送出する。また、外部に判定結果を表示させてもよい。例えば図6に示す画像処理センサ11の表示面に設けた判定結果表示灯41を、判定結果に応じて点灯させる。
なお、本明細書において良否判定とは、ワークWKが良品であるかどうかを判定する動作のみならず、ワークWKが不良品であるかどうかを判定する動作も含む意味で使用する。例えば不良品を検出した際に良否判定部が出力を行い、不良品を検出しない間は出力を行わない態様の他、良品を検出した際に出力を行い、良品を検出しない間は出力を行わない態様も含む。
また、運転モードにおいて表示画面43の表示をOFFとしてもよい。
続いて、運転モードにおける画面遷移及び共通操作について説明する。運転モードの画面遷移の例を図71及び図72に示す。図71Aに示す画面Aは、ティーチングが終了後の運転時の画面表示である。この画面Aは、従来の光電センサと同じような表示になっており、右上の大きな表示が現在撮像しているライブ画像LVIの一致度を示している。図71Aの図中右下に小さな表示が閾値を示している。MODEキー46を1回短押しすることで、図71Bに示す画面Bに切り替わる。この画面Bは、画像表示領域PDにライブ画像LVIが表示される。また説明表示領域EDにライブ画像LVIの一致度と、閾値が表示される。また、この画面Bにおいて、BACKキー45を1回短押しすることで、図71Aに示す画面Aに切り替わる。
同様に、画面BにおいてMODEキー46を1回短押しすることで、図71Cに示す画面Cに切り替わり、この操作を繰り返すことで、順に、図71Dに示す画面D、図71Eに示す画面E、図71Fに示す画面F、図71Gに示す画面Gというように切り替わり、画面GにおいてMODEキー46を1回短押しすると、最初の画面Aに切り替わる。一方、所定の画面においてBACKキー45を1回短押しすることで、MODEキー46の場合とは逆の順に、画面が切り替わっていく。また、所定の画面においてBACKキー45を長押しすることで、最初の画面Aに切り替わる。
画面A及び画面Bの左端に表示されるバンクは、1つの製造ラインに複数のワークWKを流すという段取り替えが必要な場合があり、段取り替えの度に、再度ティーチングを行わなくてもよいよう、例えば「BNK1」〜「BNK4」というように4つの設定を記憶させておくことができ、その設定が「BNK1」〜「BNK4」のいずれであるかを表示している。また、画面A及び画面Bの左端に表示される「OUT」は、出力のチャネル番号を示している。「OUT」の値が「2」であれば、例えば出力端子2から出力されることを意味する。
図71Cに示す画面Cでは、画像表示領域PDにライブ画像LVIが表示される。また説明表示領域EDには良品画像OKIが表示される。また図71Dに示す画面Dでは、画像表示領域PDにライブ画像LVIが表示され、説明表示領域EDには不良品画像NGIが表示される。さらにまた図71Eに示す画面Eでは、画像表示領域PDにライブ画像LVIが表示され、説明表示領域EDには背景画像BGIが表示される。これにより、ユーザは運転中に、ライブ画像LVIと対比しながら、登録した良品画像OKIや、不良品画像NGI、背景画像BGIを確認することができる。
図71Fに示す画面F及び図71Gに示す画面Gでは、画像表示領域PDにライブ画像LVIが表示され、説明表示領域EDには、一致度の統計値が表示される。画面Fでは、運転し始めてからの一致度の最大値と最小値とが表示される。また画面Gでは、閾値を超えた一致度の最大値と最小値とが表示される。また、画面C〜画面Gの左端には、一致度や一致度の統計値が、感覚的に分かるよう画像で表示される。上下に目盛りが配され、閾値を意味する目印と、現在の一致度を意味する目印(図では中央)とが表示される。また画面Fでは、最大/最小一致度を示す目印が表示され、画面Gでは、閾値を超えた最大/最小一致度を示す目印が表示される。
このように統計値を表示することにより、ユーザは、運転し始めてからの最大/最小一致度から、一致度のバラツキ具合が分かり、また閾値を超えた最大/最小一致度から、一致度と閾値との関係で、ギリギリ閾値を超えたのか、それとも余裕を持って閾値を超えたのかを把握することができ、閾値の調整要否の判断や、手動によって閾値を調整する際の参考にすることができる。
(上下キー44の短押し)
画面C〜画面Fにおいて、上下キー44を短押しすると、図72Aに示すように、説明表示領域EDに画面Bに表示される一致度と閾値とが表示され、ユーザは閾値を手動で変更できる。上下キー44を押下後、5秒放置することにより、上下キー44の押下前の画面に戻る。なお、上下キー44の押下前の画面に戻る放置する時間は5秒に限られない。(SETキー42の短押し)
前述したように、2点ティーチングを行うか、3点ティーチングを行うかは、SETキー42の短押し、あるいは、長押しを行うことによって、決定することができる。SETキー42を短押しした場合、図72Bに示すように、表示画面43の全面を使用して、2点ティーチングの設定モードを起動するためのプログレスバーが表示され、2点ティーチングの設定モードに切り替わる。
(SETキー42の長押し)
SETキー42を長押しした場合、図72Cに示すように、表示画面43の全面を使用して、3点ティーチングの設定モードを起動するためのプログレスバーが表示され、3点ティーチングの設定モードに切り替わる。
(MODEキー46の長押し)
また、MODEキー46の長押しを行うと、図72Dに示すように、設定画面に切り替わる。
(MODEキー46と上下キー44との同時短押し)
さらに、MODEキー46と上下キー44の下キー44bとを同時短押しを行うと、前述したバンクと出力チャネルとを「次」に変更することができる。また、MODEキー46と上下キー44の上キー44aとを短押しすると、前述したバンクと出力チャネルとを「前」に変更することができる。例えば4つのバンクがあり、出力チャネルが2つある場合、8段階で切り替わる。なお、出力チャネルを2段階で切り替えた後、バンクを4段階で切り替えることもできる。
(MODEキー46とBACKキー45との同時長押し)
さらにまた、MODEキー46とBACKキー45とを同時長押しを行うと、キーロックとキーロック解除とを切り替えることができる。
(MODEキー46を押下しながらSETキー42の5回押し)
さらにまた、MODEキー46を押下しながらSETキー42の5回押しを行うと、画像処理センサ1,11を初期化することができる。
一方で、運転モードの最中において、良否判定の結果等に応じて、登録設定条件を変更することも可能である。例えば、設定された閾値を微調整して、誤判定を低減する。この場合において、閾値を調整するための部材を、画像の表示倍率の調整に用いた増減調整部51hで兼用させることができる。これにより、表示面4aに設けられた共通の部材でもって、画像の表示倍率の調整と閾値の調整を行わせて、構成の簡素化や操作環境の統一が図られる。このような手順を、図73A及び図73Bのフローチャートに基づいて説明する。これらの図において、図73Aは画像の表示倍率を調整する工程を含む設定モードの動作を示すフローチャートであり、図73Bは図73Aに続いて動作モードで閾値を調整する工程を含んだフローチャートである。まずステップST1300において設定モードを選択し、次にステップST1301において登録対象の候補となる画像の撮像を行い、さらにステップST1302において表示画面43に表示される画像の更新を行う。
ここで、ユーザ側の動作としては、撮像された候補画像を表示画面43で確認し、登録画像として適切かどうかを判断する。姿勢や視野の調整が必要な場合は、これに応じて適切な処理を行う。例えば、画像の表示倍率の調整が必要と判断した場合は、増減調整部51hを操作して、表示倍率を調整する。
この結果、画像処理センサ側の動作として、ステップST1304において、増減調整部51hである上下キー44が操作されたか否かを判定し、操作があった場合はステップST1305に進み、画像の表示倍率を操作に従い変更するよう、設定を変更する。ここでは、アップ側のスイッチである上キー44aが操作されたときは、画像の倍率を増加させ、逆にダウン側のスイッチである下キー44bが操作されたときは、画像の倍率を減少させるように、設定を変更する。そしてステップST1301に戻り、変更された倍率にて画像を撮像し直し、変更後の倍率の画像が表示画面43に表示されるようにする。なお、必ずしも画像の撮像をやり直す必要は無く、例えば倍率を拡大させる場合は、撮像済みの画像をデジタルズームさせて表示させてもよい。逆に画像を縮小させる場合は、表示される視野が広くなるため、再度撮像する必要がある。ただ、過去に撮像した画像を保存している場合、該当する倍率の画像を呼び出すように構成してもよい。
このようにして、所望の表示倍率の画像が得られ、これ以上倍率調整の必要がない場合は、ステップST1303において上下キー44の操作がなくなるので、ステップST1305に進み、SETキー42の押下の有無を判定する。ここではSETキー42の押下が無い場合はステップST1304に戻って処理を繰り返し、押下が検出された場合はステップST1306に進み、表示画像を登録画像として登録し、さらにステップST1307において画像登録処理を行う。続いて図73Bに示すようにステップST1308に進み、運転モードに切り替える。そしてステップST1309において、画像処理、すなわち良否判定の対象となるワークの画像を撮像する。次にステップST1310において所定の画像処理を行い、一致度を算出する。そしてステップST1311において算出された一致度を閾値と比較し、判定結果を出力して、算出された一致度の値を表示させると共に、表示画面43に表示されるライブ画像LVIの表示内容も更新する(ステップST1312)。そしてステップST1313において、増減調整部51hである上下キー44の操作の有無を判定する。
ここで、ユーザ側の動作としては、得られた判定結果と、表示画面43で表示された当該入力ライブ画像LVI、及びこの入力ライブ画像LVIに対して算出された一致度を確認し、判定結果が妥当かどうか、また閾値の設定が適切かどうかを検討する。そして、閾値の変更が必要と判断した場合は、増減調整部51hを操作して、閾値を微調整する。
この結果、画像処理センサ側の動作として、上下キー44の操作が検出された場合は、ステップST1314に進み、閾値を変更する。ここでも、アップ側のスイッチである上キー44aが操作されたときは、閾値を増加させ、逆にダウン側のスイッチである下キー44bが操作されたときは、閾値を減少させる。そしてステップST1309に戻り、変更された閾値にて、判定を行う。これらの動作を必要に応じて繰り返し、適切な閾値が設定されていると判断された場合は、ステップST1313において上下キー44の操作が検出されず、ステップST1315に進み、運転の停止操作の有無を判定する。ここでは、SETキー42の操作の有無を検出し、検出されない場合はステップST1309に戻って上記の処理を繰り返す。一方、SETキー42の操作が検出された場合は、ステップST1316に進み、運転モードを停止する。このようにして、適切な表示倍率や閾値を微調整して、画像の登録や良否判定の精度を高めることができる。また、これらの調整に共通の増減調整部51hを用いることができる。特に、設定モードにおける増減調整部51hには画像の表示倍率の調整機能が自動的に割り当てられ、一方運転モードにおける増減調整部51hには閾値の調整機能に変更され、ユーザは増減調整部51hの機能の切り替えのための操作を行うことなく、またこれらの切り替えを意識することなく、増減調整部51hの操作に注力するのみで必要な設定を行える利点が得られる。
(低解像度化の設定)
以上説明した二点ティーチング、三点ティーチング、一点ティーチングなどの設定モードにおけるティーチングにおいて、演算処理を高速化するために、画像データを低解像度化することができる。また設定モードのみならず、運転モードにおいても同様に画像データを低解像度化して、処理の高速化を図ることができる。画像の低解像度化によって、データサイズを縮小して画像処理等の処理の軽負荷・高速化を図ることができる。また、画像によっては画像の圧縮やスムージングなどの処理によってノイズを低減できることもある。このような処理を行うに際して、画像の低解像度化の程度をどのように設定するかが問題となる。
従来より、光電センサにおいては応答時間を設定することがあるのに対し、画像処理センサにおいて、このような応答時間を設定するという行為は想定されていなかった。また、応答時間を規定する画像処理センサであっても、ユーザが設定する視野領域に基づいて応答時間が変化するなど、他に設定された条件の結果として応答時間が決まるという性質のものであり、任意に応答時間を設定するものとは異なっていた。一方、工場の製造ラインなどでは、ラインの搬送速度等の観点から、ワークWKの存在や良否判定に費やすことのできる応答時間の制約を受けることが多いものの、視野や応答時間を直接的に設定することができなかった。これは、例えばユーザの視野の設定に依存して、撮像される光学画像の解像度が直接的に変化し、処理時間にジッタ(振れ)が発生するため、画像処理センサが応答時間を規定することが難しかったことに起因する。これに対して本実施形態に係る画像処理センサでは、固定の視野領域に対して応答時間を設定可能とし、設定された応答時間に基づいて、内部で処理する画像解像度を決定するよう構成している。以下、図74及び図75に基づいて詳述する。
従来より画像処理センサの設定には、ユーザが、光量を設定する、視野を調整する、検出目的となる画像処理を設定する(検出設定)等の必要があった。このような光量設定、視野調整、検出設定のユーザ指定に対して、画像処理センサの内部で処理される動作の状態を図74のブロック図に示す。この図に示すように、ユーザが光量を設定した結果、撮像部21の露光時間が決定される。また視野の調整の結果、検査対象の光学画像の解像度が決定される。さらに検出条件の設定の結果、設定された画像処理に用いるアルゴリズムが決定される。この結果、撮像部21の露光時間と解像度から、光学画像の読み出しに要する時間を含めた撮像に必要な時間、すなわち撮像時間が決定される。一方で画像の解像度と画像処理アルゴリズムから画像処理に要する時間、すなわち画像処理時間が決定される。以上のような順序に従い、設定の処理時間である応答時間が決定される。
その一方で、製造ラインの搬送速度等の関係から、許容可能な応答時間が予め決まっている場合があり、この場合には設定内容によっては設定すること自体が不可能となるという問題があった。例えば、ユーザの視野設定により解像度が自ずと決まるところ、解像度が変化すると処理時間にジッタが発生し、応答時間を規定することが難しくなる。
これに対して本実施形態に係る画像処理センサでは、視野や検出設定に加え、応答時間を設定できるようにしている。これを実現するため、画像処理センサの内部処理で適切な画像解像度や画像処理アルゴリズム等の登録設定条件を決定している。これによって視野設定によらず処理画像のデータサイズが抑えられ、応答時間が既定できることとなった。この様子を、図75のブロック図に基づいて説明する。この図に示すように、ユーザが指定可能な項目として、図74と同様の光量設定、視野調整、検出目的に加えて、応答時間も設定可能としている。このようなユーザの指定に対して、条件割当部55は、最適な割り振りを行って、指定された応答時間内で処理が終了するように露光時間を決定し、解像度を決定し、適切な画像処理アルゴリズムを選択する。
(画像の低解像度化)
ここで、画像の解像度を低解像度化するための方法について説明する。規定の視野範囲に対して、例えば図76に示すように解像度を低く変更するための方法として、図77に示すように画像データを圧縮する方法が挙げられる。図77の例では、2×2画素で平均した画素値を用いて、縦横を1/2に圧縮している。あるいは図78に示すように、画像データを間引く方法も利用できる。図78の例では、縦方向及び横方向でそれぞれ、一つおきの画像値を採用することで、縦横を1/2に圧縮している。本発明においては、画像を低解像度化する手法をこれらに限定せず、既知の低解像度化の手法を適宜採用できる。また、低解像度化を実現するため、専用のGPUのようなハードウエアを用いる方法や、ソフトウエアで実現する方法が挙げられるが、いずれの方法も本発明では利用でき、あるいはこれらの組み合わせを利用してもよい。本明細書においては、便宜上画像の低解像度化を、圧縮や間引きなど、手法によらず包括的に圧縮と呼ぶことがある。
(低解像度化処理を含む良品画像OKIと背景画像BGIの二点ティーチング)
ここで、設定された応答時間に基づいて、条件割当部55がこの応答時間内に画像の撮像から良否判定までを終えることができるように、画像の撮像条件、圧縮度、画像処理アルゴリズム等の登録設定条件を設定する手順について説明する。ここでは、条件割当部55の画像圧縮度設定部55eが、登録設定条件の内で、光学画像を低解像度化させる圧縮率を調整する場合について説明する。まずは、前述したとして説明した良品画像OKIと背景画像BGIの二点ティーチングにおいて、低解像度化処理を含む場合の二点ティーチングでの設定と、その後の運転モードにおける処理の手順を、図79のフローチャートに基づいて説明する。
(応答時間の設定)
まずステップST1401において、応答時間を設定する。具体的には応答時間設定部51eから、所望の応答時間をユーザが設定する。ここで応答時間設定部51eは、予め複数の異なる応答時間の候補をユーザに提示し、ユーザに選択させるように促すことが好ましい。予め設定可能な応答時間を応答時間候補群として提示することで、応答時間毎に設定可能な露光時間や解像度(圧縮率)、画像処理アルゴリズム等の検出条件の組み合わせを準備しておくことができ、条件割当部55での演算などの処理を低減化できる。いいかえると、選択された応答時間に応じて、登録設定条件の内で設定不可能な露光時間などの検出条件を速やかに排除することが可能となる。ただ、ユーザが所望の応答時間を数値等で直接入力させるように構成することもできる。この場合は、入力された応答時間に基づいて、条件割当部55が、選択可能な露光時間、解像度、画像処理アルゴリズム等の検出条件の組み合わせを演算する。
次にステップST1402において、良品画像OKIと背景画像BGIを取得し、静止画像記憶部54aに保存する。
次にステップST1403において、ステップST1401で設定された応答時間設定に基づいて、良品画像OKIと背景画像BGIを低解像度化する。低解像度化は、例えば画像圧縮部56dで行われる。ここで、各画像の圧縮度は、共通とする。
次にステップST1404において、圧縮良品画像COKIと圧縮背景画像CBGIから、良品背景圧縮差分画像を生成する。良品背景圧縮差分画像の生成は、例えば差分画像生成部56aで行われる。
そしてステップST1405において、評価領域を設定する。評価領域は、例えば画像の全体としたり、中央近辺、あるいは差分画像の存在する領域などを、画像処理センサ側で自動的に設定してもよいし、ユーザが手動で指定するよう構成してもよい。ユーザが手動で行う場合は、例えば評価領域設定部を図3の操作部51に設ける。
次にステップST1406において、最適な良品画像OKIの特徴量を抽出する。特徴量の抽出は、例えば特徴量抽出部56bで行われる。
さらにステップST1407において、閾値を決定する。例えば閾値算出部56cが、抽出された良品画像OKIの特徴量に基づいて、背景画像BGIとの一致度を評価することで閾値を決定する。
(運転モード)
以上のようにして設定モードでの設定作業が終了すると、運転モードに切り替えられる。続いて運転モードにおいての動作手順を引き続き図79に基づいて説明すると、ステップST1408において、評価対象となるワークWKの入力ライブ画像LVIを画像取得部52で取得する。次にステップST1409において、評価対象の入力ライブ画像LVIを低解像度化する。ここで入力ライブ画像LVIの圧縮度は、設定モードにおける画像の圧縮度と等しくする。さらにステップST1410において、設定モードで登録した良品画像OKIの特徴量に基づき、ワークWKの一致度を算出し、さらに閾値と比較して良否判定を行う。このようにして、設定した応答時間に従い、解像度を低下させて、運転モードにおいては指定した応答時間内に処理を行えるように設定できる。
(低解像度化処理を含む良品画像OKIと背景画像BGIの二点ティーチングの変形例)
以上の例では、設定時において先に低解像度化を行った上で差分画像を生成する順序で閾値を設定する方法を説明した。ただ本発明は、閾値を設定する順序を上記に限定するものでなく、例えば、先に差分画像を生成した上で、画像を圧縮させてもよい。以下、このような例を変形例として図80のフローチャートに基づいて説明する。まずステップST1501において、応答時間を設定し、次にステップST1502において、良品画像OKIと背景画像BGIを取得し、静止画像記憶部54aに保存する。これらの手順は前述した図79のステップST1401〜ステップST1402と同様である。
次にステップST1503において、差分画像生成部56aが、良品画像OKIと背景画像BGIから良品背景差分画像を生成する。そしてステップST1504において、応答時間設定に従って良品背景差分画像を低解像度化する。画像圧縮部56dで低解像度化する際の各画像の圧縮度は、共通とする。この結果、良品背景差分画像の低解像度化画像である良品背景差分圧縮画像が画像圧縮部56dにより得られる。
以下、前述した図79のステップST1405〜ステップST1410と同様に、ステップST1505において評価領域を設定し、ステップST1506において適切な良品画像OKIの特徴量を抽出し、ステップST1507において閾値を設定する。また設定モードの終了後に運転モードに切り替えて、ステップST1508において評価対象となる入力ライブ画像LVIを取得し、ステップST1509において入力ライブ画像LVIを低解像度化する。入力ライブ画像LVIの圧縮度は、設定モードにおける画像の圧縮度と等しくする。そして、ステップST1510において良否判定を行う。この方法でも、差分画像を低解像度化して処理時間を、設定された応答時間に応じて調整することができる。
(低解像度化処理を含む良品画像OKIと不良品画像NGIと背景画像BGIの三点ティーチングの手順)
以上、二点ティーチングにおいて低解像度化処理を追加した例を説明した。ここでは良品画像OKIと背景画像BGIを登録する例を説明したが、良品画像OKIと不良品画像NGIを登録する二点ティーチングにおいても、同様に低解像度化処理を追加できる。さらに、三点ティーチングにおいても低解像度化処理を追加してもよい。以下、良品画像OKIと不良品画像NGIと背景画像BGIを登録する三点ティーチングにおいて低解像度化処理を追加した例を、図81のフローチャートに基づいて説明する。まずステップST1601において、応答時間を設定する。次にステップST1602において、良品画像OKIと不良品画像NGIと背景画像BGIを取得する。ここでは撮像部21で各画像を撮像し、良品画像OKIと不良品画像NGIと背景画像BGIを取得し、静止画像記憶部54aに保存する。次にステップST1603において、これら良品画像OKIと不良品画像NGIと背景画像BGIを、応答時間設定に従ってそれぞれ低解像度化する。画像圧縮部56dで圧縮された圧縮良品画像CGDIと圧縮不良品画像CNGIと圧縮背景画像CBGIの圧縮度は、共通とする。
次いでステップST1604において、良品画像OKIと背景画像BGIの差分画像である良品背景差分画像、及び不良品画像NGIと背景画像BGIの差分画像である不良品背景差分画像を、それぞれ生成する。
そしてステップST1605において、このようにして得られた差分画像に対して、評価領域をそれぞれ設定する。さらにステップST1606において、各差分画像の評価領域中から、特徴量をそれぞれ抽出する。具体的には良品背景差分画像からは良品画像OKIの特徴量を、また不良品背景差分画像からは不良品画像NGIの特徴量を、それぞれ特徴量抽出部56bで抽出する。そしてステップST1607において、閾値を設定する。ここでは閾値算出部56cが、良品画像OKIの特徴量に基づいて、不良品画像NGIの一致度を評価することにより、閾値を設定する。
このようにして設定が終了すると、設定モードから運転モードに移行される。運転モードにおいては、ステップST1608において、評価対象の入力ライブ画像LVIが取得され、ステップST1609において、取得された入力ライブ画像LVIを低解像度化する。ここで入力ライブ画像LVIの圧縮度は、設定モードにおける画像の圧縮度と等しくする。そしてステップST1610において良否判定を行う。ここでは、良品画像OKIの特徴量に基づいて、入力ライブ画像LVIの一致度を算出し、これを閾値と比較することで良否判定部57dが良否判定を行い、判定結果を出力する。
このようにして、三点ティーチングにおいても低解像度化処理を追加することで、設定した応答時間内に画像処理を終えることができ、インライン処理に対応した画像処理センサを実現できる。
(低解像度化処理を含む良品画像OKIと不良品画像NGIと背景画像BGIの三点ティーチングの変形例)
以上、三点ティーチングにおいて低解像度化処理を追加した例を説明した。この例では、設定時において先に低解像度化を行った上で差分画像を生成する順序で閾値を設定する場合を説明したが、本発明は二点ティーチングにおいて説明した通り、閾値を設定する順序をこの順に限定するものでなく、三点ティーチングにおいても同様に、先に差分画像を生成した上で、画像を圧縮させてもよい。以下、このような例を図82のフローチャートに基づいて説明する。まずステップST1701において、応答時間を設定し、次にステップST1702において、良品画像OKIと不良品画像NGIと背景画像BGIを取得し、静止画像記憶部54aに保存する。これらの手順は前述した図81のステップST1601〜ステップST1602と同様である。
次にステップST1703において、良品画像OKIと背景画像BGIから良品背景差分画像を、また不良品画像NGIと背景画像BGIから不良品背景差分画像を、それぞれ生成する。そしてステップST1704において、応答時間設定に従って良品背景差分画像、不良品背景差分画像をそれぞれ低解像度化する。画像圧縮部56dで低解像度化する際の各画像の圧縮度は、共通とする。この結果、良品背景差分画像、不良品背景差分画像の低解像度化画像である良品背景差分圧縮画像、不良品背景差分圧縮画像がそれぞれ得られる。
以下、前述した図81のステップST1605〜ステップST1610と同様に、ステップST1705において評価領域を設定し、ステップST1706において適切な良品画像OKIの特徴量、不良品画像NGIの特徴量をそれぞれ抽出し、ステップST1707においてこれらに基づき閾値を設定する。また設定モードの終了後に運転モードに切り替えて、ステップST1708において評価対象となる入力ライブ画像LVIを取得し、ステップST1709において入力ライブ画像LVIを低解像度化する。入力ライブ画像LVIの圧縮度は、設定モードにおける画像の圧縮度と等しくする。そして、ステップST1710において良否判定を行う。以上の方法でも、差分画像を低解像度化して処理時間を設定された応答時間に応じて調整することができる。
(低解像度化処理を含む背景画像BGIの一点ティーチングの手順)
さらに、一点ティーチングにおいても低解像度化処理を追加できる。このような例を図83のフローチャートに基づいて説明する。まずステップST1801において、応答時間を設定する。次にステップST1802において、背景画像BGIを取得する。具体的には、背景画像BGIを撮像部21にて撮像し、静止画像記憶部54aに保存する。次にステップST1803において、応答時間設定に従って背景画像BGIを低解像度化することで、圧縮背景画像CBGIが得られる。次にステップST1804において、評価領域を設定する。ここでは、圧縮背景画像CBGIのすべての領域を評価領域とする。そしてステップST1805において、圧縮背景画像CBGIの特徴量を抽出する。さらにステップST1806において、閾値を算出する。例えば、閾値算出部56cが閾値を一律50%に設定する。
このようにして設定が終了すると、設定モードから運転モードに切り替えられる。運転モードにおいては、まずステップST1807において、評価対象の入力ライブ画像LVIを取得する。次にステップST1808において、入力ライブ画像LVIを低解像度化する。入力ライブ画像LVIの圧縮度は、設定モードにおける画像の圧縮度と等しくする。そしてステップST1809において、良否判定を行う。ここでは、背景画像BGIの特徴量に基づいて、入力ライブ画像LVIの一致度を一致度算出部57cで算出し、これを閾値と比較して良否判定部57dが良否判定を行う。このようにして、一点ティーチングにおいても低解像度化処理を追加して、設定された応答時間内に画像処理を行うことができるようになる。
(撮像条件の調整)
以上の例では、設定された応答時間内に処理を終えられるように、条件割当部55の画像圧縮度設定部55eが、登録設定条件として画像を低解像度化させる圧縮度を調整する例について説明した。ただ、本発明は条件割当部55が調整する登録設定条件を画像の圧縮度に限定せず、他の条件、例えば撮像部21で撮像する画像の撮像条件や、画像処理の条件等とすることもできる。次に、条件割当部55が撮像条件を調整する例について説明する。
(撮像条件割当部55a)
設定された応答時間により、登録設定条件として採用し得る登録設定条件の範囲が決定される。ここでは、応答時間に対して画像の撮像条件を調整することを考える。この場合、条件割当部55は、応答時間内に良否判定を行うための所定の画像処理が可能となるように、撮像部21で撮像する画像の撮像条件を調整可能な撮像条件割当部55aとして機能する。
(撮像条件)
ここで撮像条件には、例えば画像の明るさを調整するため、撮像部21による撮像時の露光時間や、照明強度を調整することが挙げられる。あるいは、撮像部21が輝度領域のダイナミックレンジを変更して撮像した複数の低階調画像を合成し、高階調画像としたハイダイナミックレンジ画像(High Dynamic Range Image:HDR)生成機能を有する場合は、HDR機能のON/OFFが挙げられる。その他、自動明るさ調整機能や、フレームレートを高速化するための画素の読み飛ばしや間引き機能、近傍画素合算出力機能等のON/OFF、回転や傾斜の角度(±180°等)等の撮像時のパラメータや、得られた画像データを処理する際のパラメータなども撮像条件に含めることができる。
以下では、撮像条件割当部55aの一形態として、明るさ条件割当部55b、すなわち明るさ条件候補設定部55c及び明るさ条件選択部55dが、画像の明るさを調整して、最適な明るさ条件を決定する手順について、図84Aに基づいて説明する。まず、応答時間設定部51eで応答時間を設定する。
(明るさ条件の決定)
明るさ条件候補設定部55c及び明るさ条件選択部55dは、設定された応答時間に応じて登録設定条件として、明るさ条件を決定する。図84Aの例では、良品画像OKIと背景画像BGIの二点ティーチングの例を示している。まず明るさ条件候補設定部55cは、応答時間設定部51eから設定された応答時間に基づいて、良否判定部57dによる判別結果が該応答時間内に出力されるように、複数の明るさ条件の各々を明るさ条件候補として割り当てる。すなわち、撮像部21で設定可能な、画像一枚あたりの撮像に要する撮像時間は、装置の性能や仕様等で上限と下限が決まる。一方、応答時間設定部51eで設定された応答時間から、この応答時間内で許容される撮像時間の上限が決定される。このようにして、撮像部21の物理的な仕様と、与えられた応答時間とから、許容される撮像時間が決まる。撮像時間の内、画像の転送や処理能力は一定と考えると、露光時間が設定可能なパラメータとなる。また、設定可能な露光時間の下限も、仕様等から決定されるので、露光時間として取り得る範囲は決定されることになる。よって、許容される露光時間を変化させて、複数の明るさ条件を明るさ条件候補として設定する。具体的には、許容される露光時間の範囲内で取り得る明るさ条件候補を、明るさ条件候補設定部55cが抽出する。例えば、許容される露光時間の範囲を所定の個数(例えば5個)で均等に分割して、露光時間を設定する。あるいは、規定可能な幅(例えば10msなど)で設定できる露光時間をすべて、明るさ条件候補として抽出する。図84Aの例では、明るさ条件候補設定部55cが明るさ条件候補1〜nまで、n個の明るさ条件候補を設定している。なお、明るさ条件候補は、必ずしも等間隔に設定する必要は無い。例えば、適切な明るさが期待できる範囲には密に明るさ条件候補を設定してもよい。
(候補画像群の取得)
次に、複数の異なる明るさ条件候補毎に、候補画像を取得する。ここでは、画像群取得部52aが撮像部21を制御して、複数枚の候補画像を撮像する。撮像する候補画像は、設定モードに応じて決定される。例えば良品画像OKIと背景画像BGIを用いた二点ティーチングでは良品候補画像と背景候補画像を、あるいは、良品画像OKIと不良品画像NGIを用いた二点ティーチングでは良品候補画像と不良品候補画像を、また、三点ティーチングでは良品候補画像と不良品候補画像と背景候補画像を、さらにまた、一点ティーチングでは背景候補画像を、それぞれ撮像する。ここで、ユーザに対しては前述の通り、撮像する画像毎に、ワークWKを配置するように誘導する。例えば表示画面43に登録誘導情報を表示する。そしてワークWKがセットされると、画像処理センサ1、11は、明るさ条件を変化させて、明るさ条件候補毎に候補画像を撮像する。なお、複数の異なる明るさ条件候補の設定や、明るさ条件候補毎に候補画像を撮像する作業は、自動的に行われる。ユーザは、このような設定作業を意識することなく、単に設定モードにおいて、登録誘導情報に従い、ワークWKを撮像位置にセットしたり、排除したりするだけで足りる。図84Aの例では、良品画像OKIと背景画像BGIの二点ティーチングを行うため、良品ワークを撮像位置に置くようにユーザに指示し、この指示に従い良品ワークが置かれた状態で異なる明るさ条件候補毎に良品候補画像が複数枚撮像される。そして良品候補画像の撮像後に、ユーザに良品ワークを取り除くよう指示し、この指示に従ってユーザが良品ワークを取り除いた状態で、背景候補画像が複数枚撮像される。なお、三点ティーチングの場合は、これに加えて不良品ワークを撮像位置に置くように指示する登録誘導情報と、これに従い撮像位置に置かれた不良品ワークを、明るさ条件候補毎に撮像して不良品候補画像を撮像する作業が追加される。
(差分候補画像の生成)
次に、取得された候補画像から、差分候補画像が生成される。ここでは、差分画像生成部56aが、同じ明るさ条件候補で撮像された候補画像のペアから、差分候補画像を生成する。図84Aの例では、良品候補画像と背景候補画像から良品背景差分候補画像を生成する。なお、三点ティーチングの場合は、これに加えて、不良品候補画像と背景候補画像から不良品背景差分候補画像を生成する作業が加わる。
なお、差分画像や、差分画像生成前の元画像を圧縮することもできる。この場合、画像圧縮度設定部55eが与えられた条件内で画像圧縮度を調整する。
(画像処理の実行:任意)
そして、各差分候補画像に対して、必要に応じて所定の画像処理を行う。この画像処理は、登録設定条件に含まれる画像処理として、予め設定される。画像処理は一種類であってもよいし、複数の画像処理要素を組み合わせた一連の画像処理であってもよいし、あるいは画像処理を省略してもよい。画像処理は、画像処理実行部にて行われる。
(画像処理内容の割り当て)
さらに、画像処理を行う場合は、この画像処理を構成する一又は複数の画像処理要素について、画像処理の条件を割り当てることで、画像処理後の各候補画像から算出された一致度を評価することで、最適な画像処理を選択することもできる。画像処理の条件を割り当てる際には、後述する画像処理内容割当部55fにより、画像処理条件候補が生成される。画像処理条件候補は、画像処理アルゴリズムの種別や、画像処理アルゴリズムで参照される画像処理パラメータを変化させたもの等とできる。
(一致度の算出)
このようにして、必要に応じて画像処理がなされた差分候補画像に対して、それぞれ一致度が一致度算出部57cにより算出される。図84Aの例では、得られた良品背景差分候補画像に応じたパターンモデルに対する背景候補画像の一致度を、それぞれ算出する。なお三点ティーチングの場合は、良品背景差分候補画像に応じたパターンモデルに対する不良品背景差分候補画像の一致度を、それぞれ算出する。
(明るさ条件の選択)
このようにして明るさ条件候補毎に一致度が得られた状態で、選択条件に従って適切な明るさ条件を明るさ条件選択部55dで選択する。選択条件として、図84Aの例では、良品背景差分候補画像と背景候補画像の一致度を評価値として、明るさ条件を評価する。なお三点ティーチングの場合は、良品背景差分候補画像と不良品背景差分候補画像の一致度を評価値として、明るさ条件を評価する。明るさ条件選択部55dは、例えば複数の明るさ条件候補の中から、一致度が最も低い明るさ条件候補を、最適な明るさ条件として選択する。最も低い一致度の明るさ条件を選択することで、運転モードにおいては良品画像OKIとの高い一致度とより分離されることとなって、閾値を設定し易くなる。
ただし、選択条件は一致度が最小であることに限定されない。すなわち、一致度が最小のものを最適な明るさ条件として常に選択する必要は無く、隣接する一致度との差を考慮して決定することもできる。例えば表2に示すように、明るさ条件候補毎に一致度が算出された場合、最も低い一致度を最適な明るさ条件とするならば、最適な明るさ条件は一致度40%の明るさ条件7のときである。ただし、この場合は隣接する明るさ条件候補との間で、一致度の差が大きい。このことは、照明の明るさが少しでも変わると、評価値が大きく変動することを示している。いいかえると、周囲の明るさの変動に対する耐性が弱いことが想定される。一方、二番目に一致度が小さい明るさ条件候補3(一致度45%)は、隣接する明るさ条件候補との間で差が比較的少ない。このことから、明るさの変動に対する耐性に優れていると評価でき、適切な明るさ条件として採用に値すると評価される。このように、明るさ条件候補の一致度が小さいことに加えて、その近傍の明るさ条件候補の一致度との差が相対的に少ないことも、明るさ条件候補を選択する選択条件として考慮することが好ましい。
(画像処理内容割当部55f)
以上の例では、撮像条件として画像の明るさ条件を変化させて、最適な明るさ条件を選択する手順について説明した。前述の通り条件割当部55は、このような撮像条件や画像の圧縮度に加えて、画像処理条件を調整することもできる。ここで画像処理の条件には、選択する画像処理アルゴリズムの種別や、選択した画像処理アルゴリズムの画像処理パラメータの調整等が含まれる。画像処理アルゴリズムの条件を変更あるいは調整する場合、条件割当部55は、画像処理で実行される画像処理アルゴリズムの条件を、良否判定部57dによる判別結果が応答時間内に出力されるように変更するための画像処理内容割当部55fとして機能する。これにより、ユーザが望む応答時間内に、良否判定に用いる画像処理の処理負荷を適切な負荷に変更することができ、所与の時間内に画像処理を終えられるようにしてインライン処理等に対応できる。
次に、条件割当部55が、応答時間設定部51eから設定された応答時間に応じて登録設定条件として、画像処理条件を調整する手順について、説明する。ここで、設定モードにおいて撮像部21で光学画像を一枚だけ撮像し画像登録を行う構成とする他、登録設定条件を異ならせた複数の候補登録設定条件毎に、画像を候補画像として撮像してこれらを保持し、これらの複数枚の候補画像中から、登録するのに適した画像を選択し、登録画像とすることもできる。ここでは、条件割当部55が、複数の異なる候補登録設定条件で候補画像を複数枚撮像し、この内、良否判定に適した最適な登録設定条件を選択して、この条件で得た候補画像を登録画像として登録する手順について、表3、表4に基づいて説明する。
光学画像の撮像にかけることのできる時間は、応答時間設定部51eで応答時間が設定された段階で自ずと定まる。すなわち、応答時間内に画像を撮像し、圧縮し、必要に応じて差分処理し、特徴量を算出して良否判定を行うことから、撮像に割り当てられる時間は、与えられた応答時間の内の一定の時間に制限される。よって、応答時間に従って、撮像にかけることのできる時間の上限が決定され、すなわち撮像時の露光時間の上限も決定される。また、撮像部21で用いる撮像素子やカメラ211等のハードウエア、ソフトウエアの仕様によっても設定可能な露光時間の範囲が決まる。これらを勘案して、選択可能な露光時間は、予め撮像部21側で設定可能な露光時間の範囲と、与えられた応答時間に従って決定されることになる。条件割当部55は、このようにして、応答時間に従って選択可能な露光時間の組み合わせを決定する。例えば、露光時間が予め複数の組み合わせで提供されている場合、選択可能な露光時間の組み合わせを条件割当部55が抽出する。
また、応答時間設定部51eが、応答時間を任意の数値でなく、予め用意された複数の応答時間候補群から、ユーザに選択させるように構成されている場合は、応答時間候補毎に選択可能な露光時間の組み合わせが決定されることから、応答時間候補の選択に応じて自動的に露光時間の候補群を抽出するよう、予めテーブル等で用意しておくこともできる。この方法であれば、条件割当部55側で行うべき処理を軽減でき、より安価、軽負荷、あるいは高速な処理が実現できる。
応答時間に対する露光時間の組み合わせの例を表3に示す。このように、応答時間が長いほど、選択可能な露光時間の数も多くなる。なお、画像の撮像後にも画像の圧縮、差分処理、判定処理等、他の処理が必要なことから、応答時間のすべてを露光時間に費やすことができないことは前述の通りである。
また、登録設定条件には、露光時間といった画像の撮像条件の他、これに代えて、あるいはこれに加えて、画像処理の条件や、画像の圧縮度(解像度)も適用できる。一例として、応答時間に対する画像処理アルゴリズムと解像度の組み合わせを、表4に示す。
この表において、Holistic[A]及びHolistic[B]は、ライブ画像全体から特徴量を抽出するための画像処理アルゴリズムである。また、Search[A]及びSearch[B]は、ライブ画像中からワークを検索・特定し、特定したワークから特徴量を抽出するための画像処理アルゴリズムである。ここで、Holistic[A]は、特徴量の一つであるエッジを抽出する際に、Robertsフィルタを用い、Holistic[B]は、Sobelフィルタを用いる。また、Search[A]は、ライブ画像中からワークの位置を検索する際に、画素値を元に検索(正規相関検索)し、Search[B]は、エッジ等の幾何情報を元に検索する。なお、画像処理アルゴリズムの種類と解像度とが同じ組合せであっても、内部の処理の違いから、処理時間、識別性能、動作特性に差が生まれる。また画像処理には、画像サーチ時に回転許容角度に相当するパラメータを含めることもできる。
表4の例では、応答時間に対して画像処理アルゴリズムと解像度を共に調整する例を説明したが、本発明はこれに限らず、応答時間に対して露光時間、画像処理アルゴリズム、解像度を調整することもできる。一例として表5に、応答時間が与えられた場合(例えば20ms)、露光時間と、画像処理アルゴリズム種別と、解像度との選択可能な組み合せを示す。この表において、「○」は選択可能な組み合わせ、「×」は応答時間の制約により選択不可能な組み合わせ、網掛けの「×」は露光時間と画像処理アルゴリズム、解像度の組み合わせで選択不可な組み合わせを、それぞれ示している。
以上のように、応答時間に応じて、選択可能な登録設定条件の候補群が決定され、この内から、好ましい登録設定条件を条件割当部55で選択する。ここで、好ましい登録設定条件とは、前述の通り、運転モードにおいて良否判定を行う際、良品と不良品を確実に判別できるような条件である。そして良否判定部57dは、良品に対する一致度を評価値として、良否判定を行うところ、良品と不良品とを安定して分離するためには、すなわち両者を可能な限り分離して、中間に閾値を閾値算出部56cで設定するためには、不良品に対する一致度が極力低く算出されるような条件とすることが好ましい。したがって条件割当部55は、このようなよい登録状態を達成できるような登録設定条件、例えば露光時間、解像度、画像処理アルゴリズムの組み合わせを得ることが肝要となる。
なお、以上の例ではユーザが応答時間を応答時間設定部51eから指定できるように構成している。ただ、本発明はこの構成に限らず、応答時間を固定値とすることもできる。この場合、応答時間は既定の固定値として与えられるので、図75において応答時間が規定応答時間となる。この既定応答時間に基づいて、撮像時間の上限すなわち最大撮像時間は一義的に決まるため、この最大撮像時間の範囲内で、画像の撮像条件、撮像された画像の圧縮度、画像処理アルゴリズム等の登録設定条件を条件割当部55が割り当てる。このような手順を、図84Bに基づいて説明すると、図84Aと比べて応答時間設定部51eがない状態となり、応答時間は既定の固定値として与えられるので、この既定応答時間から一義的に決定され許容される最大露光時間に基づいて、明るさ条件候補設定部55cが明るさ条件を設定したり、画像処理内容割当部55fが画像処理を設定したりする。あるいは、画像圧縮度設定部55eが画像圧縮度を調整する。具体的な処理の流れは、前記と同様となる。
(最適な登録設定条件の決定)
次に条件割当部55が、このような登録設定条件の候補群から、適切な登録設定条件を見出して画像登録を行う手順を、図85のフローチャートに基づいて説明する。まずステップST1901において、応答時間を取得する。応答時間設定部51eからユーザに設定した応答時間、あるいは予め設定された固定値の応答時間が取得される。
次にステップST1902において、応答時間に応じて、候補登録設定条件を抽出する。候補登録設定条件は、変更可能なパラメータを予め定めておく。例えば、露光時間、解像度、画像処理アルゴリズムを調整可能とする場合は、ステップST1901で設定された応答時間に応じて、組み合わせ可能な露光時間、解像度、画像処理アルゴリズムの組み合わせを抽出する。この場合、指定された応答時間に対して、設定可能な露光時間、解像度、画像処理アルゴリズムの組み合わせを、予め候補登録設定条件テーブルとして用意し、設定保存部54dに保存しておくことができる。これにより候補登録設定条件テーブルを参照することで、設定された応答時間に応じて設定可能な露光時間、解像度、画像処理アルゴリズムの組み合わせを含む候補登録設定条件が抽出される。以下のステップでは、抽出された各候補登録設定条件毎に画像を撮像して一致度をそれぞれ評価し、得られた一致度の中から、最適な登録条件を選択する。
具体的には、まずステップST1903において、未評価の候補登録設定条件があるか否かを判定する。最初のループにおいては、未だ候補登録設定条件での撮像、評価を行っていないので、ステップST1904以降に進み、候補登録設定条件毎に実際に光学画像を撮像して一致度を演算する。具体的にはステップST1904において、未評価の候補登録設定条件に基づいて、光学画像の撮像から画像処理までを行い、一致度を算出する。この工程は、上述した図79、図80、図81、図82、図83等における設定時の各登録処理と同様である。すなわち、二点ティーチング、三点ティーチング、一点ティーチングのいずれを用いてもよい。さらに、同一の撮像条件(例えば露光時間)で何度も撮像を繰り返す無駄を省くため、適宜画像を保存しておき、同じ撮像条件の際には保存済みの画像を読み込んで処理してもよい。
次にステップST1905において、得られた閾値の評価値が最小か否かを判定する。最初のループにおいては未だ評価値が保存されていないことから、これが最小値となるため、ステップST1906に進み、このときの評価値と、これを得た候補登録設定条件を保存して、ステップST1903に戻り、処理を繰り返す。以下、同様に新たな候補登録条件で撮像、画像処理を行い、評価値を取得して、ステップST1905において評価値が最小値か否かを判定し、最小値でない場合はステップST1903に戻って次の候補登録設定条件での評価を繰り返し、一方評価値が最小の場合は、ステップST1905からステップST1906に進み、最小となる評価値とそのときの候補登録設定条件を更新した上で、ステップST1903に戻って評価を繰り返す。このようにして、すべての候補登録設定条件の評価が終了すると、ステップST1903からステップST1907に進み、評価値が最小となった候補登録設定条件を、登録設定条件として設定する。このようにして、条件割当部55が、指定された応答時間において設定可能な候補登録設定条件の中から、最も不良品の一致度が低くなる最適な登録設定条件を決定できる。
(画像処理アルゴリズムの変更)
ここで、条件割当部55の一形態である画像処理変更部が画像処理の内、画像処理アルゴリズムを入れ替える例を、図86A〜図86Bのフローチャートに基づいて説明する。ここでは、図86Cに示す良品画像OKI、図86Dに示す不良品画像NGI、図86Eに示す背景画像BGIが設定モードにおいて登録されており、図86Fに示す評価画像が運転モードで得られているものとする。そして図86Aのフローチャートに示すように、画像処理は登録モードで登録処理A、運転モードで前処理Bと評価処理Cの順で処理されるものとする。このような一連の画像処理に対して、画像処理変更部が画像処理の一部を変更し、図86A〜図86Bに示すように、前処理Bを前処理Dに変更する例を説明する。
ここでは、前述した良品画像OKIと背景画像BGIの二点ティーチングに際して、登録モードにおいて良品背景差分画像を取得し、この良品背景差分画像をマスター画像として登録し、運転モードにおいてこのマスター画像と入力画像の一致度を算出して良否判定を行う例を考える。
具体的には、図86Aの登録処理Aでは、図86Cの良品画像OKIから図86Eの背景画像BGIを除いて、図86Gに示すように良品ワークのみを抽出した単純差分画像を生成する。さらに得られた良品ワークの画像から、良品ワークの特徴量を抽出する。例えば特徴量抽出部56bが、図86Gの良品ワークの画像から特徴量として、輝度平均値75、輝度分散30、エッジピクセル50等を演算する。このようにして登録モードにおいて登録処理Aを予め処理した上で、運転モードにおいて前処理B、評価処理Cを行う。なお指定された応答時間内に処理する必要があるのは、いいかえると処理時間を短縮化する必要がある画像処理は、設定モードでの処理でなく、運転モードにおけるこれら前処理B、評価処理Cの処理時間である。
前処理Bでは、入力画像として得られた評価対象の評価画像(図86F)に対して、登録処理Aで切出した良品ワーク(図86G)を画像サーチする。これにより、図86Hに示すように評価画像中から良品ワークが特定される。
そして評価処理Cにおいて、評価画像(図86H)から切り出したワーク領域(図86J)に対して、特徴量を抽出し評価する。さらに、登録処理Aにおいて抽出済みの特徴量と比較し、一致度を算出する。例えば特徴量抽出部56bが、図86Jのワーク領域から特徴量として、輝度平均値70、輝度分散30、エッジピクセル55等を演算する。得られたワーク領域の特徴量を、前述した良品ワークの画像の特徴量と対比して、良否判定部57dが良否判定を行う。
以上の画像処理においては、前処理Bでの処理時間がかかる。このため、設定された応答時間が短い場合は、運転モードにおいて前処理Bと評価処理Cを応答時間内に終えることができないことがある。この場合に、画像処理変更部は、図86Bに示すように、前処理Bを、より軽負荷の前処理Dに変更する。前処理Dでは、例えば図86Iに示すように、評価画像(図86F)に対してワーク画像の画像サーチを行うことに代えて、背景画像BGI(図86E)との差分処理を行う。これによって、図86Fの評価画像中から、図86Iに示すように良品ワークの領域を切り出すことができる。これにより、評価画像中からの背景の除去という共通の目的に対して、画像サーチよりも簡素化した前処理に置き換えることで処理時間の短縮化が図られ、応答時間内に画像処理を終えることが可能となる。
(画像処理アルゴリズムの構成要素の変更)
以上の例では、画像処理変更部が画像処理の内、画像処理アルゴリズムを入れ替える方法について説明した。ただ、画像処理変更部が画像処理の条件を変更する方法は、画像処理アルゴリズムの差し替えに限らず、他の方法とすることもできる。次に、画像処理変更部が画像処理の条件を変更する他の例として、画像処理フローの構成要素を変更する例について、図87A、図87Bのフローチャートに基づいて説明する。ここで扱う画像(良品画像OKI、不良品画像NGI、背景画像BGI、評価画像)は前述した図86C〜図86Fと同じとし、また画像処理の条件を変更する前の一連の画像処理は、図87Aに示すとおりであり、前述した図86Aと同じとする。
まず、変更後の登録モードにおける登録処理A'では、良品画像OKI(図86C)と背景画像BGI(図86E)の差分により、良品ワークを特定し、さらに良品ワークの特徴量を抽出する。この画像処理は図86A(図87A)の登録処理Aと同じであるが、特徴量の抽出に際して、画像処理アルゴリズムの画像処理パラメータを、登録処理A'では登録処理Aから変更している。具体的には、登録処理Aにおいては、特徴量の内、「エッジ特徴」の抽出にはSobelフィルタを用いる。一方、図87Bの登録処理A'においては、「エッジ特徴」抽出には2×2のRobertsフィルタを用いる。
ここでSobelフィルタは、図88A、図88Bに示すように、対象画素の近傍の8画素に対して、SobelX(図88A)、SobelY(図88B)の2通りのフィルタを掛ける。その後、SobelXを掛けたエッジのX成分、SobelYを掛けたエッジのY成分をそれぞれSx、Syとし(図88C)、強度=√(Sx2+Sy2)、角度=Arctan(Sy/Sx)を算出する。なお、ここでは3×3のSobelフィルタを用いたが、これに限らず、例えば5×5等、他のSobelフィルタを用いてもよい。
一方、Robertsフィルタは、Sobelフィルタを簡易化した画像処理である。具体的には、SobelX、SobelYに代えて、これらを簡素化した図89A、図89Bに示すRobertsX、RobertsYのフィルタを掛ける。これにより得られたRobertsXを掛けたエッジのX成分、RobertsYを掛けたエッジのY成分であるSx'、Sy'(図89C)から、上記Sobelフィルタと同様に強度=√(Sx'2+Sy'2)、及び角度=Arctan(Sy'/Sx')を算出する。この結果、ワークの特徴量として、例えば輝度平均値75、輝度分散30、エッジピクセル50等が演算される。なお、SobelとRobertsのフィルタの違いによりエッジピクセルの特徴値が変わることがある。
このようにして設定モードの画像処理を先に行った上で、登録モードの画像処理である前処理B及び評価処理C、C'を行う。前処理Bは図87A、図87Bとも、前述した図86Aの前処理Bと同じく、切り出したワークを画像サーチして、評価画像(図86F)からワークを切り出す(図86H)。
さらに評価処理C、C'において、評価画像から切り出したワーク領域(図86J)の特徴を抽出し、評価する。ここで、図87Aの評価処理Cでは、登録処理Aと同様のSobelフィルタを用いているのに対して、変更後の図87Bにおける評価処理C'では、登録処理Aと同様のRobertsフィルタを用いている。そしてRobertsフィルタを用いて得られた評価画像の特徴量に対して、登録処理Aで抽出済みの特徴量と比較し、一致度を算出する。このようにして、画像処理の構成要素の一であるエッジ抽出という共通の画像処理に対して、エッジ抽出の手法を簡素化することで処理時間を短縮化し、設定された応答時間内に画像処理を終えることが可能となる。
また、前述した例では、画像処理アルゴリズム自体の変更と、画像処理アルゴリズムの構成要素の変更のいずれかを画像処理内容割当部55fで行う例を説明したが、本発明はこれに限らず、例えば画像処理アルゴリズムの変更と、画像処理アルゴリズムの構成要素の変更を組み合わせることもできる。また画像処理内容割当部55fは、既に設定された画像処理内容を応答時間に応じて変更する他、予め応答時間が与えられた状態で、適切な画像処理を割り当てる初期動作に利用することもできる。
さらに、画像処理アルゴリズムにおける画像処理パラメータの変更を適用してもよい。例えば、Sobelフィルタに対して、フィルタのサイズを3×3から5×5等に変更することが挙げられる。このように画像処理変更部は、登録モードにおける良品画像OKIのエッジ抽出、及び運転モードにおける入力画像のエッジ抽出のためのエッジフィルタのフィルタサイズを変更することができる。
なお画像処理は、単一の画像処理アルゴリズムで構成される他、複数の異なる画像処理アルゴリズムで構成されてもよい。いずれの場合においても画像処理内容割当部55fは、各画像処理アルゴリズムに対して、各画像処理アルゴリズムや画像処理パラメータの全部又は一部を、良否判定部57dによる判別結果が応答時間内に出力されるように変更できる。
また一致度算出部57cは、運転モードにおいて、複数の異なる画像処理アルゴリズム毎に、マスター画像に対する入力画像の一致度の基礎となる第一一致度を算出するよう構成してもよい。
さらにまた前記の例では、良品画像OKIと背景画像BGIの二点ティーチングに際して、良品背景差分画像をマスター画像として用いる例を説明したが、本発明はこれに限らず、例えば良品画像OKIと不良品画像NGIの二点ティーチングに際して、良品不良品差分画像をマスター画像として用いてもよい。あるいは良品画像OKIと不良品画像NGI(図86D)と背景画像BGIの三点ティーチングに際して、良品背景差分画像に応じたマスター画像、及び不良品背景差分画像に応じたマスター画像を登録モードにおいて登録し、運転モードにおいてこれら良品背景差分画像のマスター画像、不良品背景差分画像のマスター画像と、入力画像との一致度をそれぞれ算出して良否判定を行う際に、画像処理内容割当部55fで画像処理の条件を変更することもできる。あるいはまた、背景画像BGIを登録する一点ティーチングに際して、背景画像BGIをマスター画像として入力画像との一致度を算出する際、画像処理内容割当部55fで画像処理の条件を変更することもできる。
前述した例では、一致度算出部57cは、マスター画像と入力画像との特徴量の一致度合いを示す一致度を算出する。ここで一致度を算出する基礎となるマスター画像は、画像/設定記憶部54で登録した良品画像OKIや不良品画像NGI、背景画像BGIに応じて構成される。例えば各種の差分画像やこれを圧縮した圧縮差分画像、あるいはエッジ画像とできる。また、マスター画像に代えて、画像以外の情報に基づいて特徴量を算出してもよい。例えばエッジや輝度等の特徴量に基づいて、一致度算出部57cで一致度を算出してもよい。このように一致度算出部57cが一致度を算出する基礎は、必ずしも画像データに限定されず、エッジや輝度などの特徴量といった他の情報も利用でき、本明細書においてはこれら一致度算出の基礎をなす情報をパターンモデルと呼ぶ。
(明るさ条件の再設定)
最適な登録設定条件の決定の項目において説明したように、条件割当部55が、指定された応答時間において設定可能な候補登録設定条件の中から、不良品の一致度が最も低くなる最適な登録設定条件を決定する。しかしながら、例えば、露光時間、解像度、画像処理アルゴリズムが変わった場合には、撮像される画像が変化するため、設定変更後に再度リファレンスとなる登録画像を再撮像し再登録する必要がある。これに対して、本実施形態では、少なくとも一つの画像を登録することで、露光時間、解像度、画像処理アルゴリズムなどの調整値を決定する手段をもち、登録時は現在の応答時間では使われることがない調整値の組み合わせであっても撮像して画像を保存しておくことで、ユーザが設定値を変更した際、画像の再登録をしなくても最適な調整値を決定できる。ここでは、この調整値のうち露光時間に着目し、この露光時間を含む明るさ条件の再設定について説明する。
表3は、応答時間と露光時間との組み合わせによる評価を示すための表である。本実施形態に係る画像処理センサ1、11が、仮に、明るさ条件の再設定機能を有していない場合には以下のような不都合が生じる。この図に示すように、例えば、応答時間として20msが設定され、露光時間が0.2ms〜3msの4枚の画像を取得する場合、例えば二点ティーチングであれば、良品画像OKIの登録に4枚、背景画像BGIの登録に4枚取得し、それから露光時間を決定する処理を行い、例えば露光時間3msが最適と決定された場合は、不揮発性メモリに3msの良品画像OKI及び背景画像BGIを保存する。この後、応答時間が20msから50msに変更された場合、表3からは、露光時間としては5msが最適であるが、応答時間を20msとした際の登録設定条件では、5msでの撮像及び保存を行っていないため、ユーザは、応答時間を50msに設定し、再度ワークWKを設置して、露光時間を5msにして撮像を行わなければならない。なお、保存先メモリは揮発性でも不揮発性でも構わない。
これに対して、本実施形態では、露光時間が0.2ms〜20msの7枚の画像を、現在の応答時間にかかわらず、すべての応答時間に対して取得し、その後、各応答時間での最適な露光時間を決定する。この図の例であれば、0.2ms、1.5ms、3ms、5msの4つの露光時間における例えば画像を記憶しておく。こうすることで、応答時間が20msから50msに変更された場合であっても、再度ワークWKを設置して撮像せずとも、5msを最適な露光時間として決定することができる。
表3の例では、応答時間が50ms及び100msの場合、露光時間を5msより長くしても良い評価が得られないことを示している。これは、明るくしていくと、S/Nが良くなり、綺麗に撮像できるが、明るすぎると、ハレーションの影響を受けるようになるからである。このような場合でも、応答時間に対して、最適な露光時間も記憶しているので、再度ユーザが設置して再撮像しなくて済む。
実施例1に係る明るさ条件の再設定を行う手順を図90のフローチャートに基づいて説明する。まずステップST2001において、撮像し、ライブ画像LVIとして表示する。ステップST2002において、SETキー42の押下の有無を判定し、SETキー42の押下が検出された場合は、ステップST2003に進み、最新のライブ画像LVIまたは新たに撮像した画像を良品画像OKIとして登録する。SETキー42の押下が検出されない場合は、ステップST2001に戻り、ライブ画像LVIを表示する。ここまでは良品画像OKIの登録の流れであるが、ステップST2004〜ステップST2006の不良品画像NGIの登録の流れ、及び、ステップST2007〜ステップST2009の不良品画像NGIの登録の流れも同様である。良品画像OKI、不良品画像NGI、及び、背景画像BGIの登録が完了したら、ステップST2010において、取得した画像群から各応答時間での最適な露光時間を算出し、その露光時間での画像を保存する。ステップST2011に進み、現在の応答時間で最適な露光時間の画像でティーチング処理を実行する。
次に、ステップST2003、ステップST2006、ステップST2009における登録処理の手順を図91のフローチャートに基づいて説明する。まずステップST2101において、テーブル記憶部から、各応答時間での露光時間設定を取得する。ステップST2102に進み、取得しておくべき露光時間設定を決定する。ステップST2103において、設定の組み合わせ分だけ、設定、画像取得、保存を繰り返す。
最後に、ティーチング処理後に応答時間を変更する場合の動作手順について、図92のフローチャートに基づいて説明する。まず、ステップST2200において処理を開始し、ステップST2201において、応答時間が変更されたかを判定する。変更されていなければ、ステップST2200に戻り、この判定を繰り返す。変更されていれば、ステップST2202において、変更後の応答時間での最適な露光時間、及び、その露光時間での画像を静止画像記憶部54aから読み出す。次に、ステップST2203において、決定した露光時間の画像によるティーチング処理を行う。
実施例1では、すべての応答時間での最適な露光時間を算出しているが、この算出に時間がかかる場合、ティーチング完了までの時間がかかり、ユーザの利便性を失う。したがって、このような場合には、取り得る露光時間すべての画像(表3の例では、0.2〜20msの7枚)を保存しておいて、応答時間が変更された際には、その応答時間での最適な露光時間を応答時間変更後に算出してもよい。
実施例2に係る明るさ条件の再設定を行う手順は、実施例1の場合と概ね同様であるが、図90のフローチャートにおけるステップST2010に対応するステップが異なる。すなわち、実施例2では、このステップにおいて、取得した画像群から最適な露光時間の選択と、その露光時間の画像によるティーチング処理とを実行するが、評価するための計算はしない点で実施例1と異なっている。また、実施例2に係るティーチング処理後に応答時間を変更する場合の動作手順については、図92のフローチャートのステップST2202及びステップST2203に対応するステップが実施例1の場合と異なる。実施例2では、ステップST2202に対応するステップにおいて、テーブル記憶部から変更後の応答時間での露光時間設定パターンを取得する。そして、ステップST2203に対応するステップにおいては、そのパターン内で、最適な露光時間を決定する。すなわち、実施例2では、応答時間での最適な露光時間を応答時間変更後に算出するようにしている。
以上のように、実施例1も実施例2も、露光時間のみ変化させて画像を記憶したが、解像度、画像処理アルゴリズムが変わった場合にも同様に適用することができる。例えば、HDR(ハイダイナミックレンジ)のON/OFFがCMOSセンサの機能としてあった場合、各ティーチングステップで、各露光時間での画像のみならず、HDRがON/OFFの2パターン×各露光時間での画像を記憶すれば、HDRのON/OFF設定が変わった時でも再撮像不要とできる。
ここで、HDRのON/OFFと露光時間との組み合わせにおける登録処理の手順を図93のフローチャートに基づいて説明する。まずステップST2301において、テーブル記憶部から、各応答時間での露光時間設定を取得する。例えば表3の例と整合させると、0.2、0.8、1.5、3、5、10、20msの7つの設定を取得する。そして、ステップST2302において、取得しておくべき、露光時間と設定の組み合わせを決定する。例えば、露光時間7パターン×HDR ON/OFFの2パターンの計14パターンを決定する。ステップ1602において、ある組み合わせで撮像できるように装置を設定変更する。さらにステップST2303では、登録設定条件に基づいて、画像を取得する。ステップST2304に進み、決定したパターン分の画像を取得したか否かを判定し、取得していなければ、ステップST2302に戻り、パターン分の画像を取得が完了するまで、画像の取得を繰り返す。続いて、このティーチング処理後に応答時間を変更する場合の動作手順について、図94のフローチャートに基づいて説明する。まずステップ1701において、例えば、応答時間が20msから50msに変更した場合を考える。ステップST2402において、テーブル記憶部から応答時間50msでの露光時間設定パターン(0.2ms〜10msの6パターン)を取得する。次に、ステップST2403において、6パターンの中から、最適な露光時間を算出し、例えば5msと決定する。ステップST2404において、決定した5msの露光時間の画像によるティーチング処理を行う。
また、デジタルズーム(撮像範囲の設定)についても同様で、例えばデジタルズームが1倍であった時点での設定では、1画素飛ばしの画像で十分であっても、全視野において画素飛ばしをしない画像を取得しておけば、デジタルズームの設定が変わっても、再撮像を不要とできる。このようなパラメータは他にも、例えば、下記のようなものが考えられる。
・CMOSセンサの近傍画素合算出力 ON/OFF
・最大露光時間設定(ワークスピード対応のための設定)
・アルゴリズム設定(±180度許容、精密モード:処理時間が変わるので、処理できる画素数が変わり、画素飛ばし設定が各応答時時間で変わる。自動明るさ調整など)
以上説明したように、本実施形態に係る画像処理センサ1、11は、不良品画像に対する不良品画像の一致度100%と、その不良品画像に対する良品画像の一致度との間に閾値を設定し、最新の入力画像と不良品画像との一致度を算出し、当該閾値を超えた場合に、ONを出力する出力設定を備えたので、光電センサの負出力のように、何も無いか、不良品ワークに対してはONを出力し、良品ワークに対してはOFFを出力するのとは異なり、不良品ワークに対してのみONを出力する設定が可能となる。また、良品及び不良品の両ワークが流れている状態を監視している従来の画像処理装置において、不良品のみを排出制御するためには、外部からのトリガー信号が必要であったところ、本実施形態に係る画像処理センサ1、11は、不良品ワークを検出する出力設定と、良品ワークを検出する出力設定とを切替可能としたので、不良品のみを排出制御する場合でも、外部からのトリガー信号を不要とできる。