(57)【要約】【課題】タクトタイムを短縮する分光検査方法、画像処理装置、及びロボットシステムを提供する。【解決手段】分光検査方法は、スペクトル画像を用いて検査を行う分光検査方法であって、分光カメラの撮像範囲にある物体を分光カメラで撮像して、スペクトル画像を取得する撮像処理を実行する撮像ステップＳ１０と、スペクトル画像に対して画像処理を実行し、画像処理の結果を検査結果として出力する検査処理を実行する検査ステップＳ３０と、検査結果に基づいて物体に対する操作を行う信号を送信する送信処理を実行する信号送信ステップＳ２０と、撮像処理と、検査処理と、送信処理との作業手順を設定する設定ステップと、を有し、設定ステップは、検査ステップＳ３０を、撮像ステップＳ１０が終了した後に実行し、信号送信ステップＳ２０を、撮像ステップＳ１０が終了した後、検査ステップＳ３０が終了する前に実行するように作業手順を設定する。【選択図】図９
2020134424.tif 000002
【特許請求の範囲】
【請求項１】
分光カメラで撮像した物体のスペクトル画像を用いて検査を行う分光検査方法であって、
前記分光カメラの撮像範囲にある前記物体を前記分光カメラで撮像して、前記スペクトル画像を取得する撮像ステップと、
前記スペクトル画像に対して画像処理を実行し、前記画像処理の結果を検査結果として出力する検査ステップと、
前記検査結果に基づいて前記物体に対する操作を行う信号を送信する信号送信ステップと、
前記撮像ステップと、前記検査ステップと、前記信号送信ステップとの作業手順を設定する設定ステップと、
を有し、
前記設定ステップは、
前記検査ステップを、前記撮像ステップが終了した後に実行し、
前記信号送信ステップを、前記撮像ステップが終了した後、前記検査ステップが終了する前に実行するように前記作業手順を設定する、
分光検査方法。
【請求項２】
請求項１に記載の分光検査方法において、
予め前記画像処理に用いる基準分光データの教示を受け付ける教示ステップを有し、
前記検査ステップは、前記スペクトル画像と、前記基準分光データとの差異を前記検査結果として出力する、
分光検査方法。
【請求項３】
請求項２に記載の分光検査方法において、
前記基準分光データは、前記スペクトル画像に含まれる波長ごとの閾値を含み、
前記検査ステップは、前記スペクトル画像に含まれる波長ごとの分光輝度と前記閾値との差分の和に基づいて判定した結果を前記検査結果として出力する、
分光検査方法。
【請求項４】
請求項２又は３に記載の分光検査方法において、
前記基準分光データは、可視光の波長帯に含まれる複数の波長により構成されている、
分光検査方法。
【請求項５】
請求項２に記載の分光検査方法において、
前記画像処理は、前記スペクトル画像からグレースケール画像を生成して代表画像として設定する処理を含む、
分光検査方法。
【請求項６】
請求項５に記載の分光検査方法において、
前記画像処理は、前記代表画像において所定の座標系を設定し、前記座標系に基づく位置の画素のスペクトルと、前記基準分光データとの差異を前記検査結果として出力する、
分光検査方法。
【請求項７】
請求項６に記載の分光検査方法において、
前記基準分光データは、前記スペクトル画像に含まれる波長ごとの閾値を含み、
前記画像処理は、前記画素のスペクトルが前記閾値よりも小さい画素を抽出領域として抽出し、前記代表画像の前記座標系に基づいた前記抽出領域を前記検査結果として出力する、
分光検査方法。
【請求項８】
請求項７に記載の分光検査方法であって、
前記画像処理は、前記抽出領域の形状情報を前記検査結果として出力する、
分光検査方法。
【請求項９】
分光カメラで撮像した物体のスペクトル画像を用いて検査を行う画像処理装置であって、
前記分光カメラの撮像範囲にある前記物体を前記分光カメラで撮像して、前記スペクトル画像を取得する撮像処理を実行する撮像部制御部と、
前記スペクトル画像に対して画像処理を実行し、前記画像処理の結果を検査結果として出力する検査処理を実行する検査部と、
前記検査結果に基づいて前記物体に対する操作を行う信号を送信する送信処理を実行する通信部と、
前記撮像処理と、前記検査処理と、前記送信処理との作業手順を設定する設定部と、
を有し、
前記設定部は、
前記検査処理を、前記撮像処理が終了した後に実行させ、
前記送信処理を、前記撮像処理が終了した後、前記検査処理が終了する前に実行させるように前記作業手順を設定する、
画像処理装置。
【請求項１０】
ロボットと、
請求項９に記載の画像処理装置と、
前記画像処理装置の前記検査結果に基づいて前記ロボットを制御する制御装置と、
を有する、
ロボットシステム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、分光検査方法、画像処理装置、及びロボットシステムに関するものである。
【背景技術】
【０００２】
従来、ロボットビジョンでの色の検出において、生産装置の中でカラーカメラを使って、色に基づいた物体検出や、色に基づく検査が行われることがある。カメラで赤と青とのパーツを見分けてロボットで分別したり、パーツに青いパーツが確実に取り付けられているかの検査で合格品のみを次の工程に渡したりすることは可能である。
また、分光カメラは、２次元の面で分光輝度をとらえることができるカメラである。分光カメラを使えば、ＲＧＢのエリアセンサーを使った一般的なカメラではできない、微妙な色の差を見分ける色むら検査が可能となる。
【０００３】
例えば、検査対象物に含まれる異種品等を含む不良品の検出を目的とした検査装置として、検査対象物を分光カメラで撮像して得られるスペクトル画像について解析する方法が検討されている（例えば、特許文献１参照）。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２０１５−２０３５８６号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
しかしながら、検査対象物を撮像して得られるスペクトル画像について解析する方法は、撮像と検査とのそれぞれに時間がかかるため、検査結果が出るまで次工程が待機させられる。これにより、検査装置のタクトタイムが長くなるおそれがある。
【課題を解決するための手段】
【０００６】
本願の分光検査方法は、分光カメラで撮像した物体のスペクトル画像を用いて検査を行う分光検査方法であって、前記分光カメラの撮像範囲にある前記物体を前記分光カメラで撮像して、前記スペクトル画像を取得する撮像ステップと、前記スペクトル画像に対して画像処理を実行し、前記画像処理の結果を検査結果として出力する検査ステップと、前記検査結果に基づいて前記物体に対する操作を行う信号を送信する信号送信ステップと、前記撮像ステップと、前記検査ステップと、前記信号送信ステップとの作業手順を設定する設定ステップと、を有し、前記設定ステップは、前記検査ステップを、前記撮像ステップが終了した後に実行し、前記信号送信ステップを、前記撮像ステップが終了した後、前記検査ステップが終了する前に実行するように前記作業手順を設定する。
【０００７】
上記の分光検査方法では、予め前記画像処理に用いる基準分光データの教示を受け付ける教示ステップを有し、前記検査ステップは、前記スペクトル画像と、前記基準分光データとの差異を前記検査結果として出力することが好ましい。
【０００８】
上記の分光検査方法では、前記基準分光データは、前記スペクトル画像に含まれる波長ごとの閾値を含み、前記検査ステップは、前記スペクトル画像に含まれる波長ごとの分光輝度と前記閾値との差分の和に基づいて判定した結果を前記検査結果として出力することが好ましい。
【０００９】
上記の分光検査方法では、前記基準分光データは、可視光の波長帯に含まれる複数の波長により構成されていることが好ましい。
【００１０】
上記の分光検査方法では、前記画像処理は、前記スペクトル画像からグレースケール画像を生成して代表画像として設定する処理を含むことが好ましい。
【００１１】
上記の分光検査方法では、前記画像処理は、前記代表画像において所定の座標系を設定し、前記座標系に基づく位置の画素のスペクトルと、前記基準分光データとの差異を前記検査結果として出力することが好ましい。
【００１２】
上記の分光検査方法では、前記基準分光データは、前記スペクトル画像に含まれる波長ごとの閾値を含み、前記画像処理は、前記画素のスペクトルが前記閾値よりも小さい画素を抽出領域として抽出し、前記代表画像の前記座標系に基づいた前記抽出領域を前記検査結果として出力することが好ましい。
【００１３】
上記の分光検査方法では、前記画像処理は、前記抽出領域の形状情報を前記検査結果として出力することが好ましい。
【００１４】
本願の画像処理装置は、分光カメラで撮像した物体のスペクトル画像を用いて検査を行う画像処理装置であって、前記分光カメラの撮像範囲にある前記物体を前記分光カメラで撮像して、前記スペクトル画像を取得する撮像処理を実行する撮像部制御部と、前記スペクトル画像に対して画像処理を実行し、前記画像処理の結果を検査結果として出力する検査処理を実行する検査部と、前記検査結果に基づいて前記物体に対する操作を行う信号を送信する送信処理を実行する通信部と、前記撮像処理と、前記検査処理と、前記送信処理との作業手順を設定する設定部と、を有し、前記設定部は、前記検査処理を、前記撮像処理が終了した後に実行させ、前記送信処理を、前記撮像処理が終了した後、前記検査処理が終了する前に実行させるように前記作業手順を設定する。
【００１５】
本願のロボットシステムは、ロボットと、上記に記載の画像処理装置と、前記画像処理装置の前記検査結果に基づいて前記ロボットを制御する制御装置と、を有する。
【図面の簡単な説明】
【００１６】
【図１】本実施形態に係るロボットビジョンシステムを示すシステム構成図。
【図２】ロボットビジョンシステムの設定画面と画像処理シーケンス、画像処理オブジェクトの例を示す図。
【図３】画像処理シーケンスと画像処理オブジェクトとの連携を示す図。
【図４】SpectrumMatchオブジェクトによる分光スペクトル画像検査を示す図。
【図５】ロボットビジョンシステムの設定画面と画像処理シーケンス、画像処理オブジェクトの例を示す図。
【図６】画像処理シーケンスと画像処理オブジェクトとの連携を示す図。
【図７】ImageOpオブジェクトの動作を示す図。
【図８】画像処理の実行結果に応じて、ロボットを動かすプログラムの例を示す図。
【図９】プログラムを実行したときのタイミングチャートを示す図。
【図１０】ワークを合格品と不合格品とに分けるシステムを示す配置図。
【図１１】給材パレットに並べられたワークを示す図。
【図１２】ワークの表面と裏面とを示す図。
【図１３】画像処理シーケンスの実行結果を示す図。
【図１４】他の品種の裏面を示す図。
【図１５】他の品種の実行結果を示す図。
【発明を実施するための形態】
【００１７】
以下、本発明を具体化した実施形態について図面に従って説明する。なお、使用する図面は、説明する部分が認識可能な状態となるように、適宜拡大又は縮小して表示している。
【００１８】
（ロボットビジョンシステム）
図１は、本実施形態に係るロボットビジョンシステムを示すシステム構成図である。
本実施形態に係るロボットシステムとしてのロボットビジョンシステム２は、例えば、電子部品及び電子機器等の物体としてのワークＷの保持、搬送、組立て、及び検査等の作業で用いられる装置である。
ロボットビジョンシステム２は、図１に示すように、制御システム４と、ロボット１０と、分光カメラ１２Ａと、ロボットカメラ１２Ｂと、表示装置１４と、入力装置１６と、を備える。
制御システム４は、コンピューター１８と、ロボット制御装置２０と、画像処理装置２２と、を備える。
【００１９】
コンピューター１８とロボット制御装置２０と画像処理装置２２とは、互いに、有線又は無線通信で接続（以下、単に「接続」ともいう）されている。また、コンピューター１８には、表示装置１４及び入力装置１６のそれぞれが有線又は無線通信で接続されている。また、ロボット制御装置２０には、ロボット１０が有線又は無線通信で接続されている。また、画像処理装置２２には、分光カメラ１２Ａ及びロボットカメラ１２Ｂのそれぞれが有線又は無線通信で接続されている。なお、分光カメラ１２Ａ、ロボットカメラ１２Ｂ、表示装置１４、及び入力装置１６は、それぞれ、画像処理装置２２に接続されていてもよい。
【００２０】
このロボットビジョンシステム２は、例えば制御システム４の制御の下、分光カメラ１２Ａ及びロボットカメラ１２ＢがワークＷ等を撮像し、ロボット１０が分光カメラ１２Ａ及びロボットカメラ１２Ｂで撮像した撮像画像を基にしてワークＷ等に対して作業を行う。また、ロボットビジョンシステム２は、ロボット１０が適切な作業を行うことができるよう、制御システム４の制御の下、例えば分光カメラ１２Ａ及びロボットカメラ１２ＢでワークＷを認識するために画像処理シーケンスの作成等を行ったり、撮像座標系とロボット座標系とを対応付けるキャリブレーションを行ったりする。
以下、ロボットビジョンシステム２を構成する各部について説明する。
【００２１】
（ロボット）
ロボット１０は、ロボット制御装置２０に接続されている。ロボット制御装置２０に接続可能なロボット１０の種類は、特に限定されない。例えば垂直多関節ロボットや、水平多関節ロボットであってもよい。ここで、「水平多関節ロボット」とは、水平方向にアームが動作するロボットのことをいう。また、「垂直多関節ロボット」とは、軸数が３つ以上であり、かつ、３つの軸のうちの２つの軸が互いに交差しているロボットのことをいう。
【００２２】
（カメラ）
分光カメラ１２Ａ及びロボットカメラ１２Ｂは、それぞれ、画像処理装置２２に接続されている。本実施形態では、後述する図１０に示すように、ロボットビジョンシステム２は、ロボット１０の周辺に配置された分光カメラ１２Ａと、ロボット１０が備えるロボットアーム２４に固定されたロボットカメラ１２Ｂと、を備えている。なお、ロボットカメラ１２Ｂは、ロボットアーム２４の先端部に取り付けられている。
【００２３】
（表示装置）
表示装置１４は、例えば液晶ディスプレイ等で構成されたモニターを備えており、例えば分光カメラ１２Ａ及びロボットカメラ１２Ｂで撮像した撮像画像や各種画面等を表示する機能を備える。各種画像は、例えば操作ウィンドウや処理結果に関する画面である。したがって、ユーザーは、撮像画像やロボット１０の作業等を把握することができる。
【００２４】
（入力装置）
入力装置１６は、例えばマウスやキーボード等で構成されている。したがって、ユーザーは、入力装置１６を操作することで、制御システム４に対して各種処理等の指示を行うことができる。
【００２５】
なお、本実施形態では、表示装置１４及び入力装置１６の代わりに、表示装置１４及び入力装置１６を兼ね備えた表示入力装置を設けてもよい。表示入力装置としては、例えばタッチパネルとしての静電式タッチパネルや感圧式タッチパネル等を用いることができる。また、入力装置１６は、音声を含む音を認識する構成であってもよい。
【００２６】
（制御システム）
上述したように、制御システム４は、コンピューター１８と、ロボット制御装置２０と、画像処理装置２２と、を備える。この制御システム４は、ロボット１０、分光カメラ１２Ａ、ロボットカメラ１２Ｂ、及び表示装置１４の駆動を制御する。
【００２７】
以下、制御システム４のコンピューター１８とロボット制御装置２０とについて順次説明する。
【００２８】
（コンピューター）
コンピューター１８は、例えばプログラム（ＯＳ：Operating System）がインストールされたコンピューター（例えばＰＣ（Personal Computer）やＰＬＣ（Programmable Logic Controller）等）で構成されている。このコンピューター１８は、例えば、プロセッサーとしてのＣＰＵ（Central Processing Unit）及びＧＰＵ（Graphics Processing Unit）と、ＲＡＭ（Random Access Memory）と、プログラムが記憶されたＲＯＭ（Read Only Memory）と、を備える。
【００２９】
以下、コンピューター１８が備える各機能について説明する。
コンピューター１８は、制御部２６と、メインメモリー２８と、記憶部３０と、表示制御部３２と、入力制御部３４と、通信部３６と、を備え、これらの間で相互にデータのやり取りができるよう構成されている。
【００３０】
制御部２６の機能は、例えばＣＰＵ及びＧＰＵによりメインメモリー２８や記憶部３０に記憶された各種プログラムを実行することにより実現することができる。この制御部２６は、例えば制御プログラム編集部３８と、画像処理シーケンス編集部４０と、を備える。なお、制御部２６が備える機能部は、これらに限定されない。これらの機能部のいずれかを省略したり、他の機能部を追加したりしてもよい。
【００３１】
制御プログラム編集部３８は、ロボット１０が各種作業を行う作業プログラムを含むロボット１０を駆動する制御プログラムを作成したり編集したりする。また、例えば制御プログラム編集部３８は、制御プログラムの中に、所定の引数を持つ各種コマンドを指定することができる。
【００３２】
画像処理シーケンス編集部４０は、分光カメラ１２Ａ及びロボットカメラ１２ＢでワークＷを認識するための画像処理シーケンスに関する画像処理プログラムを作成したり編集したりする。すなわち、画像処理シーケンス編集部４０は、画像処理シーケンスに関する設定内容を編集する機能を備える。
【００３３】
その他、制御部２６は、入力制御部３４で受けたユーザーの指示に応じて各種演算、判断、コンピューター１８が備える各機能部への指示、ロボット制御装置２０への指示、及び画像処理装置２２への指示等を行う。
【００３４】
メインメモリー２８は、制御部２６の作業領域である。メインメモリー２８の機能は、例えばＲＡＭにより実現することができる。
【００３５】
記憶部３０は、プログラムを含む各種データを記録する機能を備える。記憶部３０の機能は、ＲＯＭ等やいわゆる外部記憶装置によって実現することができる。記憶部３０は、例えば分光カメラ１２Ａ及びロボットカメラ１２ＢでワークＷを認識するための画像処理シーケンスに関する画像処理プログラム等を含むソフトウェア、例えばロボット制御プログラム開発ソフトが記憶されている。言い換えると、コンピューター１８には、上述のソフトウェアがインストールされている。また、このソフトウェアには、ツール設定に関するプログラム、ローカル設定に関するプログラム、各種コマンドにより各種ロボット１０を駆動させる各種処理及び画像処理シーケンス作成・実行等を実行させるプログラムと、及び、図示しない力検出部からの出力に基づく力制御における各種パラメーターを設定するプログラムを含む。また、上述のソフトウェアは、例えばＣＤ−ＲＯＭ等の記録媒体に格納されていて、この記録媒体から提供されたものであってもよいし、ネットワークを介して提供されたものであってもよい。
【００３６】
表示制御部３２は、表示装置１４に接続されており、表示装置１４のモニターに撮像画像や各種画面を表示させる機能を備える。各種画面は、例えば操作ウィンドウや処理結果に関する画面である。すなわち、表示制御部３２は、表示装置１４の駆動を制御する。この表示制御部３２の機能は、例えばＧＰＵによって実現することができる。例えば、表示制御部３２は、画像処理シーケンスに関する複数のガイド画面をユーザーとの対話形式で順次表示装置１４に表示させる。また、表示制御部３２は、キャリブレーションに関する複数のキャリブレーション作成画面、ツール設定に関する複数のツール設定画面、及び、ローカル座標系の設定に関する複数のローカル設定画面のそれぞれをユーザーとの対話形式で順次表示装置１４に表示させる。
【００３７】
入力制御部３４は、入力装置１６に接続されており、入力装置１６からの入力を受け付ける機能を備える。この入力制御部３４の機能は、例えばインターフェイス回路によって実現することができる。なお、例えばタッチパネルを用いる場合には、入力制御部３４は、ユーザーの指のタッチパネルへの接触等を検知する入力検知部としての機能を備える。
【００３８】
通信部３６は、ロボット制御装置２０及び画像処理装置２２等の外部とのデータのやり取りを行う機能を備える。通信部３６の機能は、例えばインターフェイス回路等によって実現することができる。
【００３９】
（ロボット制御装置）
ロボット制御装置２０は、例えばコンピューター１８からの指示に基づいてロボット１０の駆動を制御する。ロボット制御装置２０は、ＯＳ等を含むプログラムがインストールされたコンピューターである。このロボット制御装置２０は、例えばプロセッサーとしてのＣＰＵと、ＲＡＭと、プログラムが記憶されたＲＯＭと、を備える。
【００４０】
以下、ロボット制御装置２０が備える各機能について説明する。
ロボット制御装置２０は、制御部４２と、メインメモリー４４と、記憶部４６と、通信部４８と、を備え、これらの間で相互にデータのやり取りができるよう構成されている。
【００４１】
制御部４２の機能は、例えばＣＰＵによりメインメモリー４４や記憶部４６に記憶された各種プログラムを実行することにより実現することができる。この制御部４２は、例えば制御プログラム実行部５０と、ロボット制御部５２と、を備える。なお、制御部４２が備える機能部は、これらに限定されない。これらの機能部のいずれかを省略したり、他の機能部を追加したりしてもよい。
【００４２】
制御プログラム実行部５０は、コンピューター１８からの指示に基づき、ロボット１０を駆動する制御プログラムを実行する。例えば、制御プログラム実行部５０は、各種コマンドによりロボット１０に各種処理を実行する。各種処理は、例えばツール設定、ローカル設定、キャリブレーション処理、及び画像処理シーケンス実行指示等を実行する。
ロボット制御部５２は、各駆動部の駆動を制御し、ロボットアーム２４を駆動させたり停止させたりする。例えば、制御部４２は、図示しない位置センサーや力検出部から出力された情報を基にして、ハンドを目標位置に移動させるために各駆動部が備えるモーターの目標値を導出する。その他、制御部４２は、各種演算及び判断等の処理を行う機能や、ロボット制御装置２０が備える指示を行う機能等を備える。
【００４３】
メインメモリー４４は、制御部４２の作業領域である。メインメモリー４４の機能は、例えばＲＡＭにより実現することができる。
記憶部４６は、プログラムを含む各種データを記録する機能を備える。記憶部４６は、例えば制御プログラム等を記録する。記憶部４６の機能は、ＲＯＭ等やいわゆる外部記憶装置によって実現することができる。
通信部４８は、ロボット１０、コンピューター１８、及び画像処理装置２２等の外部とのデータのやり取りを行う機能を備える。通信部４８の機能は、例えばインターフェイス回路等によって実現することができる。
【００４４】
（画像処理装置）
本実施形態に係る画像処理装置２２は、分光カメラ１２Ａで撮像したスペクトル画像に含まれるワークＷの検査を行う画像処理装置である。画像処理装置２２は、例えばコンピューター１８からの指示に基づいて分光カメラ１２Ａ及びロボットカメラ１２Ｂの駆動を制御したり、分光カメラ１２Ａ及びロボットカメラ１２Ｂで撮像した撮像画像の処理を行ったりする。画像処理装置２２は、例えばＯＳ等を含むプログラムがインストールされたコンピューターである。この画像処理装置２２は、例えばプロセッサーとしてのＣＰＵ及びＧＰＵと、ＲＡＭと、プログラムが記憶されたＲＯＭと、を備える。
【００４５】
以下、画像処理装置２２が備える各機能について説明する。
画像処理装置２２は、制御部５４と、メインメモリー５６と、記憶部５８と、信号送信部としての通信部６０と、を備え、これらの間で相互にデータのやり取りができるよう構成されている。
【００４６】
制御部５４の機能は、例えばＣＰＵ及びＧＰＵによりメインメモリー５６や記憶部５８に記憶された各種プログラムを実行することにより実現することができる。この制御部５４は、検査部としての画像処理シーケンス実行部６２と、設定部７０と、画像処理部６４と、撮像部制御部６６と、を備える。なお、制御部５４が備える機能部は、これらに限定されない。これらの機能部のいずれかを省略したり、他の機能部を追加したりしてもよい。
【００４７】
画像処理シーケンス実行部６２は、コンピューター１８からの指示に基づき画像処理シーケンスを実行する機能を備える。また、画像処理シーケンス実行部６２は、スペクトル画像を撮像し、その画像に対する画像処理を実行し、画像処理の結果を検査結果として出力する検査部としての機能を備える。
設定部７０は、分光カメラ１２Ａの実行と画像処理シーケンス実行部６２の実行とをひとつの作業手順として設定する。設定部７０は、分光カメラ１２Ａが終了した後、画像処理シーケンス実行部６２の実行と同時に、通信部６０を実行するように作業手順を設定する。設定部７０は、分光カメラ１２Ａでのスペクトル画像の取得が終了した後、画像処理シーケンス実行部６２でのスペクトル画像に対する画像処理の実行と同時に、ワークＷに対する操作を行う信号を送信する通信部６０を実行するように作業手順を設定する。
画像処理部６４は、例えば撮像画像から各種情報を取り出す等の画像処理を行う機能を備える。具体的には、画像処理部６４は、例えば分光カメラ１２Ａ及びロボットカメラ１２Ｂ等からの撮像画像を基にして各種演算や各種判断等の処理を行う。例えば、画像処理部６４は、撮像画像を基にして画像座標系における撮像対象の座標を演算する。また、例えば画像処理部６４は、画像座標系での座標をロボット１０の先端座標系での座標又はロボット１０のベース座標系での座標に変換したりする。その変換に用いる補正パラメーターは、例えばコンピューター１８又はロボット制御装置２０が求める。なお、画像処理装置２２が、上記変換に用いる補正パラメーターを求めてもよい。
また、撮像部制御部６６は、ワークＷが分光カメラ１２Ａの撮像範囲にあるとき、分光カメラ１２ＡでワークＷの撮像を行ってスペクトル画像を取得する。撮像部制御部６６は、例えば分光カメラ１２Ａ及びロボットカメラ１２Ｂの駆動を制御したり、分光カメラ１２Ａ及びロボットカメラ１２Ｂから撮像画像を取得したりする機能を備える。
【００４８】
その他、制御部５４は、コンピューター１８からの指示を受けて各種演算及び判断等の処理を行う機能や、画像処理装置２２が備える各機能部への指示を行う機能等を備える。
【００４９】
メインメモリー５６は、制御部５４の作業領域である。メインメモリー５６の機能は、例えばＲＡＭにより実現することができる。
【００５０】
記憶部５８は、プログラムを含む各種データを記録する機能を備える。記憶部５８は、例えば画像処理シーケンスに関するプログラム等を記録する。記憶部５８の機能は、ＲＯＭ等やいわゆる外部記憶装置によって実現することができる。
【００５１】
通信部６０は、分光カメラ１２Ａ、ロボットカメラ１２Ｂ、ロボット制御装置２０、及びコンピューター１８等の外部とのデータのやり取りを行う機能を備える。通信部６０は、ワークＷに対する操作を行う信号を送信する。通信部６０の機能は、例えばインターフェイス回路等によって実現することができる。
【００５２】
以上、制御システム４の構成及び機能について説明した。なお、上述したコンピューター１８と、ロボット制御装置２０と、画像処理装置２２と、がそれぞれ備える各機能は、コンピューター１８と、ロボット制御装置２０と、画像処理装置２２と、のいずれが備えていてもよい。また、コンピューター１８と、ロボット制御装置２０と、画像処理装置２２と、が一体であってもよい。例えば、画像処理装置２２が備える画像処理シーケンス実行部６２、画像処理部６４、撮像部制御部６６は、コンピューター１８の制御部２６が備えていてもよい。また、コンピューター１８が備える表示制御部３２及び入力制御部３４は、画像処理装置２２が備えていてもよい。また、制御システム４は画像処理装置２２を備えていなくてもよく、その場合には、画像処理装置２２が備える各機能はコンピューター１８が備えることができる。
以上、ロボットビジョンシステム２の基本的な構成について簡単に説明した。
以下、画像処理装置２２が行う処理の具体例について説明する。
【００５３】
（実施例１）
＜ロボット制御プログラム開発ソフト＞
ここで、画像処理用のウィンドウについて説明する。
図２は、ロボットビジョンシステムの設定画面と画像処理シーケンス、画像処理オブジェクトの例を示す図である。
【００５４】
画像処理用のウィンドウ１００は、図２に示すように、ツールバー１０２と、画像イメージ表示部１０４と、実行グループ１０６と、フローチャート表示部１０８と、を備える。この画像処理用のウィンドウ１００は、図示しないメインウィンドウにあるアイコンをユーザーが操作指示することにより表示される。
【００５５】
ツールバー１０２は、画像処理シーケンスの作成用の画面群を表示させるために用いられるアイコン１１０を備える。画像イメージ表示部１０４は、分光カメラ１２Ａ及びロボットカメラ１２Ｂで撮像した撮像画像、画像処理結果を表示する。実行グループ１０６は、ユーザーによる画像処理シーケンスを実行させる操作指示を受ける各種ボタンを備える。フローチャート表示部１０８は、画像処理シーケンスの画像処理手順や、キャリブレーションのティーチング手順等を表示する。
【００５６】
また、ウィンドウ１００は、キャリブレーション設定と、画像処理シーケンス設定と、表示、編集するプロパティー設定ウィンドウ１１２と、を備える。
【００５７】
以上説明したように、表示制御部３２は、制御部２６の制御の下、１つのメインウィンドウと同時に複数種のサブウィンドウを重ねて又は並べて表示させることができるため、ユーザーは複数種の作業を効率良く行うことができる。
【００５８】
次に、上述した作業プログラムにおける画像処理シーケンス及び画像処理オブジェクトについて説明する。
【００５９】
画像処理シーケンスは、通常、ひとつ又は複数の画像処理オブジェクトを追加して使用する。画像処理シーケンスは、分光カメラ１２Ａの指定や撮像の設定ができる。通常のモノクロカメラも指定できるし、分光カメラ１２Ａも指定できる。分光カメラ１２Ａの場合は、代表画像を設定し、グレースケール画像を対象とした画像処理に対しては、この代表画像を使用する。
【００６０】
画像処理オブジェクトは、画像変換をしたり、画像に対してワークＷを検出したり、画像による検査をしたりする個々の機能である。画像処理オブジェクトは、画像変換をするImageOpオブジェクト、輪郭形状でワークＷを検出するGeometricオブジェクト、明暗パターンでワークＷを検出するCorrelationオブジェクト、サーチライン上の輝度変化点を検出するEdgeオブジェクト、分光検査をするSpectrumMatchオブジェクト、など多数用意されて、ユーザーが自由に選択できるようになっている。
【００６１】
画像処理シーケンスや画像処理オブジェクトは、画像処理のパラメーターや検査の判定閾値などを含む多数のプロパティーと、処理結果を含む多数のリザルト（結果）と、を持っている。分光カメラ１２Ａの設定や代表画像の設定は、画像処理シーケンスのプロパティーである。
【００６２】
Geometricオブジェクトは、輪郭のもとに、予め登録されたモデルと同じ形状のものを探す画像処理オブジェクトである。モデルエリアを設定してティーチボタンを押すと、モデル登録ができる。
【００６３】
SpectrumMatchオブジェクトは、教示された基準分光データとの差異に基づいて検査を行う画像処理オブジェクトである。差異の閾値をプロパティーに持ち、判定結果をリザルトに持っている。
【００６４】
本実施例では、GeometricオブジェクトとFrameオブジェクトに基づいた位置を検査する。
Frameオブジェクトは、前の画像処理オブジェクトで見つかった位置に基づいて、相対的に後の画像処理オブジェクトを配置するためのフレームである。この例では、Frame０１オブジェクトの原点とＹ軸方向の設定として、それぞれGeom０１オブジェクトとGeom０２オブジェクトとが指定されている。さらに、SpectrumMatch０１オブジェクトとSpectrumMatch０２オブジェクトとは、Frame０１オブジェクトに乗せる設定がされている。これにより、実行時には、Geom０１オブジェクトとGeom０２オブジェクトとの位置に対して相対的にいつも同じ位置でSpectrumMatch０１オブジェクトとSpectrumMatch０２オブジェクトとが実行される。
【００６５】
図３は、画像処理シーケンスと画像処理オブジェクトとの連携を示す図である。
画像処理オブジェクトは、Geometricオブジェクト、Frameオブジェクト、SpectrumMatchオブジェクトである。画像処理シーケンスは、分光スペクトル画像の代表画像に対して、Geom０１オブジェクト、Geom０２オブジェクト、Frame０１オブジェクト、SpectrumMatch０１オブジェクト、SpectrumMatch０２オブジェクトを実行し、全てのオブジェクトがPassedであればAllPassedを返す。
【００６６】
図４は、SpectrumMatchオブジェクトによる分光スペクトル画像検査を示す図である。
分光スペクトル画像は、図４に示すように、それぞれの波長での分光輝度の差分の和を閾値と比較される。分光スペクトル画像は、教示時と実行時とのそれぞれの波長での分光輝度の差分の和を閾値と比較される。分光スペクトル画像は、同一対象物を、波長を変えて撮像した分光画像のセットである。
【００６７】
（実施例２）
図５は、ロボットビジョンシステムの設定画面と画像処理シーケンス、画像処理オブジェクトの例を示す図である。
本実施例では、図５に示すように、ImageOpオブジェクトとBlobオブジェクトで抽出した領域の形状に基づいて検査する。
ImageOpオブジェクトは、種々の画像変換をする。平滑化や先鋭化、二値化処理など、基本画像処理が備わっている。分光カメラ１２Ａ用には、スペクトルパターンフィルターとして、教示された基準分光データとの差異が、予め教示された閾値よりも小さいスペクトルを持つ画素の領域を抽出し、代表画像の対応する領域をコピーし、それ以外を背景色として除去する機能を持っている。
【００６８】
Blobオブジェクトは、設定された範囲の輝度にある領域のまとまりを抽出する。複数ある場合は、設定された方法、例えば、面積が最大のもので１つ選ばれる。
【００６９】
図６は、画像処理シーケンスと画像処理オブジェクトとの連携を示す図である。
画像処理オブジェクトは、ImageOpオブジェクト、Blobオブジェクトである。
画像処理シーケンスは、図６に示すように、分光スペクトル画像のグレイ画像に対して、ImageOp０１オブジェクト、Blob０１オブジェクトを実行し、全てのオブジェクトがPassedであればAllPassedを返す。
【００７０】
図７は、ImageOpオブジェクトの動作を示す図である。
ImageOpオブジェクトは、図７に示すように、実行時の入力画面の中から、教示時に登録されているスペクトルとの差分が閾値以下の部分を代表画像から領域抽出して結果画像を生成する。
【００７１】
（実施例３）
本実施例は、ロボット制御装置２０とロボット１０との連動を示し説明する。
＜プログラムと実行＞
図８は、画像処理の実行結果に応じて、ロボット１０を動かすプログラムの例を示す図である。
先ず、ロボット制御装置２０は、ワークＷを分光カメラ１２Ａの位置に移動させる。
次に、画像処理装置２２は、画像処理を実行する。
次に、ロボット制御装置２０は、ワークＷを合格品除材パレット１５２に移動させる。
次に、ロボット制御装置２０は、画像処理装置２２より検査結果を取得し、合格の場合、ワークＷを合格品除材パレット１５２に移動させる。不合格の場合、ワークＷを不合格品除材箱１５４に移動させる。
【００７２】
実行プログラムは、画像処理シーケンスの内容とともにコンピューター１８でビルドされ、ロボット制御装置２０に送られる。ロボット制御装置２０内の制御部４２では、開始命令を受けてプログラムが実行され、ロボット１０、画像処理装置２２、分光カメラ１２Ａの制御がプログラム通りに実行される。
【００７３】
図９は、プログラムを実行したときのタイミングチャートを示す図である。
Goコマンドがロボット制御装置２０よりロボット１０に実行される。ロボット１０は動作を開始する。ロボット１０よりロボット制御装置２０に動作結果が返される。
【００７４】
VRunコマンドがロボット制御装置２０より画像処理装置２２に実行される。画像処理装置２２より分光カメラ１２Ａに撮像が開始され、必要な波長の画像、例えば４００ｎｍ、４２０ｎｍ、…、７００ｎｍの１６枚の画像の撮像が終了すると、画像処理装置２２よりロボット制御装置２０に処理結果が返される。制御がロボット制御装置２０にすみやかに戻るようになっている。画像処理装置２２での画像処理は引き続き行われる。
【００７５】
Goコマンドがロボット制御装置２０よりロボット１０に実行される。ロボット１０は動作を開始する。ロボット１０よりロボット制御装置２０に動作結果が返される。
【００７６】
VGetコマンドがロボット制御装置２０より画像処理装置２２に実行される。VGetコマンドは、画像処理装置２２での画像処理が終了するまで待ち、画像処理装置２２よりロボット制御装置２０に処理結果が返される。画像処理装置２２での画像処理が終了していれば、制御がロボット制御装置２０に即座に戻る。
【００７７】
Goコマンドがロボット制御装置２０よりロボット１０に実行される。ロボット１０は動作を開始する。ロボット１０よりロボット制御装置２０に動作結果が返される。
【００７８】
以下、ロボットビジョンシステム２が行う分光検査方法について説明する。
本実施形態に係る分光検査方法は、分光カメラ１２Ａで撮像したスペクトル画像に含まれるワークＷの検査を行う方法である。分光検査方法は、図示しない設定ステップと、撮像ステップＳ１０と、信号送信ステップＳ２０と、検査ステップＳ３０と、を備える。
【００７９】
事前に、ユーザーは、設定ステップにおいて、撮像ステップＳ１０と、検査ステップＳ３０と、をひとつの作業手順として設定する。また、設定ステップにおいて、設定部７０は、撮像ステップＳ１０が終了した後、検査ステップＳ３０の実行と同時に、ワークＷに対する操作を行う信号を送信する信号送信ステップＳ２０を実行するように作業手順を設定する。
【００８０】
先ず、撮像ステップＳ１０において、撮像部制御部６６は、ワークＷが分光カメラ１２Ａの撮像範囲にあるとき、分光カメラ１２ＡでワークＷの撮像を行ってスペクトル画像を取得する。
【００８１】
次に、信号送信ステップＳ２０において、通信部６０は、撮像ステップＳ１０が終了した後、検査ステップＳ３０の実行と同時に、ワークＷに対する操作を行う信号を送信する。
【００８２】
また、検査ステップＳ３０において、画像処理シーケンス実行部６２は、スペクトル画像に対する画像処理を実行し、画像処理の結果を検査結果として出力する。
【００８３】
検査ステップＳ３０において、画像処理シーケンス実行部６２は、スペクトル画像と、基準分光データとの差異を検査結果として出力してもよい。これによれば、スペクトル画像と、基準分光データとの差異を検査結果として出力するので、スペクトル画像に対する画像処理を容易に行うことができる。
【００８４】
分光検査方法は、図示しない教示ステップを備えてもよい。教示ステップでは、予め画像処理に用いる基準分光データの教示を受け付ける。
【００８５】
基準分光データは、スペクトル画像に含まれる波長ごとの閾値を含んでいてもよい。検査ステップＳ３０は、スペクトル画像に含まれる波長ごとの分光輝度と閾値との差分の和に基づいて判定し、判定結果を検査結果として出力してもよい。これによれば、スペクトル画像に含まれる波長ごとの分光輝度と閾値との差分の和に基づいて判定し、判定結果を検査結果として出力するので、スペクトル画像に対する画像処理を容易に行うことができる。
【００８６】
基準分光データは、可視光の波長帯に含まれる複数の波長により構成されていてもよい。複数の波長は、例えば可視光の波長帯を１６分割したそれぞれの波長であってもよい。これによれば、基準分光データが可視光の波長帯に含まれる複数の波長であるので、スペクトル画像に対する正確な画像処理を行うことができる。
【００８７】
基準分光データは、スペクトル画像に含まれる波長ごとの閾値を含んでいてもよい。画像処理は、画素のスペクトルが閾値よりも小さい画素を抽出領域として抽出し、代表画像の座標系に基づいた抽出領域を検査結果として出力してもよい。これによれば、画素のスペクトルが閾値よりも小さい画素を抽出領域として抽出し、代表画像の座標系に基づいた抽出領域を検査結果として出力するので、正確な画像処理を行うことができる。
【００８８】
画像処理は、スペクトル画像からグレースケール画像を生成して代表画像として設定する処理を含んでもよい。これによれば、スペクトル画像からグレースケール画像を生成して代表画像として設定する処理を含むので、グレースケール画像から好適なエッジ量を算出できる。したがって、好適なエッジ量に基づいてエッジ強調処理を行うことで、文字や線の鮮鋭性を向上させることができる。
【００８９】
画像処理は、代表画像において所定の座標系を設定し、座標系に基づく位置の画素のスペクトルと、基準分光データとの差異を検査結果として出力してもよい。これによれば、座標系に基づく位置の画素のスペクトルと、基準分光データとの差異を検査結果として出力するので、正確な画像処理を行うことができる。
【００９０】
画像処理は、抽出領域の形状情報を検査結果として出力してもよい。これによれば、抽出領域の形状情報を検査結果として出力するので、正確な画像処理を行うことができる。
【００９１】
＜ユーザーアプリケーションの例＞
図１０は、ワークＷを合格品と不合格品とに分けるシステムを示す配置図である。
ロボットビジョンシステム２は、図１０に示すように、ロボット１０と、合格品除材パレット１５２と、不合格品除材箱１５４と、ロボットカメラ１２Ｂと、吸着ハンド１５６と、分光カメラ１２Ａと、を備えている。ロボットビジョンシステム２は、給材パレット１５８に並べられたワークＷをロボット１０の吸着ハンド１５６でひとつずつ取り出し、ワークＷの裏面に装着された小部品１６４の色検査を行い、合格品と不合格品とに分けるシステムである。
【００９２】
図１１は、給材パレット１５８に並べられたワークＷを示す図である。
ワークＷは、図１１に示すように、給材パレット１５８に並べられている。ロボットカメラ１２ＢからはワークＷの表面が見える。ロボットカメラ１２ＢからはワークＷの裏面は見えない。給材パレット１５８の升目に小分けされたワークＷは、升目に対する載置位置にばらつきがある。ロボット１０は、吸着ハンド１５６がワークＷの表面の中心を吸着しないと、移送中に落としてしまうおそれがある。
【００９３】
図１２は、ワークＷの表面と裏面とを示す図である。
ワークＷは、図１２に示すように、表面と裏面とを備える。検査対象は、ワークＷの裏面に設けられた２つの小部品１６４である。ロボット１０は、ロボットカメラ１２Ｂを用いてワークＷの表面を撮像しても、ワークＷの裏面の小部品１６４がどの向きになっているか分からない。
【００９４】
＜ユーザーが実現させるフロー＞
ロボットカメラ１２Ｂは、給材パレット１５８の１つの升目よりも少し大きい視野を持つように設定しておく。また、吸着ハンド１５６の位置と画像の座標との関係は、予めキャリブレーションをしておく。
（給材）
先ず、ロボット１０は、ロボットカメラ１２Ｂの視野に次のワークＷが入るように移動し、円形のワークＷを見つけ、ワークＷの中心を吸着ハンド１５６で吸着する。
次に、ロボット１０は、ワークＷを分光カメラ１２Ａの視野に入る位置に移動させる。ここでロボット１０は、ワークＷを吸着したまま止まる。
【００９５】
（検査）
次に、画像処理装置２２は、ワークＷの裏面の小部品１６４を、マーク１６６を手掛かりに位置を特定して分光検査を行う。画像処理装置２２は、小部品１６４を含むワークＷの裏面を撮像し、その画像で分光画像による検査処理を行い、ワークＷの合格・不合格を判断する。
【００９６】
（除材）
次に、ロボット１０は、分光カメラ１２Ａの撮像が終わったタイミングで、吸着しているワークＷを合格品除材パレット１５２の次に置く升目の上空に向けて動きだす。移送中に、画像処理装置２２が検査処理を行い、合格・不合格の判断を行い、もし不合格であれば、ロボット１０は、吸着しているワークＷの移送先を不合格品除材箱１５４の上空に変更し、吸着しているワークＷを不合格品除材箱１５４に入れる。合格品であれば、吸着しているワークＷの移送先を変更せず、吸着しているワークＷを合格品除材パレット１５２に配置する。
以上を給材パレット１５８にワークＷがなくなるまで繰り返し行う。
【００９７】
＜ユーザープログラムの開発＞
先ず、SpectrumInspオブジェクトを呼び出す側で、給材パレット１５８の升目と合格品除材パレット１５２の升目との位置を次々と移動していき、反復するようなプログラムを作成しておく。
【００９８】
次に、ロボットポイントの給材パレット１５８の開始点、分光カメラ１２Ａの位置、合格品除材パレット１５２の開始点、不合格品除材箱１５４の位置を登録する。
【００９９】
次に、画像処理シーケンスを２つ作成する。第１シーケンスは、ロボット１０に取り付けたロボットカメラ１２Ｂを使い、表面の円形モデルを持つGeometricオブジェクトひとつを実行するシーケンスである。Geometricオブジェクトは、円の中心座標を返すようにしてある。第２シーケンスは、上向きの分光カメラ１２Ａを使い、分光検査をするシーケンスである。上述した例である。
【０１００】
次に、カメラキャリブレーションを実行する。これにより、第１シーケンスのカメラ座標とロボット１０の吸着ハンド１５６の位置との対応付けがされる。
【０１０１】
＜ユーザープログラムの実行＞
図１３は、画像処理シーケンスの実行結果を示す図である。
プログラムをビルドし実行すると、画像処理とロボット１０の動作とが平行して行われる。画像処理シーケンスの実行結果は、場合によって、以下のように変わる。不合格品は、例えば赤で表示される。
この結果に応じて、上段の２つの合格ワークは、合格品除材パレット１５２に置かれ、下段の不合格ワークは、不合格品除材箱１５４に振り分けられる。
【０１０２】
＜検査プログラムを変える場合＞
図１４は、他の品種の裏面を示す図である。図１５は、他の品種の実行結果を示す図である。
図１４に示すように品種が変わって、裏面が以下のようなレイアウトになり、検査箇所が四角の有無のみになった場合、画像処理シーケンスを組み替えれば短時間で対応できる。この場合の実行結果を図１５に示す。上側が合格品で、下側が不合格品を示している。
【０１０３】
本実施例によれば、撮像と検査、ロボット動作を個別に教示するとプログラムが煩雑になることを防止できる。
【０１０４】
本実施形態によれば、画像処理シーケンス実行部６２の実行に対して、画像処理シーケンス実行部６２の終了を待たずに、撮像部制御部６６の終了のタイミングで通信部６０を実行することができる。これにより、タクトタイムを短縮する画像処理装置２２を提供することができる。
【０１０５】
また、検査ステップＳ３０の実行に対して、検査ステップＳ３０の終了を待たずに、撮像ステップＳ１０の終了のタイミングで信号送信ステップＳ２０を実行することができる。これにより、タクトタイムを短縮する分光検査方法を提供することができる。
【０１０６】
以下に、実施形態から導き出される内容を記載する。
【０１０７】
分光検査方法は、分光カメラで撮像した物体のスペクトル画像を用いて検査を行う分光検査方法であって、前記分光カメラの撮像範囲にある前記物体を前記分光カメラで撮像して、前記スペクトル画像を取得する撮像ステップと、前記スペクトル画像に対して画像処理を実行し、前記画像処理の結果を検査結果として出力する検査ステップと、前記検査結果に基づいて前記物体に対する操作を行う信号を送信する信号送信ステップと、前記撮像ステップと、前記検査ステップと、前記信号送信ステップとの作業手順を設定する設定ステップと、を有し、前記設定ステップは、前記検査ステップを、前記撮像ステップが終了した後に実行し、前記信号送信ステップを、前記撮像ステップが終了した後、前記検査ステップが終了する前に実行するように前記作業手順を設定する。
これによれば、検査ステップの実行に対して、検査ステップの終了を待たずに、撮像ステップの終了のタイミングで信号送信ステップを実行することができる。これにより、タクトタイムを短縮する分光検査方法を提供することができる。
【０１０８】
上記の分光検査方法では、予め前記画像処理に用いる基準分光データの教示を受け付ける教示ステップを有し、前記検査ステップは、前記スペクトル画像と、前記基準分光データとの差異を前記検査結果として出力することが好ましい。
これによれば、スペクトル画像と、基準分光データとの差異を検査結果として出力するので、スペクトル画像に対する画像処理を容易に行うことができる。
【０１０９】
上記の分光検査方法では、前記基準分光データは、前記スペクトル画像に含まれる波長ごとの閾値を含み、前記検査ステップは、前記スペクトル画像に含まれる波長ごとの分光輝度と前記閾値との差分の和に基づいて判定した結果を前記検査結果として出力することが好ましい。
これによれば、スペクトル画像に含まれる波長ごとの分光輝度と閾値との差分の和に基づいて判定し、判定結果を検査結果として出力するので、スペクトル画像に対する画像処理を容易に行うことができる。
【０１１０】
上記の分光検査方法では、前記基準分光データは、可視光の波長帯に含まれる複数の波長により構成されていることが好ましい。
これによれば、基準分光データが可視光の波長帯に含まれる複数の波長であるので、スペクトル画像に対する正確な画像処理を行うことができる。
【０１１１】
上記の分光検査方法では、前記画像処理は、前記スペクトル画像からグレースケール画像を生成して代表画像として設定する処理を含むことが好ましい。
これによれば、スペクトル画像からグレースケール画像を生成して代表画像として設定する処理を含むので、グレースケール画像から好適なエッジ量を算出できる。したがって、好適なエッジ量に基づいてエッジ強調処理を行うことで、文字や線の鮮鋭性を向上させることができる。
【０１１２】
上記の分光検査方法では、前記画像処理は、前記代表画像において所定の座標系を設定し、前記座標系に基づく位置の画素のスペクトルと、前記基準分光データとの差異を前記検査結果として出力することが好ましい。
これによれば、座標系に基づく位置の画素のスペクトルと、基準分光データとの差異を検査結果として出力するので、正確な画像処理を行うことができる。
【０１１３】
上記の分光検査方法では、前記基準分光データは、前記スペクトル画像に含まれる波長ごとの閾値を含み、前記画像処理は、前記画素のスペクトルが前記閾値よりも小さい画素を抽出領域として抽出し、前記代表画像の前記座標系に基づいた前記抽出領域を前記検査結果として出力することが好ましい。
これによれば、画素のスペクトルが閾値よりも小さい画素を抽出領域として抽出し、代表画像の座標系に基づいた抽出領域を検査結果として出力するので、正確な画像処理を行うことができる。
【０１１４】
上記の分光検査方法では、前記画像処理は、前記抽出領域の形状情報を前記検査結果として出力することが好ましい。
これによれば、抽出領域の形状情報を検査結果として出力するので、正確な画像処理を行うことができる。
【０１１５】
画像処理装置は、分光カメラで撮像した物体のスペクトル画像を用いて検査を行う画像処理装置であって、前記分光カメラの撮像範囲にある前記物体を前記分光カメラで撮像して、前記スペクトル画像を取得する撮像処理を実行する撮像部制御部と、前記スペクトル画像に対して画像処理を実行し、前記画像処理の結果を検査結果として出力する検査処理を実行する検査部と、前記検査結果に基づいて前記物体に対する操作を行う信号を送信する送信処理を実行する通信部と、前記撮像処理と、前記検査処理と、前記送信処理との作業手順を設定する設定部と、を有し、前記設定部は、前記検査処理を、前記撮像処理が終了した後に実行させ、前記送信処理を、前記撮像処理が終了した後、前記検査処理が終了する前に実行させるように前記作業手順を設定する。
これによれば、検査部の実行に対して、検査部の終了を待たずに、撮像部の終了のタイミングで信号送信部を実行することができる。これにより、タクトタイムを短縮する画像処理装置を提供することができる。
【０１１６】
本願のロボットシステムは、ロボットと、上記に記載の画像処理装置と、前記画像処理装置の前記検査結果に基づいて前記ロボットを制御する制御装置と、を有する。
これによれば、画像処理装置において、検査部の実行に対して、検査部の終了を待たずに、撮像部の終了のタイミングで信号送信部を実行することができる。これにより、タクトタイムを短縮するロボットシステムを提供することができる。
【符号の説明】
【０１１７】
２…ロボットビジョンシステム  ４…制御システム  １０…ロボット  １２Ａ…分光カメラ  １２Ｂ…ロボットカメラ  １４…表示装置  １６…入力装置  １８…コンピューター  ２０…ロボット制御装置（制御装置）  ２２…画像処理装置  ２４…ロボットアーム  ２６…制御部  ２８…メインメモリー  ３０…記憶部  ３２…表示制御部  ３４…入力制御部  ３６…通信部  ３８…制御プログラム編集部  ４０…画像処理シーケンス編集部  ４２…制御部  ４４…メインメモリー  ４６…記憶部  ４８…通信部  ５０…制御プログラム実行部  ５２…ロボット制御部  ５４…制御部  ５６…メインメモリー  ５８…記憶部  ６０…通信部（信号送信部）  ６２…画像処理シーケンス実行部（検査部）  ６４…画像処理部  ６６…撮像部制御部（撮像部）  ７０…設定部  １００…ウィンドウ  １０２…ツールバー  １０４…画像イメージ表示部  １０６…実行グループ  １０８…フローチャート表示部  １１０…アイコン  １１２…プロパティー設定ウィンドウ  １５２…合格品除材パレット  １５４…不合格品除材箱  １５６…吸着ハンド  １５８…給材パレット  １６４…小部品  １６６…マーク  Ｗ…ワーク。
【図１】
2020134424.tif 000003
【図２】
2020134424.tif 000004
【図３】
2020134424.tif 000005
【図４】
2020134424.tif 000006
【図５】
2020134424.tif 000007
【図６】
2020134424.tif 000008
【図７】
2020134424.tif 000009
【図８】
2020134424.tif 000010
【図９】
2020134424.tif 000011
【図１０】
2020134424.tif 000012
【図１１】
2020134424.tif 000013
【図１２】
2020134424.tif 000014
【図１３】
2020134424.tif 000015
【図１４】
2020134424.tif 000016
【図１５】
2020134424.tif 000017