(54)【発明の名称】画像検査装置、画像検査方法、画像検査装置の設定方法、画像検査プログラム、画像装置の設定検査プログラム及びコンピュータで読み取り可能な記録媒体並びに記録した機器
(58)【調査した分野】(Int.Cl.,DB名)
【発明の概要】
【発明が解決しようとする課題】
【0006】
本発明は、このような背景に鑑みてなされたものであり、その目的の一は、画像処理を用いた検査に際してカメラ部や照明部の設置作業を容易に行えるようにした画像検査装置、画像検査方法、画像検査装置の設定方法、画像検査プログラム、画像装置の設定検査プログラム及びコンピュータで読み取り可能な記録媒体又は記録した機器を提供することにある。
【0007】
本発明の第1の形態に係る画像検査装置によれば、検査対象物の外観検査を行うための画像検査装置であって、検査対象物に照明光を照射するための照明部と、前記照明部とは別体に設けられ、前記照明部から検査対象物に照射された照明光が該検査対象物で反射された反射光を集光する集光光学系と、複数の撮像素子がライン状に並べて配列され、前記集光光学系にて集光された反射光を受光するためのラインカメラとを備える撮像部と、前記撮像部内に設けられ、前記集光光学系の光軸と平行な方向をZ軸、該Z軸と直交し、且つ前記撮像素子の並び方向と平行な方向をX軸、前記X軸およびZ軸と直交する方向をY軸とし、前記撮像部の前記X軸、Y軸およびZ軸の水平方向又は重力方向に対する傾きを示す値を出力可能な撮像傾きセンサと、前記撮像傾きセンサから出力された傾きを示す値に基づいて、前記撮像部の前記X軸、Y軸、Z軸の傾きの内、少なくともいずれか2つの傾きの度合いを示す図又は値を表示部に表示させるための表示制御部と
、前記撮像部の設定時の傾きを示す値として、前記撮像傾きセンサから出力される前記X軸、Y軸、Z軸の傾きの内、少なくともいずれか一の傾き値を登録する傾き値登録部と、前記撮像傾きセンサにより得られた、現在の前記撮像部の傾きを示す値と、前記傾き値登録部により登録された設定時の傾きを示す値とに基づいて、前記撮像部の姿勢が前記記憶された姿勢から乖離しているか否かを判定し、該判定結果に応じて、警告を出力する警告出力部とを備えることができる。上記構成により、撮像部の設置時において現在の傾きを表示部に表示させることが可能となり、ユーザはこの傾きに基づいて撮像部の傾きを調整することが容易となる。
また、第2の形態に係る画像検査装置によれば、上記構成に加えて、前記警告出力部により警告を発する閾値となる許容誤差範囲を、予め警告条件として受け付け、前記警告出力部は、前記撮像傾きセンサから運用時に得られた前記傾きを示す値が、設定時に前記傾き値登録部に登録された値から前記警告条件として受け付けた閾値よりも乖離しているか否かを判定するよう構成できる。
【0008】
さらに、第
3の形態に係る画像検査装置によれば、上記構成に加えて、さらに、前記表示制御部に接続された表示部を備えており、前記表示部において、前記少なくともいずれか2つの傾きの度合いをリアルタイムに更新して表示可能とすることができる。上記構成により、撮像部の設置時において現在の傾きをリアルタイムに表示部に表示させることが可能となり、ユーザはこの傾きに基づいて撮像部の傾きを調整することが容易となる。
【0009】
さらに
また、第
4の形態に係る画像検査装置によれば、上記構成に加えて、前記表示部において、前記撮像部の外観を模した撮像模式図を所定の基準姿勢で表示させると共に、前記少なくともいずれか2つの傾きに応じた角度分だけ傾斜させた傾斜軸を重ねて表示させるよう構成できる。上記構成により、ユーザは撮像部の傾斜を視覚的に把握できる。
【0010】
さらにまた、第
5の形態に係る画像検査装置によれば、上記構成に加えて、前記表示部において、前記撮像模式図に対し、重力方向に沿った鉛直線を重ねて表示させ、前記少なくともいずれか2つの傾きに応じた角度分だけ傾斜させた傾斜軸を重ねて表示させるよう構成できる。
【0011】
さらにまた、第
6の形態に係る画像検査装置によれば、上記いずれかの構成に加えて、前記表示部において、前記撮像模式図を、YZ平面(X軸)、XZ平面(Y軸)、XY平面(Z軸)で表示させた平面図にてそれぞれ表示させることができる。
【0013】
さらにまた、第7の形態に係る画像検査装置によれば、上記いずれかの構成に加えて、前記表示部において、前記撮像模式図
を構成する面を、該面が受けている重力の大きさに応じて区別して表示可能とできる。
【0014】
さらにまた、第8の形態に係る画像検査装置によれば、上記いずれかの構成に加えて、前記表示部において、
受けている重力が弱い面を、
受けている重力が強い面よりも透過度を高めて表示させ
、あるいは非表示とすることができる。
【0015】
さらにまた、第9の形態に係る画像検査装置によれば、上記いずれかの構成に加えて
、前記表示部は、前記傾き値登録部に登録された傾き値と、前記撮像傾きセンサが出力した現在の撮像部の傾き値とを同時に表示可能に構成できる。
【0016】
さらにまた、第10の形態に係る画像検査装置によれば、上記いずれかの構成に加えて、前記照明部を、少なくとも一方向に複数の照明素子を配列した照明とできる。
【0017】
さらにまた、第11の形態に係る画像検査装置によれば、
検査対象物の外観検査を行うための画像検査装置であって、検査対象物に照明光を照射するための照明部と、前記照明部とは別体に設けられ、前記照明部から検査対象物に照射された照明光が該検査対象物で反射された反射光を集光する集光光学系と、複数の撮像素子がライン状に並べて配列され、前記集光光学系にて集光された反射光を受光するためのラインカメラと、を備える撮像部と、前記撮像部内に設けられ、前記集光光学系の光軸と平行な方向をZ軸、該Z軸と直交し、且つ前記撮像素子の並び方向と平行な方向をX軸、前記X軸およびZ軸と直交する方向をY軸とし、前記撮像部の前記X軸、Y軸およびZ軸の水平方向又は重力方向に対する傾きを示す値を出力可能な撮像傾きセンサと、前記撮像傾きセンサから出力された傾きを示す値に基づいて、前記撮像部の前記X軸、Y軸、Z軸の傾きの内、少なくともいずれか2つの傾きの度合いを示す図又は値を表示部に表示させるための表示制御部と、照明光の光軸と平行な方向をZ軸、Z軸と直交し、且つ照明素子の配列方向と平行な方向をX軸、前記X軸およびZ軸と直交する方向をY軸とし、前記照明部の、前記X軸、Y軸およびZ軸の水平方向または重力方向に対する傾きを示す値を出力可能な照明傾きセンサを備えることができる。
【0018】
さらにまた、第12の形態に係る画像検査装置によれば、上記いずれかの構成に加えて、前記表示部が、前記照明部を模した照明模式図を、
前記照明部のX軸、
前記照明部のY軸、
前記照明部のZ軸の傾きの度合いを示す模式図を表示するよう構成できる。
【0019】
さらにまた、第13の形態に係る画像検査装置によれば、上記いずれかの構成に加えて、前記表示部が、前記照明模式図の内、照明光を発する発光面を他の面と区別して表示するよう構成できる。上記構成によってユーザは照明部の発光面を視覚的に容易に判別できる。
【0020】
さらにまた、第14の形態に係る画像検査装置によれば、上記いずれかの構成に加えて、前記表示部が、前記照明模式図に、前記照明部が発する照明光を付加して表示させることができる。上記構成により、一般に照明部はカメラ部等に比べて特徴的な外観部分が少なく、各面を区別し難いところ、照明部が発する照明光を照明模式図に含めて表示させることで、視認性を向上させることができる。
【0021】
さらにまた、第15の形態に係る画像検査装置によれば、検査対象物の外観検査を行うための画像検査装置であって、検査対象物に照明光を照射するための照明部と、照明部とは別体に設けられ、照明部から検査対象物に照射された照明光が該検査対象物で反射された反射光を集光する集光光学系と、複数の撮像素子を二次元状に並べて配列され、集光光学系にて集光された反射光を受光するためのエリアカメラと、を備える撮像部と、撮像部内に設けられ、集光光学系の光軸と平行な方向をZ軸、該Z軸と直交し、且つ撮像素子の並び方向と平行な方向をX軸、X軸およびZ軸と直交する方向をY軸とし、撮像部のX軸、Y軸およびZ軸の水平方向又は重力方向に対する傾きを示す値を出力可能な撮像傾きセンサと、撮像傾きセンサから出力された傾きを示す値に基づいて、撮像部のX軸、Y軸、Z軸の傾きの内、少なくともいずれか2つの傾きの度合いを示す図又は値を表示部に表示させるための表示制御部と
、前記撮像部の設定時の傾きを示す値として、前記撮像傾きセンサから出力される前記X軸、Y軸、Z軸の傾きの内、少なくともいずれか一の傾き値を登録する傾き値登録部と、前記撮像傾きセンサにより得られた、現在の前記撮像部の傾きを示す値と、前記傾き値登録部により登録された設定時の傾きを示す値とに基づいて、前記撮像部の姿勢が前記記憶された姿勢から乖離しているか否かを判定し、該判定結果に応じて、警告を出力する警告出力部とを備えることができる。上記構成により、撮像部の設置時において現在の傾きを表示部に表示させることが可能となり、ユーザはこの傾きに基づいて撮像部の傾きを調整することが容易となる。
【0022】
さらにまた、第16の形態に係る画像検査装置によれば、上記いずれかの構成に加えて、前記撮像傾きセンサが、重力加速度センサを含むことができる。
【0023】
さらにまた、第17の形態に係る画像検査装置によれば、上記いずれかの構成に加えて、前記撮像部が、検査対象物の正反射光を受光する位置に配置され、デフレクトメトリの原理を利用して検査対象物の形状画像を生成するよう構成できる。
【0024】
さらにまた、第18の形態に係る画像検査方法によれば、検査対象物の外観検査を行うための画像検査方法であって、
集光光学系と撮像素子を含む撮像部内に設けられた撮像傾きセンサで、前記集光光学系の光軸と平行な方向をZ軸、該Z軸と直交し、且つ前記撮像素子の並び方向と平行な方向をX軸、前記X軸およびZ軸と直交する方向をY軸とし、前記撮像部の前記X軸、Y軸およびZ軸の水平方向又は重力方向に対する傾きを示す値を出力させる工程と、前記撮像傾きセンサから出力された傾きを示す値に基づいて、前記撮像部の前記X軸、Y軸、Z軸の傾きの内、少なくともいずれか2つの傾きの度合いを示す図又は値を表示部に表示させる工程と、検査対象物に照明部から照明光を照射し、前記照明部とは別体に設けられた集光光学系で、前記照明部から検査対象物に照射された照明光が該検査対象物で反射された反射光を集光し、複数の撮像素子がライン状に並べて配列されたラインカメラで、前記集光光学系にて集光された反射光を受光する工程と
、前記X軸、Y軸、Z軸の傾きの内、少なくともいずれか一の傾き値を登録値として登録する工程と、前記撮像傾きセンサにより得られた、現在の前記撮像部の傾きを示す値と、前記傾き値登録部により登録された設定時の傾きを示す値とに基づいて、前記撮像部の姿勢が前記記憶された姿勢から乖離しているか否かを判定する工程とを含むことができる。これにより、撮像部の設置時において現在の傾きを表示部に表示させることが可能となり、ユーザはこの傾きに基づいて撮像部の傾きを調整することが容易となる。
【0025】
さらにまた、第19の形態に係る画像検査装置の設定方法によれば、検査対象物の外観検査を行うための画像検査装置の設定方法であって、
集光光学系と撮像素子を含む撮像部内に設けられた撮像傾きセンサで、前記集光光学系の光軸と平行な方向をZ軸、該Z軸と直交し、且つ前記撮像素子の並び方向と平行な方向をX軸、前記X軸およびZ軸と直交する方向をY軸とし、前記撮像部の前記X軸、Y軸およびZ軸の水平方向又は重力方向に対する傾きを示す値を出力させる工程と、前記撮像傾きセンサから出力された傾きを示す値に基づいて、前記撮像部の前記X軸、Y軸、Z軸の傾きの内、少なくともいずれか2つの傾きの度合いを示す図又は値を表示部に表示させる工程と
、前記X軸、Y軸、Z軸の傾きの内、少なくともいずれか一の傾き値を登録値として登録する工程と、前記撮像傾きセンサにより得られた、現在の前記撮像部の傾きを示す値と、前記傾き値登録部により登録された設定時の傾きを示す値とに基づいて、前記撮像部の姿勢が前記記憶された姿勢から乖離しているか否かを判定する工程とを含むことができる。これにより、撮像部の設置時において現在の傾きを表示部に表示させることが可能となり、ユーザはこの傾きに基づいて撮像部の傾きを調整することが容易となる。
【0026】
さらにまた、第20の形態に係る画像検査プログラムによれば、検査対象物の外観検査を行うための画像検査プログラムであって、
集光光学系と撮像素子を含む撮像部内に設けられた撮像傾きセンサで、前記集光光学系の光軸と平行な方向をZ軸、該Z軸と直交し、且つ前記撮像素子の並び方向と平行な方向をX軸、前記X軸およびZ軸と直交する方向をY軸とし、前記撮像部の前記X軸、Y軸およびZ軸の水平方向又は重力方向に対する傾きを示す値を出力させる機能と、前記撮像傾きセンサから出力された傾きを示す値に基づいて、前記撮像部の前記X軸、Y軸、Z軸の傾きの内、少なくともいずれか2つの傾きの度合いを示す図又は値を表示部に表示させる機能と、検査対象物に照明部から照明光を照射し、前記照明部とは別体に設けられた集光光学系で、前記照明部から検査対象物に照射された照明光が該検査対象物で反射された反射光を集光し、複数の撮像素子がライン状に並べて配列されたラインカメラで、前記集光光学系にて集光された反射光を受光する機能と
、前記撮像傾きセンサにより得られた、現在の前記撮像部の傾きを示す値と、前記傾き値登録部により登録された設定時の傾きを示す値とに基づいて、前記撮像部の姿勢が前記記憶された姿勢から乖離しているか否かを判定する機能とをコンピュータに実現させることができる。上記構成により、撮像部の設置時において現在の傾きを表示部に表示させることが可能となり、ユーザはこの傾きに基づいて撮像部の傾きを調整することが容易となる。
【0027】
さらにまた、第21の形態に係る画像検査プログラムによれば、上記構成に加えて、さらに前記撮像部による検査対象物の撮像条件を、撮像条件を構成するパラメータ毎に
所定の順序で設定する
ために、前記パラメータの設定画面を順次表示するガイダンス機能をコンピュータに実現させることができる。
【0028】
さらにまた、第22の形態に係る画像検査装置の設定検査プログラムによれば、検査対象物の外観検査を行うための画像検査装置の設定検査プログラムであって、
集光光学系と撮像素子を含む撮像部内に設けられた撮像傾きセンサで、前記集光光学系の光軸と平行な方向をZ軸、該Z軸と直交し、且つ前記撮像素子の並び方向と平行な方向をX軸、前記X軸およびZ軸と直交する方向をY軸とし、前記撮像部の前記X軸、Y軸およびZ軸の水平方向又は重力方向に対する傾きを示す値を出力させる機能と、前記撮像傾きセンサから出力された傾きを示す値に基づいて、前記撮像部の前記X軸、Y軸、Z軸の傾きの内、少なくともいずれか2つの傾きの度合いを示す図又は値を表示部に表示させる機能と
、前記X軸、Y軸、Z軸の傾きの内、少なくともいずれか一の傾き値を登録値として登録する機能と、前記撮像傾きセンサにより得られた、現在の前記撮像部の傾きを示す値と、前記傾き値登録部により登録された設定時の傾きを示す値とに基づいて、前記撮像部の姿勢が前記記憶された姿勢から乖離しているか否かを判定する機能とをコンピュータに実現させることができる。上記構成により、撮像部の設置時において現在の傾きを表示部に表示させることが可能となり、ユーザはこの傾きに基づいて撮像部の傾きを調整することが容易となる。
【0029】
さらにまた、第23の形態に係るコンピュータで読み取り可能な記録媒体または記憶した機器は、上記ロボットシミュレーションプログラムを格納するものである。記録媒体には、CD−ROM、CD−R、CD−RWやフレキシブルディスク、磁気テープ、MO、DVD−ROM、DVD−RAM、DVD−R、DVD+R、DVD−RW、DVD+RW、Blu−ray(商品名)、HD DVD(AOD)等の磁気ディスク、光ディスク、光磁気ディスク、半導体メモリその他のプログラムを格納可能な媒体が含まれる。またプログラムには、上記記録媒体に格納されて配布されるものの他、インターネット等のネットワーク回線を通じてダウンロードによって配布される形態のものも含まれる。さらに記憶した機器には、上記プログラムがソフトウェアやファームウェア等の形態で実行可能な状態に実装された汎用もしくは専用機器を含む。さらにまたプログラムに含まれる各処理や機能は、コンピュータで実行可能なプログラムソフトウエアにより実行してもよいし、各部の処理を所定のゲートアレイ(FPGA、ASIC)等のハードウエア、又はプログラムソフトウエアとハードウェアの一部の要素を実現する部分的ハードウエアモジュールとが混在する形式で実現してもよい。
【発明を実施するための形態】
【0031】
以下、本発明の実施形態を図面に基づいて説明する。ただし、以下に示す実施形態は、本発明の技術思想を具体化するための例示であって、本発明は以下のものに特定されない。また、本明細書は特許請求の範囲に示される部材を、実施形態の部材に特定するものでは決してない。特に実施形態に記載されている構成部品の寸法、材質、形状、その相対的配置等は特に特定的な記載がない限りは、本発明の範囲をそれのみに限定する趣旨ではなく、単なる説明例にすぎない。なお、各図面が示す部材の大きさや位置関係等は、説明を明確にするため誇張していることがある。さらに以下の説明において、同一の名称、符号については同一若しくは同質の部材を示しており、詳細説明を適宜省略する。さらに、本発明を構成する各要素は、複数の要素を同一の部材で構成して一の部材で複数の要素を兼用する態様としてもよいし、逆に一の部材の機能を複数の部材で分担して実現することもできる。
(画像検査システム1000)
【0032】
本発明の一実施形態に係る画像検査システムを
図1に示す。この図に示す画像検査システム1000は、撮像部10と、照明部20と、画像検査装置100と、操作部40と、表示部50と、外部制御機器60を備える。この画像検査システム1000は、外観検査を行う対象物である検査対象物や被写体(ワークWK)の外観形状を示す画像を撮像部10及び照明部20で取得して、画像検査装置100で外部検査を実行し、その結果を外部制御機器60(例えばPLC)に出力し、必要に応じて表示部50に表示させる。
【0033】
ワークWKは、ワーク搬送機構WC上を搬送されており、この移動されるワークWKに対して撮像部10と照明部20で撮像を行い、表面形状に関する情報を取得する。ワーク搬送機構WCは、プログラマブルロジックコントローラ(PLC)などの制御装置によって制御されるコンベアなどのラインである。なお、撮像部や照明部と、ワークとは相対的に移動しておれば足り、例えばワーク側を固定し、撮像部側を移動させてもよい。あるいは、両者を移動させることもできる。
【0034】
また、画像の生成は、撮像部側で行ってもよいし、あるいは画像検査装置側で行ってもよい。さらに照明部と撮像部は、別部材としてそれぞれ設置する。このため、設置の際の位置や角度、姿勢などの物理的な位置決めや、ゲイン、シャッタースピード、光量などの調整作業が必要となる。
【0035】
画像検査装置100は画像を取得し、必要に応じて画像検査を行い、検査結果を出力する。なお画像検査とは、ワークの画像処理結果を用いて実行される製品検査であり、ワーク表面の傷の有無やワークが製品として良品であるかどうかを判定する良品検査、外観形状の適否といった形状判定、ワークの表面に表示された文字列の読み取り(OCR)等が挙げられる。画像検査装置は、ワークに対して必要な照明を照射して画像を撮像し、得られた画像データに対してエッジ検出等の画像処理を行い、その結果に基づいて良否判定等の画像検査を行う。
(操作部40)
【0036】
操作部40は、画像検査装置100に対して各種の操作や設定を行うための部材であり、キーボードやコンソール、あるいはマウスなどのポインティングデバイス等が利用できる。
(表示部50)
【0037】
表示部50は、得られた画像や、この画像に対する外観検査の結果、あるいは各種の設定を行うための設定画面、この設定画面に対して操作部40から入力される設定値等を表示させるための部材である。このような表示部50は、LCDやCRT、有機EL等のディスプレイである。また、表示部50をタッチパネルとすることで、操作部と表示部を兼用することもできる。
(画像検査装置100)
【0038】
画像検査システム1000の機能ブロック図の一例を
図2Aに示す。この図に示す画像検査システム1000は、撮像部10と、照明部20と、画像検査装置100とを備える。画像検査装置100には、操作部40や表示部50、外部制御機器60が接続される。
【0039】
画像検査装置100は、撮像部10で撮像された画像に対して、所定の画像処理を行い、さらに画像検査を行った結果を出力するための部材である。この画像検査装置100は、専用のハードウェアで構成する他、汎用の機器にソフトウェアをインストールしたもの、例えば汎用もしくは専用のコンピュータに画像検査プログラムをインストールした構成としてもよい。以下の例では、グラフィックボードなどのハードウェアを画像検査処理に特化させた専用のコンピュータに、画像検査プログラムをインストールした構成を例にして説明する。
【0040】
撮像部10や照明部20は、生成する画像の方式によって選択される。例えば、傷検査やOCRなど所望の検査に用いる光学画像の場合は、撮像部として二次元状に撮像素子を配置したエリアカメラを用いる。また照明部20には、撮像するワークWKに照明光を照射させる光源が配置される。あるいは、フォトメトリックステレオ法や、三角測距での高さ画像生成に必要な縞投影画像などの撮影を行う場合は、対向する2方向あるいは3方向以上から照明光を照射するように、複数の照明が配置される。あるいはまた、位相変位測定法(Phase Measuring Deflectometry:PMD、以下「デフレクトメトリ」と呼ぶ。)の原理に基づいてワークの形状画像を生成する場合は、撮像部は、ワークの正反射光を受光する位置に配置されたラインカメラを用いる。
【0041】
これら撮像部10と照明部20の動作は、画像検査装置100によって制御される。画像検査装置100は、照明部20による照明光を投光するタイミングと、撮像部10による撮像のタイミングを同期させる。以下、本明細書においては、デフレクトメトリで形状画像を生成する例について説明する(詳細は後述)。
【0042】
撮像部10は、
図3に示すように、ラインカメラ11と、集光光学系12を備える。また撮像部10は撮像傾きセンサ13を備えている。撮像傾きセンサ13は、撮像部10の傾き角度を検出するためのセンサであり、重力加速度センサが好適に利用できる。このような撮像傾きセンサ13は、撮像部に内蔵させることが好ましいが、一体的に限られず、別部材や外付けとしてもよい。
【0043】
集光光学系12は、照明部20からワークWKに照射された照明光が、このワークWKで反射される反射光を集光するための光学系であり、典型的には一以上の光学レンズである。
【0044】
ラインカメラ11は、複数の撮像素子がライン状に並べて配列されたものである。ラインカメラ11は、集光光学系12にて集光された反射光を受光するための部材である。例えばライン状に配置されたCCDやC−MOS等の撮像素子が利用できる。
【0045】
また、照明部20は、ワークWKに照明光を照射するための部材であり、光源を備える。光源として、発光ダイオード(LED)や液晶(LCD)、有機EL、ハロゲンランプ等が利用できる。特にLED素子を複数並べた照明部は、光量が多く指向性も高いので好ましい。
【0046】
ここで、
図3に示すように、集光光学系12の光軸に対し、光軸と平行な方向をZ軸、このZ軸と直交し、且つ撮像素子の並び方向と平行な方向をX軸、X軸およびZ軸と直交する方向をY軸とする。
図3においては、ワークがX方向に搬送されている。
(撮像傾きセンサ13)
【0047】
撮像傾きセンサ13は、撮像部10のX軸、Y軸およびZ軸の水平方向又は重力方向に対する傾きを示す値を出力する。
【0048】
画像検査装置100は、撮像部10と通信を行い、撮像傾きセンサ13から重力加速度を示す値を取得し、表示部50に表示させる。この画像検査装置100は、演算処理部31と、記憶部32と、表示制御部33と、警告出力部35を備える。
(演算処理部31)
【0049】
演算処理部31は、画像検査等の各種処理を行うための部材である。また演算処理部31は、撮像傾きセンサ13が出力する値を、表示部50に表示させる際にユーザに理解し易い数値に変換する。さらに演算処理部31は、光軸調整時に、静止状態の光軸調整用のワークをラインカメラで繰り返し撮像し、ライン方向に周期性を有する光軸調整用画像を生成する光軸調整用画像生成部としても機能する。
【0050】
記憶部32は、各種の画像データや設定データを保存するための部材である。この記憶部32は、ある時点の撮像部の姿勢を記憶するため、撮像傾きセンサ13が出力する値を保持する。また記憶部32は、撮像部10の傾斜状態を表す撮像模式
図143(後述する
図27等)の傾きを示す値を登録する傾き値登録部32aとして機能する。このような記憶部32には半導体メモリ等の不揮発性メモリやハードディスクが利用できる。あるいは記録媒体としてもよい。例えば媒体読取部として、可搬メディアを読み取り、または書き込むための部材として、USBメモリ(商品名)やSDカード(商品名)等の規格化された記録媒体、半導体メモリ等を接続して、データの読み書きを可能とすることもできる。また、無線接続やネットワーク接続により、外部の記録機器との間でデータの受け渡しを行うよう構成してもよい。
【0051】
表示制御部33は、表示部50の表示内容を制御するための部材である。例えば表示制御部33は、撮像部の姿勢に応じて撮像模式
図143(後述する
図27等)を傾斜、回転させて表示するように表示部50の表示内容を制御する。具体的には、表示制御部33は、撮像傾きセンサ13から出力された傾きを示す値に基づいて、撮像部10のX軸、Y軸、Z軸の傾きの内、少なくともいずれか2つの傾きの度合いを示す図又は傾きを示す値を表示部50に表示させる。また記憶部32に記憶した過去の傾きを示す値と共に、現在の傾きを示す値を表示させることもできる。
(警告出力部35)
【0052】
警告出力部35は、記憶部32に記憶した過去の傾きを示す値に対して、現在の傾きを示す値が許容誤差の範囲内にあるかどうかを比較演算し、許容誤差を超えていれば警告を出力する。警告の出力は、外部制御機器60に対して警告信号を送出したり、表示部50上に警告メッセージを表示させる等の態様が挙げられる。これを受けて、所定の動作、例えば警告のブザーを鳴らしたり警告メッセージを表示させたり、システムのメンテナンスを促すべく、メンテナンスコールを発する等の動作が実行される。これにより、経時変化や衝撃、振動等によって撮像部の姿勢が変化して、正しい画像検査が行われない可能性があることを警告して、ユーザに告知したり必要な処理を自動的に行う等の対応が可能となる。
【0053】
例えば、画像検査装置の設定時に、撮像傾きセンサから出力されるX軸、Y軸、Z軸の傾き値の内、少なくともいずれか一の傾き値を、登録値として傾き値登録部32aに登録しておく。そして画像検査装置の実運用時には、撮像傾きセンサから出力された傾き値が、傾き値登録部32aにより過去に登録された登録値から、許容誤差として予め定められた閾値よりも乖離していないかどうかを警告出力部35で判定する。判定の結果、閾値を逸脱している場合は、警告出力部35が警告を出力する。
【0054】
警告出力部35が閾値と比較するタイミングは、所定の間隔、例えば10msといった間隔で常時比較したり、あるいは画像検査装置100の起動時やシャットダウン時、メンテナンス時といったイベント毎に比較を行う等とできる。
【0055】
これら画像検査装置100を構成する部材、例えば演算処理部31や表示制御部33、警告出力部35は、ASIC等で構成できる。
(表示部50)
【0056】
画像検査装置100には、表示部50を含めることができる。表示部50は、表示制御部33に接続されて、各種の設定や撮像されたワークWKやその方向などを表示させる。また表示部50において、少なくともいずれか2つの傾きの度合いをリアルタイムに更新して表示可能としている。これにより、撮像部10の設置時において現在の傾きをリアルタイムに表示部50に表示させることが可能となる。この結果、ユーザはこの傾きに基づいて撮像部10の傾きを調整することが容易となる。
【0057】
また表示部50は、撮像傾きセンサ13から出力された傾きを示す値に基づいて、撮像部10のX軸、Y軸、Z軸の傾きの内、少なくともいずれか2つの傾きの度合いを示す図又は値を表示させることができる。これにより、撮像部10の設置時において現在の傾きを表示部50に表示させることが可能となり、ユーザはこの傾きに基づいて撮像部10の傾きを調整することが容易となる。
(撮像模式
図143)
【0058】
さらに表示部50において、後述する
図27等で示すように、撮像部10の外観を模した撮像模式
図143を所定の基準姿勢で表示させると共に、少なくともいずれか2つの傾きに応じた角度分だけ傾斜させた傾斜軸を重ねて表示させることもできる。これにより、ユーザは撮像部10の傾斜を視覚的に把握できる。また表示部50において、撮像模式
図143に対し、重力方向に沿った鉛直線を重ねて表示させ、少なくともいずれか2つの傾きに応じた角度分だけ傾斜させた傾斜軸を重ねて表示させてもよい。さらに表示部50において、撮像模式
図143を、YZ平面(X軸)、XZ平面(Y軸)、XY平面(Z軸)で表示させた平面図にてそれぞれ表示させることもできる。あるいは撮像模式
図143を、平面的な表示態様に限らず、斜視図など、立体的に表示させることもできる。
(不安定な面の識別表示機能)
【0059】
また撮像模式
図143を構成する面の内、不安定な面を他の部位と区別して表示させることもできる。不安定な面とは、重力加速度センサを二軸としたことで傾きの出力が不安定となる面(二軸では検出できない方向の角度)を指す。このような他の面と区別するための識別表示の態様として、例えば不安定な面を、他の部位よりも透過度を高めて表示させたり、非表示とすることができる。さらに表示部50は、傾き値登録部32aに登録された傾き値と、撮像傾きセンサ13が出力した現在の撮像部10の傾き値とを同時に表示させることもできる。このように、ある面が不安定であることを、他の面と区別できるような識別表示をすることで、ユーザは意識すべき面とそうでない面とを適切に把握できるようになる。これらの詳細については後述する。
【0060】
また、上述した警告出力部35は、警告出力の対象を、X軸、Y軸、Z軸の3軸すべてとする構成に限らず、任意の軸に対してのみ警告を発するように構成してもよい。例えば警告出力部35が警告出力の対象とする軸を、X軸、Y軸、Z軸の中から選択可能とする。これにより、重力作用の弱い軸は出力が不安定となるところ、この軸を警告出力の対象外として無用な警告を回避できる。
【0061】
さらに警告出力部35は、選択された警告出力の対象とする軸の傾き値に対して、閾値を個別に設定可能に構成することもできる。これにより、例えば出力が不安定な重力作用の弱い軸を警告出力対象外とすることができる。これにより、例えば不安定な軸に対しては閾値を緩めに設定するなど、柔軟な設定が可能となる。
(照明部20)
【0062】
図3に示すように、照明光の光軸(照明光軸)と平行な方向をZ軸とし、このZ軸と直交し、且つ照明素子の配列方向と平行な方向をX軸とし、X軸およびZ軸と直交する方向をY軸とする。なお照明素子の配列方向は、一方向のみに限らず、X軸方向とY軸方向に並んでいてもよい。例えば、LCDパネルや有機ELパネル等を照明として用いてもよい。
【0063】
また画像検査装置100は、撮像部10側のみならず、照明部20側にも、傾きセンサを設けることもできる。このような例を変形例に係る画像検査装置100’として、
図2Bの機能ブロック図に示す。照明部20側の照明傾きセンサ23は、照明部20のX軸、Y軸およびZ軸の水平方向または重力方向に対する傾きを示す値を出力可能としている。
【0064】
また後述する
図28等で示すように、表示部50にX軸、Y軸、Z軸の傾きの度合いを示す照明部20を模した照明模式
図153として表示することもできる。これによってユーザは表示部50上から照明部20の発光面を視覚的に判別できる。また、上述した撮像模式
図143と同様に、照明模式
図153を構成する面の内、照明光を発する発光面を他の面と区別して表示させることもできる。
【0065】
図2Bに示す画像検査装置100’において、
図2Aに示す画像検査装置100と同じ部材については同じ符号を付して、詳細説明を省略する。この照明部20は、照明傾きセンサ23bを備える。また記憶部32は、撮像部の傾き値登録部32aに加えて、照明部の照明傾き値を登録する照明登録部32bとして機能する。さらに警告出力部35は、撮像部の警告機能に加えて、画像検査装置100の運用時に、照明傾きセンサ23bから出力された傾き値が、照明登録部により最後に登録された登録値から予め定められた閾値よりも乖離した場合に警告を出力する照明警告出力部35bとしても機能する。
【0066】
この画像検査装置100’は、撮像部10及び照明部20と通信を行い、撮像傾きセンサ13及び照明傾きセンサ23から重力加速度を示す値をそれぞれ取得し、表示部50に表示させる。また演算処理部31は、撮像傾きセンサ13及び照明傾きセンサ23が出力する値を、表示部50に表示させる際にユーザに理解し易い数値に変換する。また表示制御部33は、撮像部10に加え、照明部20の姿勢に応じて撮像模式
図143を傾斜、回転させて表示するように表示部50の表示内容を制御する。記憶部32は、撮像模式
図143の傾きを示す値を傾き値登録部32aに登録すると共に、照明部20の傾斜状態を表す照明部模式図の傾きを照明登録部32bに登録する。照明警告出力部35bは、登録された撮像部と照明部の傾き値を、個別に設定された閾値とそれぞれ比較して、範囲外と判定されると警告出力を発する。また照明警告出力部35bは、撮像部の場合と同様に、照明警告出力の対象を、X軸、Y軸、Z軸の中から選択可能としてもよい。
【0067】
演算処理部31の機能ブロック図の一例を、
図2Cに示す。この図に示す演算処理部31は、光軸調整用画像生成部31Aと、画素分解能算出用画像生成部31Bと、計測位置指定部31Cと、計測部31Dと、寸法入力部31Eと、画素分解能算出パラメータ設定部31Fと、間隔調整部31Gと、検査用画像生成部31Hとを備える。
【0068】
光軸調整用画像生成部31Aは、検査設定時に、静止状態の光軸調整用の検査対象物をラインカメラで繰り返し画像を撮像することで、ライン方向に周期性を有する光軸調整用画像を生成するための部材である。
【0069】
画素分解能算出用画像生成部31Bは、光軸調整用画像生成部31Aにより生成され表示部に表示された光軸調整用画像に基づいて、ラインカメラの光軸調整がなされた後に、既知の寸法を有する画素分解能算出用パターンを一方向に移動させながらラインカメラで繰り返し画像を撮像することで、画素分解能算出用画像を生成するための部材である。
【0070】
計測位置指定部31Cは、表示部に表示された画素分解能算出用画像上で、寸法計測箇所の指定を受け付けるための部材である。
【0071】
計測部31Dは、計測位置指定部31Cにより指定された計測箇所の寸法を計測するための部材である。
【0072】
寸法入力部31Eは、計測箇所の実寸法の入力をユーザから受け付けるための部材である。
【0073】
画素分解能算出パラメータ設定部31Fは、計測部31Dにより計測された寸法と、寸法入力部31Eにより入力された実寸法との比率を画素分解能算出パラメータとして設定するための部材である。
【0074】
間隔調整部31Gは、画素分解能算出パラメータ設定部31Fにより設定された画素分解能算出パラメータに従って、ラインカメラの撮像間隔を調整するための部材である。
【0075】
検査用画像生成部31Hは、間隔調整部31Gにより調整された撮像間隔で撮像を繰り返し、検査用の画像を生成するための部材である(詳細は後述)。
(デフレクトメトリ)
【0076】
撮像部10がワークWKの形状を取得する手法は、種々の方法が利用できる。例えばデフレクトメトリ、位相シフト法、ステレオ法、レンズ焦点法、光切断法、光レーダ法、干渉法、TOF方式等が挙げられる。以下、本実施の形態ではデフレクトメトリの原理を利用してワークの形状画像を生成する構成の一例として、デフレクトメトリの原理に基づいて算出した位相マップからワークの形状画像を取得する構成について、
図3等に基づいて説明する。
【0077】
デフレクトメトリにおいては、ワークWKの正反射光を受光する位置に撮像部10が配置される。この例では、撮像部10としてラインカメラ11を用いて、1回の撮像で1ラインのみ撮像する。
図3に示すように、ワークWK側(あるいは撮像部側)を移動させることで、相対的に撮像部10でワークWKを撮像するラインを変化させ(Y方向)、複数のラインを撮像することで、二次元の画像を構成する。
図3の例では、撮像部10を固定してワークWK側を可動式のワーク搬送機構WCに載せて移動させている。
【0078】
デフレクトメトリ処理では、画素ごとで処理できるため、フレームメモリやラインメモリを不要とでき、構成の簡素化やコスト削減の面で有利となる。その一方で、ラインカメラで撮像された画像は線状となるため、どのような画像が得られているのか、ラインカメラと照明部の設置が正しいのかを確認することが困難である。一般に、ワークの形状を測定する測定系においては、カメラ部や照明部の設置に際して位置合わせ作業が必要であるところ、特にデフレクトメトリ処理においては、普通に撮像しただけでは通常の二次元画像が得られないことから、ラインカメラや照明部の設置を補助する機能を提供することは、極めて有益となる。
【0079】
ここで、撮像の手順を
図4のフローチャートに基づいて説明する。まずステップS401で、撮像を行う。ここでは、照明部からの照明光の照明パターンを計8回投光して、処理後画像の1ライン分を取得している。いいかえると、1ライン分を生成するために、8回(8ライン)を撮像している。
図5に、中間画像として8回の撮像で得られた生画像の例を示す。この図において、縦方向がワークの流れ方向(Y方向)となる。よって1画素は縦方向に並ぶ状態となる。ここでは、1画素毎にX方向に照明パターンを4回変化させて撮像し、さらにY方向に照明パターンを4回変化させて撮像する。なお、ワークがステージ上を移動している状態で1ラインに相当する部位を8回撮像しているため、厳密には1/8ライン分だけずれながら、各ラインを撮像していることになる。
【0080】
次にステップS402で、デフレクトメトリ処理を行う。デフレクトメトリ処理によって、生画像を拡散成分(拡散アルベド画像)、正反射成分(鏡面アルベド画像)、位相(X方向、Y方向で2つ)に分離する。なお、ここでは各成分を8ビットで処理している。
【0081】
そして、ステップS403−1、ステップS403−2において、拡散成分と正反射成分に対して、それぞれコントラスト補正を行う。各コントラスト補正は、線形補正としている。例えば、ROIの平均が、中央値になるように補正する。8ビット(2
8=256階調)の場合は、128レベルを中央値とする。これによって、補正後の拡散成分、補正後の反射成分が得られる。
【0082】
一方、位相成分については、ステップS403−3において参照位相との差分を取る。ここでは、参照平面の位相に対して差分を取得する。例えばユーザが、参照平面として球面状、円筒状、平面状等を指定し、これらとの差分を取得する。あるいは、自由曲面で抽出させてもよい。例えば
図6Aに示すような生画像の位相に対して、差分を取ると、
図6Bに示すように変動成分のみが抽出された位相が現れる。このようにして、補正後の位相(差分;X方向、Y方向で2つ)が得られる。
【0083】
さらに、ステップS404−1、ステップS404−2、ステップS404−3において、補正後の拡散成分、正反射成分、位相(差分)に対して、それぞれ階層化を行う。階層化は、各画像に対してそれぞれ1/2縮小を繰り返す。これにより、階層化拡散アルベド画像、階層化鏡面アルベド画像、階層化位相画像(X方向、Y方向で2つ)が得られる。ここで位相については、例えば16ビットの精度とする。
(深さ輪郭画像)
【0084】
また位相(差分)に対しては、そのまま階層化するのみならず、ステップS404−4において、深さ輪郭画像を得る。ここで深さ輪郭画像とは、位相差分が強い部分を強調した中間画像である。曲率とは異なる概念である。形状画像よりも相当高速であり、線キズが極めて見易く、輪郭の抽出がし易い等の利点がある。その反面、特定の形状、例えば薄く広い打痕は抽出され難い、凹凸の区別が難しい、平坦面でないと使い難いなどの特長がある。深さ輪郭画像の一例を、
図7Aに示す。参考のため、同じ部位を撮像した鏡面アルベド画像を
図7Bに示す。
【0085】
さらにステップS405−2において、深さ輪郭画像に対しても、階層化を行い、階層化深さ輪郭画像を得る。
(形状積み上げ)
【0086】
一方でステップS405−1において、階層化位相画像に対して、形状積み上げを行って、形状画像を生成する。このようにして得られた形状画像の一例を、
図8に示す。形状画像は、基本的にフォトメトリックステレオ法と類似の手法であり、位相のラッピング等の処理は異なる。また重み情報として、
図7Bで示したような鏡面アルベド画像を用いることもできる。形状積み上げの手法は、大域的な欠陥(例えば薄く広い打痕など)には効果的である。また、凹凸の区別も容易である。反面、平面が丸く歪んでしまう点、細い線キズが現れにくい点、エッジの場合は高さが不正確になったりリンギングが発生するなどの点で不利となる。
【0087】
そしてステップS406において、簡易欠陥抽出を行い、欠陥画像を取得する。簡易欠陥抽出は、形状画像から簡単に欠陥を抽出する機能である。なお、簡易欠陥抽出を用いることは必須でなく、正反射成分画像や拡散成分画像を入力画像とすることもできる。
(デフレクトメトリ処理の詳細)
【0088】
次に、上述した
図4のステップS402において行われるデフレクトメトリ処理の詳細について、説明する。ここでは、
図9に示す撮像部10及び照明部20を用いて、照明部20から縞照明を投射し、そのゆがみを撮影したものとする。また、縞照明とワーク表面で反射して得られる正反射と拡散反射の様子を
図10に示す。
【0089】
この図に示すように、縞照明部は位相をずらしながらワークの表面に縞の投影パターンを写し込む。この状態で、縞の映り込みの強度を算出する。これによって正反射性の成分が得られる。正反射成分は、縞の位相の強度とズレを有する。また角度/周期比から、階調で除算することで角度分解能が得られる。
【0090】
一方で、縞の位相のズレを算出することで、表面勾配が得られる。さらに、拡散反射の強度も取得する。
(映り込み画像)
【0091】
映り込み画像すなわち原画像は、次式で与えられる。ここでは、縞の映り込みと拡散成分(環境成分を含む)が混じった画像を4パターン撮像する。
(正反射成分)
【0092】
正反射成分は、次式で与えられる。逆相同士の差分により、拡散成分を排除する。
(正反射角度)
【0093】
正反射角度(位相)は、次式で与えられる。π/2ずれの正反射成分により、tanθ=sinθ/cosθとして角度を算出する。
(平均画像)
【0094】
平均画像は、次式で与えられる。この平均画像は拡散成分と環境成分を含む。逆相同士の加算により、正反射成分を排除する。
(拡散反射画像)
【0096】
以上の内、正反射成分と正反射角度、平均画像、拡散反射画像が出力される画像となる。これらの処理は、X方向縞、Y方向縞に対してそれぞれ行われる。
【0097】
さらに、X方向とY方向の正反射角度(位相画像)に対し、さらにGauss−Jacobi法などによる積み上げ計算をすることで、形状画像を得ることができる。
【0098】
一般的には、unwrappingをしてから、三角測距などによって形状を復元する例が多いところ、本実施形態においては、unwappingを回避し、局所的な微分値をGauss−Jacobi法で積み上げ計算することで、三角測距によらずに形状を復元している。形状復元方法は、既知の方法が適宜利用できる。
好ましくは、三角測距を用いない。また、縮小画像を多段に持つ、階層型方法とする。なお、縮小画像と通常画像との差分を持つ方法とすることもできる。
【0099】
さらに、パラメータとして特徴サイズを設定することもできる。特徴サイズとは、検査の目的や種別に応じた検出対象の傷のサイズを設定するためのパラメータである。例えば、特徴サイズのパラメータ値が1のときに一番細かい傷が検出でき、この値を上げていくと大きな傷が検出できるようにする。これにより、特徴サイズを大きくすると、より大きな傷が検出し易い状態となり、ワーク表面の凸凹が明瞭となる。
(デフレクトメトリの画像)
【0100】
次に、このようなデフレクトメトリ処理によって得られた画像の例を
図11A〜
図11Dに示す。これらの図において、
図11Aは元画像、
図11Bは正反射成分、
図11Cは拡散反射成分、
図11Dは形状画像を、それぞれ示している。
図11Dに示すように、ワークの凹凸状態を把握し易い形状画像が得られていることが確認できる。なお、
図11A〜
図11Dの例では、ワークWK1としてボタン電池を撮像しているが、このような不透明なワークに限らず、例えば
図12Aのような透明のワークWK2の凹凸も、
図12Bのように形状画像として検出できる。
【0101】
また、各画像の関係乃至特長を
図13A〜
図17Bに示す。ここでは、ワークWK3として表面に光沢を有する透明のフィルムをX方向から撮像した4位相の生画像を
図13Aに、Y方向から撮像した4位相の生画像を
図13Bに、これらの生画像から得られた正反射成分を示す正反射画像を
図14Aに、拡散反射成分を示す拡散反射画像を
図14Bに、また比較のため通常のノーマル画像(平均画像)を
図14Cに、それぞれ示す。
(正反射画像)
【0102】
図14Cのノーマル画像との対比から判るとおり、
図14Aの正反射画像からは、正反射を鈍らせる汚れや、形状変化はないものの正反射の鈍い傷、あるいは形状変化によって正反射が返ってこない傷などを確認できる。
(拡散反射画像)
【0103】
一方
図14Bの拡散反射画像からは、表面のテクスチャの状態を確認し易くなる。
(光沢比画像)
【0104】
また
図14A及び
図14Bから得られた正反射と拡散反射の比を示す光沢比画像を
図15に示す。光沢比画像では、縞をずらしたときに正反射、又は拡散反射のどちらか一方のみが強く変化したところが強調されている。
【0105】
一方、
図13Aから得られたX方向の位相のずれを示す位相X画像を
図16Aに、
図13Bから得られたY方向の位相のずれを示す位相Y画像を
図16Bに、それぞれ示す。これらの図に示すように、形状変化は位相のずれとして現れることが判る。
(形状画像)
【0106】
さらに
図16A及び
図16Bから得られた形状画像を
図17Aに、
図16A及び
図16Bから得られた深さ輪郭画像を
図17Bに、それぞれ示す。
図17Aの形状画像では、特徴サイズに応じて周囲画素を見ながら位相の変化を積み上げている。ここで、特徴サイズを大きく設定すると、形状変化の内で比較的浅くて面積に広がりのある凹凸を捉えられる。一方特徴サイズを小さく設定すると、線傷や面積の小さい傷が捉えられる。さらに
図17Aの形状画像を
図14Aの正反射画像と対比すると、形状画像に現れない欠陥(例えば細い傷や深い傷)は、正反射画像に現れる傾向があることが確認できる。
(深さ輪郭画像)
【0107】
また
図17Bの深さ輪郭画像では、基準となる平面を算出し、この平面からのずれを画像化している。この深さ輪郭画像からは、線傷や面積の小さい傷を捉えることが可能となる。
(ラインカメラを用いた撮像条件を設定する手順)
【0108】
ラインカメラの設定は、二次元状に撮像素子が配置された通常のエリアカメラと比べて難しいとされている。その理由として、光軸調整が厳格であることや、撮像の開始タイミングのみならず、ワークの送り速度に対して撮像する間隔を規定する撮像間隔を適切に設定しなければならないこと等が挙げられる。特にラインスキャンカメラの撮像間隔であるラインスキャン間隔の設定は、エリアカメラとは異なるラインカメラ特有の事情が存在する。すなわち、エリアカメラでは撮像素子が通常は縦横に等間隔で並べられているため、縦横の画素分解能は物理的に1:1に固定される。これに対してラインカメラでは、
図3に示したように撮像素子は一方向(X方向)に並べられており、Y方向はワークの搬送速度と撮像素子の撮像タイミング(ラインスキャン間隔)によって決定される。一般に、傷検査等の画像検査においては、縦横比すなわちX方向とY方向の画素分解能は、1:1にしないと、傷の大きさが縦横で異なってしまう。またワークの搬送速度は一般に画像検査装置側では制御できない所与の値(固定値)であることから、撮像タイミングすなわちラインスキャン間隔で調整するしかない。しかしながら、ラインカメラでは元々得られる画像がライン状、すなわち線状であることから、得られた画像から判断することが難しく、その調整は容易でない。そこで、本実施形態に係る画像検査装置100においては、このような面倒な設定作業を容易に行えるように、撮像部10の設定作業を誘導する機能を備えている。撮像条件の設定作業誘導機能は、例えば設定すべき項目をナビゲーションしながら誘導することが考えられる。以下、ラインカメラを用いて撮像条件を設定する手順を、
図18のフローチャートに基づいて説明する。
【0109】
まずステップS1801において、カメラ部、照明部の光軸調整を行う。ここでは、ワークを停止させた状態で、ラインカメラで繰り返し画像を撮像することで、ライン方向に周期性を有する光軸調整用画像を生成し、この光軸調整用画像に対して光軸調整を行う。例えば、
図19に示す画像検査プログラムの光軸調整画面110を表示部50の画面上に表示させる。
(光軸調整画面110)
【0110】
光軸調整画面110は、静止状態のワークをラインカメラで撮像した画像を表示部に表示させた状態で、ラインカメラの光軸を調整するための光軸調整部の一形態を構成する。この光軸調整画面110は、設定欄111(
図19において左側)と、画像表示欄112(
図19において右側)を備える。設定欄111には、ナビゲーションの段階を示すタイトル欄113と、ここで行うべき設定内容の説明欄114が設けられる。タイトル欄113には、「STEP1/3 光軸調整」として三段階の一段階目で、光軸を調整することが表示される。また説明欄114には「カメラ・照明の光軸設定を行います。画像の左右を比較しながら、ピントや明るさが左右均等になるように調整してください。」と表示される。さらに設定欄111には、この光軸調整画面110で行うべき設定項目が列挙されている。基本的には上段から下段に向かってユーザに撮像条件のパラメータを設定させていくように構成している。これによりユーザは指定された手順で、必要な設定を順次を行っていくことが可能となり、設定に迷うことなくガイダンスが与えられる。
【0111】
図19の設定欄111には、カメラ部や照明部の姿勢を確認する「姿勢の確認」ボタン115と、カメラ部や照明部の明るさを調整する「明るさのパラメータ調整」ボタン116と、ピントや左右の明るさを確認する確認欄117が設けられる。ここでは確認欄117において、「エッジ強度算出の設定」ボタン、「濃淡値算出の設定」ボタン、「現在値を登録」ボタンが設けられる。ユーザは「姿勢の確認」ボタン115を用いて、カメラ部、照明部のおよその姿勢を決定する。そして「明るさのパラメータ調整」ボタン116を用いて、シャッタースピード、カメラ感度、照明ボリュームなどの撮像条件の設定値を変更し、明るさを調整する。さらに、ピントや明るさに左右差が生じないようにカメラ部や照明部の設置条件を微調整する。微調整する上で、先の明るさの調整に戻って調整を繰り返すなど、設定欄111を多少行き来しながら、各項目を設定していく。
【0112】
このような光軸調整の流れの中で、カメラ部や照明部の姿勢を表示したり、そのときの姿勢を登録することもできる。保存されたデータは、記憶部32に保持され、必要時に読み出される。
【0113】
画像表示欄112には、全画像表示領域118と、左右拡大表示領域119と、情報表示領域120が設けられている。中段の左右拡大表示領域119には、全画像表示領域118に表示した画像の一部を拡大して表示する。さらに下段の情報表示領域120には、現在表示されている生画像に関するパラメータが表示される。この例では、エッジ幅、エッジ強度1、エッジ強度2、濃度平均、最大濃度、最小濃度等が表示される。
【0114】
このような全画像表示領域118と左右拡大表示領域119とを設けたことで、同じ画面内で、撮像対象のワークの全体像と、撮像対象の左右の拡大表示が可能となる。また明るさやピントの合い具合に左右差が生じないように、カメラ部や照明部を調整する必要があるところ、このように一画面で並べて表示させることで、左右差を確認し易くできる。
【0115】
また左右拡大表示領域119で目視確認をし易くするのに加えて、情報表示領域120でエッジ強度や濃淡値を数値で表示させることで、数値でも左右差の確認が可能となる。さらにエッジ強度を数値で表示させることで、ピントの山を判り易く表示できる。
(トリガ設定画面121)
【0116】
以上のようにしてステップS1801において光軸の調整を終えると、次にステップS1802においてトリガ設定を行う。トリガ設定は、トリガ設定部で行われる。トリガ設定部でもって、ラインカメラでワークを撮像するタイミングを規定するトリガを設定する。ここでは、トリガ設定部の一形態として、
図20に示す画像検査プログラムのトリガ設定画面121から、運転時のトリガの入力方法を選択する。具体的には、設定欄111に設けられた、撮像のタイミングを決めるトリガモードを設定するトリガモード設定欄122や、ラインスキャンの間隔を設定するラインスキャン間隔設定欄123から設定を行う。トリガモード設定では、外部から入力される外部トリガとするか、あるいは画像検査装置の内部で規定される内部トリガとするかを選択する。またラインスキャン間隔は、ワークを搬送するワーク搬送機構側からの入力、例えばコンベアの回転軸に設けられたロータリーエンコーダの出力を1ラインの撮像タイミングに用いるか、時間間隔を指定して一定時間毎に1ラインを撮像するかを選択する。
(縦横比調整画面130)
【0117】
最後にステップS1803において画像の縦横比の調整を行う。縦横比調整は、画像の縦横の比率が1:1となるように画素分解能を算出して補正するスケーリング補正である。縦横比調整は、
図21及び
図22に示す画像検査プログラムの縦横比調整画面130で行うことができる。縦横比調整画面130は、ラインカメラで撮像した画像の縦横の画素分解能を調整するための縦横比調整部の一形態である。なお
図22は
図21の縦横比調整画面130において、設定欄111を下方向にスクロールさせた状態を示している。これらの図に示す画像検査プログラムの縦横比調整画面130から、画像の縦と横の画素分解能が一致するように、X方向に応じてY方向のラインスキャン間隔を調整する。ユーザはワーク搬送機構WCを動作させて実際にワークを移動させ、照明部で照明光を照射して撮像部で撮像する。この際、ワークとして所定のパターンを表示させたワークを使用することが好ましい。例えば
図21及び
図22において画像表示欄112に示すような、既知の大きさのチェッカーパターンを表示させたワークWKCPを用いる。このワークWKCPのチェッカーパターンは、白黒の正方形の矩形を交互に配置している。よってユーザは、得られた生画像を画像表示欄112に表示させながら、チェッカーパターンの縦横が1:1となるように、撮像パラメータを調整する。
(サブ工程設定欄)
【0118】
また縦横比調整工程において、さらにユーザに対して所定の手順で必要なパラメータを設定させることもできる。例えば、縦横比調整工程を構成するサブ工程として、Y方向の大まかな伸縮工程と、X方向、Y方向の画素分解能の算出工程と、撮像パラメータの調整工程を含める。
図21及び
図22に示す縦横比調整画面130の例では、設定欄111において上から下に、3つのサブ工程設定欄を設定順に並べて表示させている。これにより、ユーザは設定欄111を、上から下に設定することで、縦横比調整工程を実行できるように誘導される。
図21の設定欄111では、上から順にY方向の大まかな伸縮工程と対応するY方向伸縮欄131と、X方向、Y方向の画素分解能の算出工程と対応する画素分解能算出欄132と、撮像パラメータの調整工程と対応する撮像パラメータ調整欄133を設けている。
(縦方向伸縮部)
【0119】
Y方向伸縮欄131は、ラインカメラの撮像で得られる画像を縦方向に伸縮させるための縦方向伸縮部の一形態である。縦方向伸縮部は、ラインカメラの撮像間隔を大まかに変更することによって、画像の縦横比を合わせる。
(Y方向伸縮欄131)
【0120】
Y方向伸縮欄131では、ワークの搬送方向に当たる画像のY方向の縮尺や撮像範囲を変更して、縦横比を大まかに調整する。ここではY方向の伸縮を調整する伸張ボタン131aと、ライン数を規定するライン数設定欄131bを設けている。この例では、伸張ボタン131aは上下の矢印ボタンで構成されており、上向きの矢印を押下すると縦方向に長く伸ばし、逆に下向きの矢印を押下すると縮めることができる。ユーザは、画像表示欄112に表示されたチェッカーパターンを見ながら、Y方向の伸縮を大まかに調整する。また画像表示欄112における表示内容は、Y方向伸縮欄131での設定に応じてリアルタイムで変更される。
(画素分解能算出欄132)
【0121】
画素分解能算出欄132においては、エッジ計測と実寸値を比較して、X方向、Y方向それぞれの画素分解能の補正係数(スケーリング補正係数)を算出する。
図21及び
図22の例では、画素分解能算出ボタン132aを設けており、この画素分解能算出ボタン132aを押下すると
図23及び
図24に示す画素分解能算出画面160X、160Yに遷移される。
(画素分解能算出部)
【0122】
画素分解能算出画面160X、160Yは、ラインカメラで撮像した画像の縦方向と横方向の画素分解能を算出する画素分解能算出部の一形態である。画素分解能算出部は、画素分解能をX方向とY方向とでそれぞれ算出する
(画素分解能算出画面160X、160Y)
【0123】
図23はX方向の画素分解能を算出する画素分解能算出画面160X、
図24はY方向の画素分解能を算出する画素分解能算出画面160Yを、それぞれ示している。これらの画面は、設定欄111に設けられた「X方向」タブ161X、「Y方向」タブ161Yで切り替えることができる。また設定欄111の「X方向」タブ161X、「Y方向」タブ161Yには、それぞれ画素分解能を検出するための抽出条件設定欄162X、162Y、画素分解能を算出する際の補正係数を算出するための補正係数算出欄163X、163Yが設けられる。
【0124】
また画素分解能の算出に際して、エッジでサイズを計測するか、矩形でサイズを指定するかを選択できる。
図23、
図24の画素分解能算出画面160X、160Yは、これらのサイズ指定をサイズ選択欄164X、164Yから行う。サイズ選択欄164X、164Yでの指定に従い、抽出条件設定欄162X、162Yから、画像表示欄112で指定し、指定された領域に対する抽出条件を指定する。画像表示欄112上には、画素分解能の算出に用いる領域が表示される。さらに画像表示欄112の下方には情報表示領域120が設けられ、計測されたピッチ数やピッチの最大値、最小値、平均値、さらには計測時間やトリガ間隔などが表示される。
【0125】
抽出条件設定欄162X、162Yでは、画素分解能の算出を幅で行うか、ピッチ間隔で行うかを選択する幅/ピッチ間隔選択欄162a、指定された領域を編集するための編集ボタン162b、検出方向を指定するための検出方向指定欄162c、エッジ方向を指定するためのエッジ方向指定欄162d、エッジ感度を指定するためのエッジ感度指定欄162e等が設けられる。
【0126】
また補正係数算出欄163X、163Yには、ワークWKCPのチェッカーパターンの実寸値を数値で入力するための実寸指定欄163a、計測された寸法を画素数で表示するための計測値表示欄163b、演算された画素分解能補正係数(スケーリング補正係数)を表示するための補正係数表示欄163c等が設けられる。さらに、抽出条件等を変更した際に画素分解能を再計算するための再計算ボタン165が設けられる。
【0127】
このような画素分解能算出画面160X、160Yでの設定に従い、画素分解能補正係数(スケーリング補正係数)がX方向、Y方向でそれぞれ算出される。ユーザは演算された補正係数表示欄163cの数値を確認後、「OK」ボタン166を押下すると、
図21及び
図22の縦横比調整画面130に戻ると共に、演算されたスケーリング補正係数が、画素分解能演算結果表示欄132bに表示される。
図21及び
図22の例では、演算されたX方向、Y方向の画素分解能をX方向1mm/ピクセル、Y方向1mm/ピクセルと表示させている。
(撮像パラメータ調整部)
【0128】
撮像パラメータ調整欄133は、ラインカメラの撮像条件を規定する撮像パラメータを調整するための撮像パラメータ調整部の一形態である。撮像パラメータ調整部は、縦方向の画素分解能と横方向の画素分解能が所望の比率になるようなラインカメラの撮像間隔を算出して撮像パラメータに反映する。
(撮像パラメータ調整欄133)
【0129】
撮像パラメータ調整欄133においては、画像の縦横比が1:1となるように撮像パラメータを調整する。ここでは、
図22に示すように縦横比調整実行ボタン133aと撮像パラメータ調整結果表示欄133bを設けている。この縦横比調整実行ボタン133aを押下することで、自動的に画像の縦横比が1:1となるような撮像パラメータが演算されて、その値に調整される。また、縦横比調整実行ボタン133aを押下して撮像パラメータの自動調整が実行されると、その結果が撮像パラメータ調整結果表示欄133bに表示される。ここでは、撮像パラメータ調整後のラインスキャン間隔が表示される。さらに、画像表示欄112のワークWKCPが、縦横比が1:1となるように調整された画像に再描画される。すなわち
図21の縦横比調整画面130が
図25に、
図22の縦横比調整画面130が
図26に、それぞれ更新される。
【0130】
以上のようにして、従来煩雑とされてきた撮像条件の設定を、ナビゲーション方式でユーザを誘導しながら行わせる。さらに縦横比調整画面130は、カメラや照明の明るさを調整するための明るさパラメータ調整部134を設けている。
(姿勢表示機能)
【0131】
画像検査装置100は、撮像部10や照明部20の姿勢を視覚的に表示させる姿勢表示機能を備える。姿勢表示機能の一例として、上述した
図19の光軸調整画面110において、「姿勢の確認」ボタン115を押下すると、
図27に示す画像検査プログラムのカメラ姿勢表示画面140や、
図28に示す照明姿勢表示画面150が表示される。なお
図27のカメラ姿勢表示画面140と
図28の照明姿勢表示画面150とは、画面左上のタブを選択することで切り替えられる。以下、カメラ姿勢表示画面140や照明姿勢表示画面150の詳細について説明する。
【0132】
図27、
図28に示すカメラ姿勢表示画面140、照明姿勢表示画面150では、カメラ部や照明部の姿勢を表示する機能を備えている。具体的には、模式姿勢表示欄141、151と、姿勢情報表示欄142、152を設けている。模式姿勢表示欄141、151では、カメラ部、照明部の姿勢を、それぞれ撮像模式
図143、照明模式
図153で表示させている。また姿勢情報表示欄142、152では、模式姿勢表示欄141、151で表示される撮像模式
図143、照明模式
図153と対応させて、これらの姿勢や角度を文字や数値で表示させる。このような姿勢表示機能を実現するため、カメラ部、照明部は二軸の重力加速度センサをそれぞれ搭載しており、重力加速度センサの出力を傾き角度に変換して、表示部に表示させている。
(カメラ姿勢表示画面140)
【0133】
カメラ姿勢表示画面140においては、カメラ部の基準姿勢である背面、側面、上面のそれぞれに対して、重力方向からのずれがどれだけあるかを、カメラ部をモチーフにした撮像模式
図143を用いて図示すると共に、数値で出力する。この撮像模式
図143を表示させる態様は、
図27等で示すような二次元的な図を3面等、複数表示させる態様の他、斜視図などの三次元的な表示態様で1枚あるいは複数枚を立体的に表示してもよい。
【0134】
なお二軸の重力加速度センサを用いて姿勢を検出するとき、撮像模式
図143を背面、側面、上面に分けて表示する場合は、姿勢によっては有意な情報を得られていない面がある。例えば重力に対して垂直な面は、重力方向となす角が不安定になる。そこで、無意味な情報をユーザに与えないように、不安定な面は濃度を薄くするなどして視認性を落とし、有意な面に注目されるようにしてもよい。
【0135】
例えば、
図29に示すように、カメラ部を構成する面の内で、ある面が受けている重力の強さに応じて、図の色を徐々に薄くし、やがて非表示にしてもよい。面が受けている重力が弱いと、算出される角度は不安定となってバタついてしまうので、極端に姿勢が変わったかのように見えてしまいユーザに不安感を与えることがある。そこで、本来注目すべき面の図よりも、注目すべきでない面の図の方に注意が注がれてしまうこととならないように、このような面を薄くしたり表示させないことで、このような事態を回避できる。
(照明姿勢表示画面150)
【0136】
また照明姿勢表示機能も、基本的な機能は上述したカメラ姿勢表示機能と同等である。
図28に示す照明姿勢表示画面150は、照明部をモチーフにした照明模式
図153を示している。照明部はカメラ部等に比べて外見的な特徴が少ないのが一般的である。そこで、
図30に示すように、照明部が発する照明光を照明模式
図153に含めて表示させることで、視認性を向上させることができる。これにより、照明模式
図153を見たユーザは、照明部を構成する面の内、照明光模式
図154からどの面が発光面かを容易に判別でき、これを手掛かりに照明部の姿勢を把握することができるようになる。
【0137】
上述したカメラ姿勢表示機能や照明姿勢表示機能は、ある時点のカメラ部や照明部の姿勢を登録しておき、現時点のカメラ部や照明部の姿勢と比較できるようにすることもできる。例えば、基準姿勢として、正面図や、背面図、上面図や底面図、右側面図や左側面図等の平面的な姿勢、あるいはユーザが指定した斜視図などを基本姿勢として、予め記憶部32に登録しておく。
【0138】
また、このようなカメラ部や照明部の登録した姿勢に対して、現時点の姿勢が変化した場合、画像検査装置の画面上、もしくは画像検査装置に接続された外部の機器に対して警告出力部35から警告を発信するように構成してもよい。さらに、このような警告発信のしきい値を、ユーザが調整可能としてもよい。あるいはまた、カメラ部や照明部の姿勢のチェックを行うタイミングをユーザが調整可能とすることもできる。
(カメラ部、照明部の姿勢を画面に表示する手順)
【0139】
次に、カメラ部や照明部の姿勢を画面に表示する手順を、
図31のフローチャートに基づいて説明する。まずステップS3101において、姿勢表示のGUIを表示する。例えば
図32に示すように、カメラ部や照明部の傾斜状態を、測定角度が判るように表示させる。ここでは、
図33A〜
図33Cのようにカメラ部の平面図を表示させて、X軸、Y軸、Z軸を判り易くする。この例では、
図33Aではカメラ部の背面を表示させて、X軸とY軸を判り易く表示できる。また
図33Bではカメラ部の側面を表示させて、X軸とZ軸を判り易く表示できる。さらに
図33Cではカメラ部の上面を表示させて、Y軸とZ軸を判り易く表示できる。同様に
図34A〜
図34Cに示すように照明模式
図153を表示させて、照明部に設定されたX軸、Y軸、Z軸を判り易くできる。この例では、
図34Aでは照明部の背面を表示させて、X軸とY軸を判り易く表示できる。また
図34Bでは照明部の側面を表示させて、X軸とZ軸を判り易く表示できる。さらに
図34Cでは照明部の上面を表示させて、Y軸とZ軸を判り易く表示できる。
【0140】
次にステップS3102において、画像検査装置に重力加速度センサの値を要求する。さらにステップS3103において、画像検査装置がカメラ部や照明部に重力加速度センサの値を要求する。さらにまたステップS3104において、カメラ部や照明部の重力加速度センサから値を取得する。さらにステップS3105において、重力加速度センサの出力値をカメラ部、照明部の背面、側面、上面の基準軸が重力方向と成す角度に変換する。同時に、受けている重力の強さも求める。そしてステップS3106において、求めた角度に応じてカメラ部、照明部の図を回転させる。さらに求めた重力の強さに応じて、図の濃度を決める。最後にステップS3107において、図と数値をGUIとして表示部50上に表示させる。
(姿勢変化警告機能)
【0141】
また画像検査装置100は、カメラ部や照明部の姿勢が何らかの原因、例えば意図しない接触、振動や衝撃、経年劣化等の理由で変化した時に、これを検知して警告を発する姿勢変化警告機能を備えている。このため画像検査装置100は、
図2に示すように警告出力部35を備えている。ここで、カメラ部や照明部の姿勢が変化した時に警告出力部35が警告を発する手順を、
図35のフローチャートに基づいて説明する。まずステップS3001において、画像検査装置を起動させる。なお、警告機能を動作させるタイミングとしては、画像検査装置の検査設定を切り替えたとき、画像検査装置が定期的に値をポーリングする、カメラ部が定期的に値を送ってくる、等のタイミングとしてもよい。
【0142】
次にステップS3002において、画像検査装置がカメラ部、照明部の重力加速度センサから傾き値をそれぞれ取得する。そしてステップS3003において、重力加速度センサの出力値をカメラ部、照明部の背面、側面、上面の基準軸が重力方向と成す角度に変換する。
【0143】
さらに次にステップS3004において、現在のカメラ部、照明部の各面の角度とシステムに登録された角度とを比較し、ユーザが設定した許容誤差の範囲内に収まっているかどうかを確認する。
(警告条件設定欄144)
【0144】
例えば
図27に示す画像検査プログラムのカメラ姿勢表示画面140の下段に、警告条件設定欄144を設けている。警告条件設定欄144から、ユーザは予め、警告出力を発する閾値となる許容誤差範囲を指定しておく。ここではシステム変数割付欄145にて、カメラ部や照明部の傾き誤差を検知したときにどのシステム変数の値を変化させるかを選択する。また角度許容誤差欄146から、選択されたパラメータに対して許容できる誤差範囲を指定する。
【0145】
さらに、警告条件に合致するかどうかを警告出力部が判定するタイミングを規定することもできる。
図27等の例では、警告条件設定欄144に確認タイミング設定欄147を設けており、警告の判定タイミングとして、起動時や検査設定読み込み時等を列挙しており、ユーザはチェックボックスでON/OFF可能としている。
【0146】
最後にステップS3005において、許容誤差の範囲に収まっていなければ警告出力部が警告信号を外部制御機器60に出力する。このようにして、画像検査装置は姿勢変化警告機能を備えることで、カメラ部や照明部の姿勢が変化した時にユーザに対して警告を与えることができ、例えば経年変化や急な衝撃等で姿勢に変化に生じたことを検出して、再度の位置合わせなど、適切な処理を講じることが可能となる。
(カメラ部、照明部の姿勢の表示を画像検査装置の立ち上げに組み込んだ場合の手順)
【0147】
さらに、カメラ部や照明部の姿勢を表示させる機能を、画像検査装置の立ち上げ時に組み込んでおくこともできる。これにより、画像検査装置を起動する度に、カメラ部や照明部の姿勢が適切かどうかを確認できる。このような手順の一例を、
図36のフローチャートに基づいて説明する。まずステップS3601において、機器の配線を行う。次にステップS3602において、カメラ部、照明部の設置を行う。さらに次にステップS3603において、撮像条件を決定する。ここでは、カメラ部や照明部の姿勢確認、ピント、明るさ等が含まれる。またラインカメラの場合は、ラインカメラと照明部の光軸合わせ、縦横の解像度調整等が含まれる。そしてステップS3604において、検査条件を決定する。最後にステップS3605において、運用を開始する。このようにして、カメラ部や照明部の設定の確認や微調整を、画像検査装置の立ち上げ時に毎回行うことが可能となる。