(57)【要約】【課題】高速移動する対象物を動体撮影する撮影装置において、動体検出を行う画像の領域を容易に決定できるようにする。【解決手段】動体撮影の移動体検出では、撮像素子１０１の出力モードを、所定サイズよりも画像サイズが小さい切り出し領域の画像データを出力する第１の出力モードに設定する。抽出領域から出力させた画像データから移動体の位置が所定の位置に到達したのを検出すると、撮像素子１０１の出力モードを所定サイズの出力画像データを出力する第２の出力モードに設定して画像データを撮像素子１０１から出力させる。第１の出力モードにおける切り出し領域を決定する設定工程では、動体撮影工程と同じ態様で移動する移動体が所定の位置にある時に、撮像素子１０１から出力させた画像データから移動体の特徴部位を検出し、検出した特徴部位を含む撮像範囲中の部分領域を切り出し領域として決定する。【選択図】図１
2020035052.tif 000002
【特許請求の範囲】
【請求項１】
移動体を所定サイズの画像を撮像可能な画像センサにより撮像し、出力画像データを前記画像センサから出力させる撮影装置の制御方法において、
制御装置が、前記画像センサの出力モードを、前記所定サイズよりも画像サイズが小さい切り出し領域の画像データを出力する第１の出力モードに設定した状態で、前記画像センサから出力させた画像データから前記移動体の位置が所定の位置に到達したか否かを検出する移動体検出工程と、
前記制御装置が、前記移動体検出工程で前記移動体の位置が前記所定の位置に到達したことを検出した場合、前記画像センサの出力モードを前記所定サイズの出力画像データを出力する第２の出力モードに設定して画像データを前記画像センサから出力させる動体撮影工程と、
前記制御装置が、前記第１の出力モードにおける前記切り出し領域を決定する設定工程と、を備え、
前記設定工程において、前記制御装置は、前記動体撮影工程と同じ態様で移動する前記移動体が前記所定の位置にある時に、前記画像センサから出力させた画像データから前記移動体の特徴部位を検出し、検出した前記特徴部位を含む前記画像センサの撮像範囲中の部分領域を前記切り出し領域として決定する撮影装置の制御方法。
【請求項２】
請求項１に記載の撮影装置の制御方法において、前記設定工程において、前記制御装置は、前記画像センサの撮像範囲に、前記動体撮影工程と同じ態様で移動する前記移動体の画像が移動する方向と交差するよう配置された検出領域を設定し、前記移動体の画像が前記検出領域を通過した場合に、前記画像センサから出力させた画像データから前記移動体の特徴部位を検出し、検出した前記特徴部位を含む前記画像センサの前記撮像範囲中の部分領域を前記切り出し領域として決定する撮影装置の制御方法。
【請求項３】
請求項２に記載の撮影装置の制御方法において、前記検出領域は、前記撮像範囲を通過する前記移動体の画像の移動方向と交差する方向に延びる、幅が１画素以上のライン状の領域である撮影装置の制御方法。
【請求項４】
請求項２に記載の撮影装置の制御方法において、前記検出領域は、前記移動体の画像が通過する矩形状の領域である撮影装置の制御方法。
【請求項５】
請求項２から４のいずれか１項に記載の撮影装置の制御方法において、前記設定工程において、前記画像センサは、前記検出領域の画像データを間引き出力する撮影装置の制御方法。
【請求項６】
請求項１から５のいずれか１項に記載の撮影装置の制御方法において、前記移動体の特徴部位が、前記移動体、または前記移動体を移動させる搬送装置に付与された再帰反射材である撮影装置の制御方法。
【請求項７】
請求項６に記載の撮影装置の制御方法において、前記再帰反射材が前記移動体または前記移動体を移動させる搬送装置の異なる位置に複数、付与され、前記設定工程において、複数の前記再帰反射材の画像が含まれる前記画像センサの撮像範囲を前記切り出し領域として決定する撮影装置の制御方法。
【請求項８】
請求項６または７に記載の撮影装置の制御方法において、前記設定工程において、前記画像センサの撮像範囲で前記再帰反射材の画像が画成する領域に内接、あるいは外接する矩形状の部分領域を前記切り出し領域として決定する撮影装置の制御方法。
【請求項９】
請求項２から８のいずれか１項に記載の撮影装置の制御方法において、前記設定工程において、前記検出領域で、前記移動体が撮像されている画素の数の総和が閾値を超えた場合、前記検出領域の内部を前記移動体の画像が通過したと判定する撮影装置の制御方法。
【請求項１０】
請求項９に記載の撮影装置の制御方法において、前記設定工程において、さらに、前記検出領域の端部の画素で前記移動体が通過したと判定されたことを条件として、前記検出領域の内部を前記移動体の画像が通過したと判定する撮影装置の制御方法。
【請求項１１】
請求項１から１０のいずれか１項に記載の各工程を前記制御装置に実行させるための制御プログラム。
【請求項１２】
請求項１１に記載の制御プログラムを格納したコンピュータ読み取り可能な記録媒体。
【請求項１３】
請求項１から１０のいずれか１項に記載の撮影装置の制御方法によって、生産システムが備える撮影装置を制御して前記移動体として搬送される部品を撮像し、前記第２の出力モードによって前記画像センサより出力される画像データに対する画像処理に基づき、前記部品に対して生産処理または検査処理を行う工程を備えたことを特徴とする部品の製造方法。
【請求項１４】
移動体を所定サイズの画像を撮像可能な画像センサにより撮像し、出力画像データを前記画像センサから出力させる制御装置を備えた撮影装置において、
前記制御装置は、
前記画像センサの出力モードを、前記所定サイズよりも画像サイズが小さい切り出し領域の画像データを出力する第１の出力モードに設定した状態で、前記画像センサから出力させた画像データから前記移動体の位置が所定の位置に到達したか否かを検出する移動体検出工程と、
前記移動体検出工程で前記移動体の位置が前記所定の位置に到達したことを検出した場合、前記画像センサの出力モードを前記所定サイズの出力画像データを出力する第２の出力モードに設定して画像データを前記画像センサから出力させる動体撮影工程と、
前記動体撮影工程と同じ態様で移動する前記移動体が前記所定の位置にある時に、前記画像センサから出力させた画像データから前記移動体の特徴部位を検出し、検出した前記特徴部位を含む前記画像センサの撮像範囲中の部分領域を前記第１の出力モードにおける前記切り出し領域として決定する設定工程と、
を実行可能である撮影装置。
【請求項１５】
請求項１４に記載の撮影装置において、前記設定工程において、前記制御装置は、前記画像センサの撮像範囲に、前記動体撮影工程と同じ態様で移動する前記移動体の画像が移動する方向と交差するよう配置された検出領域を設定し、前記移動体の画像が前記検出領域を通過した場合に、前記画像センサから出力させた画像データから前記移動体の特徴部位を検出し、検出した前記特徴部位を含む前記撮像範囲中の部分領域を前記切り出し領域として決定する撮影装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、移動体を所定サイズの画像を撮像可能な画像センサにより撮像し、出力画像データを前記画像センサから出力させる撮影装置の制御方法、撮影装置、および、それを用いる生産方法に関する。
【背景技術】
【０００２】
製品の自動組立では、ロボットなど、部品把持機構を持つ搬送装置が、供給された部品を把持し、把持した部品をワークに組付ける、といった作業が繰返し行われる。ここで、供給された部品が厳密に位置決めされていない場合には、搬送装置が把持した部品の位置姿勢が定まらないため、カメラにより部品の位置姿勢計測が行われる場合がある。
【０００３】
具体的には、搬送装置が部品を把持した後に、一旦部品をカメラの視野内まで搬送して搬送装置を停止させ、カメラで部品を撮影し、得られた画像を演算処理することにより搬送装置に対する部品の位置姿勢を認識する。この認識結果に基づき、搬送装置の姿勢を変えたり部品を持ち替えたりすることで、部品の位置姿勢をワークに組付けられるように変更してから、組付動作を行う。
【０００４】
このような製品の自動組立を更に高速化したい場合、撮影時に生じる、搬送装置の減速、停止、始動、加速による搬送時間の増分を出来る限り削減することが考えられている。例えば、動体撮影、即ち、ワークの位置姿勢を制御するための撮影を行う時、カメラの前で部品の搬送を停止させることなく、高速に移動する部品をそのまま撮影する技術が提案されている（例えば下記の特許文献１）。
【０００５】
特許文献１の装置は、カメラの前を搬送される部品に対して、カメラ内部で発生させる一定間隔の撮影トリガにより、低画素数で高速かつ連続的に画像を撮影する第１の撮影モードを備えている。第１の撮影モードで撮像された画像は、カメラ内の演算処理により部品が通過したか否かを判定し、部品が通過した場合には、その瞬間に第２の撮影モードによる撮影のための撮影トリガを発行する。特許文献１の装置はさらに、部品が通過した場合に発行される撮影トリガを受信して高画素数の画像を撮影する第２の撮影モードを備えており、カメラの前を通過する瞬間の部品の画像を高画素数で撮影することを可能としている。
【０００６】
特許文献１の装置では、部品が通過したか否かを判定するため、搬送装置にマーカを設置している。そして、カメラの前で部品を通過させたときに、撮影したい位置やタイミングで搬送装置上のマーカが通過する狭小な画像領域を予め調べておき、第１の撮影モードにおける狭小な撮影領域を設定しておく。その上で、実際の動体撮影を行う際には、予め設定した狭小な画像領域内において、部品が通過したか否かを極めて高速なフレームレートで監視される。このような構成によると、部品の通過判定を極めて高速に行え、生産ラインにおいて繰返し動体撮影を行っても、常に同じ位置で再現性よく部品を撮影できる。また、撮影された画像を使った部品の位置姿勢計算は比較的単純なアルゴリズムでよくなり、自動組立動作を全体として高速に行うことが可能となる。この撮影再現性を支える部品通過判定の高速性は、マーカ監視領域が狭小、すなわち極めて低画素数であることで担保されている。
【先行技術文献】
【特許文献】
【０００７】
【特許文献１】特開２０１７−７６１６９号公報
【発明の概要】
【発明が解決しようとする課題】
【０００８】
特許文献１に記載の従来技術による動体撮影を実施する場合、搬送装置上のマーカなどの特徴領域が通過する極めて狭小な画像領域を予め調べておき、動体撮影に先立ち、第１の撮影モードにおける撮影領域を決定する事前作業が必要である。具体的には、搬送装置の特徴領域が撮影したい位置を通過するよう搬送装置をティーチングし、静止させ、静止状態の画像を撮影する。次に、その画像から特徴領域を検出し、特徴領域に対して過不足の無い撮影領域を決定し、カメラ内に撮影領域設定値として保存する。このような作業は、所望の撮影タイミングにおける撮影したい特徴領域の画面内の位置を指定するような手動作業が必要であり、煩雑で時間がかかり、また作業者の習熟も要求される。
【０００９】
カメラの撮影領域を設定する場合、搬送装置が静止しているときの特徴領域位置と、実際に動体撮影する場合の搬送装置が動作しているときの特徴領域位置は、必ずしも同一ではない可能性がある。例えば、この種の動態撮影により撮影される搬送装置は、単軸ロボット、もしくは多軸直交ロボット、多軸水平多関節ロボット、多軸垂直多関節ロボット、多軸パラレルリンクロボットなどであり、これらは種々の異なる動作特性を有している。例えば、多軸ロボットの場合は各軸動作の同期ずれの誤差が存在する他、静止時か、動作時か、あるいは動作速度の違いにより、動作軌道が変動する可能性がある。そのため、特許文献１に記載の従来技術によると、第１の撮影モードの撮影領域の決定時の静止状態と、実際の動作状態で対象物の位置姿勢が異なっていた場合には、動体撮影に失敗する可能性がある。
【００１０】
本発明の課題は、上記の問題点に鑑み、高速移動する対象物を動体撮影する撮影装置において、動体検出を行う画像の領域を容易に決定できるようにすることにある。また、対象物を搬送する搬送装置が、静止状態と動作状態で搬送軌道が変動するような動作特性を有している場合でも動体撮影を確実かつ再現性よく実行できるようにすることにある。
【課題を解決するための手段】
【００１１】
上記課題を解決するため、本発明においては、移動体を所定サイズの画像を撮像可能な画像センサにより撮像し、出力画像データを前記画像センサから出力させる撮影装置の制御方法において、制御装置が、前記画像センサの出力モードを、前記所定サイズよりも画像サイズが小さい切り出し領域の画像データを出力する第１の出力モードに設定した状態で、前記画像センサから出力させた画像データから前記移動体の位置が所定の位置に到達したか否かを検出する移動体検出工程と、前記制御装置が、前記移動体検出工程で前記移動体の位置が前記所定の位置に到達したことを検出した場合、前記画像センサの出力モードを前記所定サイズの出力画像データを出力する第２の出力モードに設定して画像データを前記画像センサから出力させる動体撮影工程と、前記制御装置が、前記第１の出力モードにおける前記切り出し領域を決定する設定工程と、を備え、前記設定工程において、前記制御装置は、前記動体撮影工程と同じ態様で移動する前記移動体が前記所定の位置にある時に、前記画像センサから出力させた画像データから前記移動体の特徴部位を検出し、検出した前記特徴部位を含む前記画像センサの撮像範囲中の部分領域を前記切り出し領域として決定する構成を採用した。
【００１２】
あるいはさらに、前記設定工程において、前記制御装置は、前記画像センサの撮像範囲に、前記動体撮影工程と同じ態様で移動する前記移動体の画像が移動する方向と交差するよう配置された検出領域を設定し、前記移動体の画像が前記検出領域を通過した場合に、前記画像センサから出力させた画像データから前記移動体の特徴部位を検出し、検出した前記特徴部位を含む前記画像センサの撮像範囲中の部分領域を前記切り出し領域として決定する構成を採用した。
【発明の効果】
【００１３】
上記構成により、本発明によれば、高速移動する対象物を動体撮影する撮影装置において、動体検出を行う画像の領域を容易に決定することができる。また、対象物を搬送する搬送装置が、静止状態と動作状態で搬送軌道が変動するような動作特性を有している場合でも、動体撮影を確実かつ再現性よく実行することができる。
【図面の簡単な説明】
【００１４】
【図１】本発明の実施形態に係る動体撮影システムの全体構成を示した説明図である。
【図２】本発明の実施形態に係る動体撮影システムで撮像される画像上で用いられる撮像座標系の説明図である。
【図３】本発明の実施形態に係る動体撮影システムで撮像画面に配置される部分切り出し領域の設定例を示した説明図である。
【図４】本発明の実施形態に係る動体撮影システムで撮像される画像を経時的に示した説明図である。
【図５】図４と同じ画像を２値化した結果を示した説明図である。
【図６】本発明の実施形態に係る動体撮影システムで撮像画面に配置される切り出し領域（ＲＯＩ）の設定例を示した説明図である。
【図７】本発明の実施形態に係る動体撮影システムの画像処理装置の具体的な構成例を示したブロック図である。
【図８】本発明の実施形態に係る動体撮影システムを用いた生産システムの制御手順を示したフローチャート図である。
【発明を実施するための形態】
【００１５】
以下、添付図面を参照して本発明を実施するための形態につき説明する。なお、以下に示す構成はあくまでも一例であり、例えば細部の構成については本発明の趣旨を逸脱しない範囲において当業者が適宜変更することができる。また、本実施形態で取り上げる数値は、参考数値であって、本発明を限定するものではない。
【００１６】
＜動体撮影システムの構成＞
図１に本実施形態に係る撮影装置として、動体撮影システムの構成を示す。図１の動体撮影装置は、所定サイズの画像を撮像可能な画像センサとしての撮像素子１０１、レンズ１０２、制御装置１０３から成るカメラ１０４と、画像処理装置１０７で構成される。
【００１７】
図１の動体撮影システムは、部品１０５を把持した搬送装置１０６を動体撮影する。動体撮影に用いられるカメラ１０４の制御装置１０３は、コントローラ１０８、画像入力インタフェース１０９、画像出力インタフェース１１０、および部品通過判定部１１１から構成されている。
【００１８】
＜設定処理＞
この動体撮影装置は、実際に動体撮影を行う処理の他に、動体撮影の事前準備としての、部品通過判定のための特徴領域を設定する設定処理を行う。部品通過判定のための特徴領域を設定する設定処理は、次のように行う。
【００１９】
撮像素子１０１は、動画撮影モードに設定された状態では、部品１０５が目標撮影位置付近に至るまでの間、レンズ１０２を介し、連続的に画像を撮影し続ける。この時、撮影領域は、部品１０５が必ず通過することが期待される、好ましくは撮像素子１０１の撮像範囲の全体よりも狭小な領域を検出領域（ＲＯＩ）として設定するとともに、出力フレームレートは高フレームレートに設定しておく（第１の出力モード）。
【００２０】
搬送装置１０６は、部品１０５を、カメラ１０４の視野内を通過するように搬送する。撮像素子１０１が撮像した出力画像データは、順次、画像入力インタフェース１０９へ出力される。画像入力インタフェース１０９は、連続的に入力される画像データを、順次パラレル信号の画像データに変換し、部品通過判定部１１１へ出力する。
【００２１】
部品通過判定部１１１は、入力した画像データに対して部品１０５が通過したか否かを判定する。この判定処理は、部品１０５がカメラ１０４の視野内に収まるかどうかといった大まかな精度で判定すればよく、撮影される部品１０５の位置などの再現性は必要としない。
【００２２】
判定の結果として、部品通過のない場合は、引続き連続的に入力される画像データに対して判定処理をし続ける。一方、部品通過と判定した場合は、コントローラ１０８を介して撮像素子１０１を、視野全体を高画素数で撮影する設定に切替えて撮影し、撮影した静止画の画像信号を画像出力インタフェース１１０に出力する。
【００２３】
画像出力インタフェース１１０は、この画像信号をカメラ１０４から画像処理装置１０７に出力する。画像処理装置１０７は、入力される画像データを処理し、動体撮影のトリガとして使用する画像の特徴部位を検出するための過不足の無い、撮像素子１０１の撮像サイズより画像サイズが小さい部分領域として特定する。そして、その部分領域の位置および大きさの情報を、切り出し領域（ＲＯＩ）、即ちセンサからの部分読み出し領域として、コントローラ１０８を介して撮像素子１０１に対して設定する。
【００２４】
＜動体撮影＞
上記のようにして、設定した切り出し領域（ＲＯＩ）を用いて、実際の動体撮影は次のように行う。
【００２５】
動体撮影モード（動体撮影工程）においても、撮像素子１０１は、初期設定により動画撮影モードに設定されており、部品１０５が目標撮影位置付近に至るまでの間、レンズ１０２を介し、連続的に画像を撮影し続ける。このとき、上記の設定処理で決定された切り出し領域（ＲＯＩ）が撮影領域に設定されている。
【００２６】
搬送装置１０６は、部品１０５を、停止させることなく、上記の設定処理と同じ軌道設定、同じ速度で搬送する。撮像素子１０１が撮影した画像は順次画像入力インタフェース１０９へ出力される。画像入力インタフェース１０９は、連続的に入力される画像データを、順次パラレル信号の画像データに変換し、部品通過判定部１１１へ出力する。部品通過判定部１１１は、入力した画像データに対して部品１０５が通過したか否かを判定する（移動体検出工程）。
【００２７】
部品通過判定部１１１による判定処理は、極めて狭小な画像領域に対して搬送装置１０６上の目的の画像特徴が通過したか否かを判定する。本実施形態の部品通過判定部１１１による判定処理では、再現性よく、常にほぼ同じ位置で撮影された部品１０５の画像が通過判定される。
【００２８】
部品通過判定部１１１が部品通過を検出すると、コントローラ１０８を介して撮像素子１０１を視野全体を高画素数で撮影する設定に切替えて撮影し、撮影した静止画の画像を画像出力インタフェース１１０に出力する。画像出力インタフェース１１０は、画像信号をカメラ１０４から画像処理装置１０７に出力する。画像処理装置１０７は、生産工程で必要な任意の画像検査や画像計測といった画像処理を行う。
【００２９】
また、画像処理装置１０７の画像処理の結果は、例えば、搬送装置１０６を構成し、部品１０５を把持するロボットアーム（１０６）の位置、姿勢の制御に用いることができる。また、画像処理装置１０７の画像処理の結果は、部品１０５の組み付け位置の修正などの生産処理、部品１０５の検査処理などに利用することができる。
【００３０】
＜設定処理の詳細＞
本実施形態の部品通過判定を行うための画像領域の設定処理では、部品１０５が静止している状態ではなく、部品１０５が動作した状態の画像を使用して特徴領域の設定を行う。そのため、特徴領域の設定時と実際の動体撮影時との搬送装置１０６の位置ズレが生じず、失敗することなく動体撮影を実行することができる。
【００３１】
本実施形態では、図２に示すような座標系を用いて撮影画像の画像処理を行う。この座標系は、カメラ１０４の撮像素子１０１で撮影可能な全画面、２０４８×２０４８画素の画像エリア上に設定される。ここでは、便宜上、画像エリアの水平方向の右向きをｘ方向、垂直方向の下向きをｙ方向と定義する。この座標系の原点（ｘ＝１、ｙ＝１）は、画像エリアの左上の画素である。また、この画像エリアの右上の画素は（ｘ＝２０４８、ｙ＝１）、左下の画素は（ｘ＝１、ｙ＝２０４８）、右下の画素は（ｘ＝２０４８、ｙ＝２０４８）の各座標値を有する。
【００３２】
ここで、部品１０５は、例えば５０ｍｍ×５０ｍｍ以内の大きさの物体であるものとする。また、部品１０５は、例えばパレットの上に厳密な位置決めされることなく載置されており、搬送装置１０６によりピックアップされ、製品組立のためワークの位置まで搬送されるものとする。部品１０５は、搬送装置１０６にピックアップされた状態ではどのような姿勢をとっているか不明である。そのため、本実施形態の動体撮影装置により部品１０５の画像を撮影し、画像処理により姿勢を計測して、搬送装置１０６により姿勢を修正した上で、ワークへの組付けを行う。
【００３３】
そして、本実施形態の動体撮影により撮影した撮影画像に対して画像処理を行って得た位置姿勢に基づき、搬送装置１０６を制御し、位置姿勢を修正した上で、他の部品に組付ける動作を行う。部品１０５は、特徴部を検出するための切り出し領域（ＲＯＩ）の設定でも、実際の動体撮影でも、同一のサイズ、形状のものが用いられるものとする。
【００３４】
＜搬送装置＞
搬送装置１０６は、例えば２本の指を備えるハンド１０６３（把持装置）によって部品１０５を把持し、５００ｍｍ×５００ｍｍ程度の広さの作業領域を、予め教示した軌道に沿って搬送できる６軸垂直多関節ロボットアームである。搬送装置１０６がこのようなロボットアームである場合、ハンド１０６３（把持装置）は、複数（６軸）の関節１０６２で連結されたリンク１０６１で構成されたアームの先端部に設けられる。
【００３５】
本実施形態では、例えば搬送装置１０６は、部品１０５を最大で毎秒２０００ｍｍの程度の速度で搬送可能であるものとする。なお、本実施形態では搬送装置１０６を垂直多関節ロボットであるものとして説明するが、搬送装置１０６は、単軸ロボット、多軸直交ロボット、水平多関節ロボット、パラレルリンクロボットなどであってもよい。
【００３６】
搬送装置１０６が上記のようなロボットアームである場合、搬送装置１０６の動作はロボット制御装置１２１により制御される。その場合、ロボット制御装置１２１は画像処理装置１０７の画像処理結果を利用することができる。例えば、画像処理装置１０７で、部品１０５を把持した搬送装置１０６をカメラ１０４で動体撮影して取得した画像から部品１０５の位置姿勢を検出する。そして、画像処理装置１０７が検出した部品１０５の位置姿勢に基づき、ロボット制御装置１２１は、搬送装置１０６の位置姿勢を制御し、部品１０５に係る製造工程、例えば部品１０５の組み付けや加工を制御することができる。
【００３７】
部品１０５を把持した搬送装置１０６は、カメラ１０４の撮影画角内を毎秒２０００ｍｍの、好ましくは一定の移動速度で移動するように予め教示しておく。このとき、部品１０５はカメラ１０４の視野中心付近を通り、移動方向は撮影される画像エリアでｘ方向に近い方向となるように教示する。もちろん、この撮影画角の設定は、実際の生産工程において、同じ撮影画角を得られるよう、カメラ１０４の設置位置を調整することによって行ってもよい。
【００３８】
上記のような部品１０５の搬送によると、搬送装置１０６によって把持された部品１０５の画像は、例えば、カメラ１０４の撮影画角（画像エリア）の左端（ｘ＝１）から現れて、ｘ方向へ移動し、画像エリアの右端（ｘ＝２０４８）へ消失する。ここで、搬送装置１０６の軌道は必ずしも直線軌道でなくてよく、カメラ１０４から見て円弧を描いて移動してもよい。なお、本実施形態では画像内でのｘ方向の中心を目標撮影位置とするが、撮影環境等の都合に応じて、任意のｘ座標を目標撮影位置としてもよいし、ｘ方向ではなくｙ方向の座標を目標撮影位置としてもよい。
【００３９】
搬送装置１０６は、切り出し領域の設定処理においても、また、実際の動体撮影においても、同一のものを使用するとともに、搬送動作の教示点や設定、動作速度も同一とする。本実施形態では、搬送装置１０６に、動体撮影のトリガとしての移動体検出を行うための画像特徴として、マーカ１１２を３点設ける。
【００４０】
本実施形態においては、マーカ１１２として白色の円形マーカを設置する。なお、マーカ１１２は設置せずに搬送装置１０６表面のテクスチャを画像特徴として用いてもよい。また、マーカ１１２として再帰反射材を用いる場合には、カメラ１０４のレンズ１０２の近傍にマーカ検出用の照明装置１１８を設置する。また、マーカ１１２として再帰反射材を用いない場合などにおいては、適当な位置に撮影領域を向けて配置した照明装置１１７を用いる。照明装置１１７、１１８は、両者を併用するような構成であってもよい。また、本実施形態ではマーカ１１２の点数を３点としたが、１点以上の任意の数のマーカ１１２を設置する構成でよい。
【００４１】
＜カメラの構成＞
次に、カメラ１０４の撮像素子１０１、レンズ１０２、制御装置１０３の構成例につき説明する。
【００４２】
撮像素子１０１は、約４メガピクセル（２０４８×２０４８画素）の空間解像度を持ち、各画素は８ｂｉｔの輝度ないし濃度の量子化幅を持ち、１０対のＬＶＤＳ信号により画像を出力する。４メガピクセルを出力する場合のフレームレートは例えば１６０ｆｐｓ程度であるものとする。
【００４３】
撮像素子１０１とレンズ１０２を組合わせた撮像光学系は、１００ｍｍ×１００ｍｍの撮影視野を持ち、画素分解能は、約５０μｍ×５０μｍである。撮像素子１０１は、ＳＰＩ規格などに基づく通信を介して撮像素子１０１に内蔵するレジスタへ設定値を書込んだ上で、約４メガピクセル（２０４８×２０４８画素）の画像を読出すことができる。また、撮像素子１０１は、一定のフレームレートで連続的に画像を撮影する動画撮影モードを備えるとともに、指定した撮影領域のみを高速に撮影し読出すことができる、部分切り出し機能を備える。また、撮像素子１０１は、通信を介して撮像領域やフレームレートや静止画／動画の切替え指令を受信して設定を切替えることができる。
【００４４】
また、撮像素子１０１は、素子内部あるいは外部で発生した撮影トリガに基づき、静止画像や動画像の撮影を行うことができる。撮像素子１０１は、各撮影フレームで、信号伝送中は垂直同期信号がＨｉｇｈとなる。
【００４５】
本実施形態においては、初期設定として撮像素子１０１を動画撮影モードとして機能させる設定値、および、部分切り出しを行うための読出し領域の位置及び読出しサイズの値を、コントローラ１０８を介して撮像素子１０１に内蔵するレジスタへ書込んでおく。また、撮像素子１０１を動画撮影モードに設定する。このような設定により、部分切り出し機能を使って高速かつ連続的な撮影を行うことができる。撮像素子１０１が撮影した画像は、後述する画像入力インタフェース１０９へ逐次、出力される。
【００４６】
ここで、動体撮影のトリガとして使用する画像領域の設定における撮影画素数およびフレームレートについて説明する。本実施形態の動体撮影のトリガとして用いる画像領域の設定では、図３に示すように、ｙ座標が１６００の位置を通る少なくとも幅が１画素以上のライン状の領域（２０４８×１画素以上）を部分切り出し領域１０４２として設定する。また、この１ラインの部分切り出し領域１０４２を読み出すフレームレートは２０００ｆｐｓに設定する。
【００４７】
なお、本実施形態では、部分切り出し領域１０４２のライン幅は１画素に取っているが、ライン幅は複数画素の幅であってもよく、また、連続しない異なるｙ座標値の複数ラインを切り出し領域としてもよい。また、本実施形態ではｙ座標を１６００と設定するが、ｙ座標値は搬送装置１０６に設置するマーカ等の画像特徴の位置や、部品１０５の位置関係によって任意に決定すればよい。また、本実施形態では撮影画角の端から端までを切り出し領域とするが、任意の座標を開始座標、終了座標としてもよい。さらに、本実施形態では、部分切り出し領域１０４２はｘ方向に長いライン領域を設定している。しかしながら、ｙ方向に長いライン領域を切り出し領域としてもよい。その場合、撮像素子１０１には、ｙ方向に長いライン領域を設定しても高速に画像を読出せるデバイスを用いるのが好ましい。また、ｘ方向やｙ方向に間引きやビニングをする設定としてもよい。
【００４８】
カメラ１０４の制御装置１０３は、コントローラ１０８、画像入力インタフェース１０９、部品通過判定部１１１、画像出力インタフェース１１０を搭載する電子回路基板である。なお、コントローラ１０８、部品通過判定部１１１は、例えば電子回路基板上に実装されるＦＰＧＡデバイスの中の演算ブロックとして実装される。演算ブロックは、例えばＨＤＬ（Ｈａｒｄｗａｒｅ  Ｄｅｓｃｒｉｐｔｉｏｎ  Ｌａｎｇｕａｇｅ）言語によってハードウェア記述を基にした合成回路と、ＦＰＧＡが備えるマクロ回路により実装することができる。また、回路面積、コスト、性能のバランスを考慮した上で、画像入力インタフェース１０９、画像出力インタフェース１１０をＦＰＧＡ（Ｆｉｅｌｄ  Ｐｒｏｇｒａｍａｂｌｅ  Ｇａｔｅ  Ａｒｒａｙ：機能変更可能な集積回路）内に実装してもよい。また、ＦＰＧＡではなく、ＣＰＵのような制御装置を用いてもよい。
【００４９】
画像入力インタフェース１０９は、撮像素子１０１から入力したＬＶＤＳ（Ｌｏｗ  Ｖｏｌｔａｇｅ  Ｄｉｆｆｅｒｅｎｔｉａｌ  Ｓｉｇｎａｌ：定電圧差動信号）信号を、電子回路内で扱いやすいパラレル信号に変換する周知のデシリアライザＩＣを用いる。もしくは、ＬＶＤＳ信号の入力が可能な周知のＦＰＧＡデバイスに入力し、パラレル信号に変換してもよい。デシリアライザＩＣとしては、例えばＬＶＤＳ信号の差動ペアを１０対、入力できるものを用いる。また、デシリアライザＩＣとして、差動ペアの入力数が不足するものを複数個並列で用いてもよい。ここでは、画像入力インタフェース１０９の出力は、８０ｂｉｔ（８ｂｉｔ×１０ＴＡＰ）のパラレル信号、画素クロック信号、水平同期信号、垂直同期信号とし、部品通過判定部１１１へ出力する。
【００５０】
部品通過判定部１１１は、電子回路基板上に実装されるＦＰＧＡデバイスの中に実装される演算ブロックである。部品通過判定部１１１は、画像入力インタフェース１０９から入力した８０ｂｉｔのパラレル信号、画素クロック信号、水平同期信号、垂直同期信号からなる画像信号に対して、部品１０５が通過したか否かの判定演算を行う。部品通過判定部１１１における判定演算の手順について詳しく説明する。
【００５１】
まず、画像信号の２値化処理を行う。本実施形態では、搬送装置１０６の撮影背景は黒色であるものとする。図４は、撮影時刻Ｔ＝ｔ１〜ｔ８において、撮像素子１０１が撮影し、部品通過判定部１１１に入力された撮影画像１０４１を８フレーム分、示している。また、撮影画像１０４１中には、部分切り出し領域１０４２の１ライン分の領域も図示してある。図４では、搬送装置１０６と、それにより把持されている部品１０５、搬送装置１０６に付与されたマーカ１１２の輪郭を図示してある。これらの被写体の背景の暗い部分の着色は、理解を容易にするため、省略してある。
【００５２】
上述のように、搬送装置１０６に付与するマーカ１１２を再帰反射材であるものとすれば、マーカ１１２の画像は輝度が大きくなり、それ以外の画素は輝度が小さくなる。部品通過判定部１１１では、入力された部分切り出し領域１０４２のパラレル画像信号に対し、１画素を意味する８ｂｉｔ毎に、２値化処理を行い、２値画像を得る。この２値化処理は、予め定めた閾値（例えば１２８）を超えればＨＩＧＨ（１）、閾値以下ならばＬＯＷ（０）とすることなどにより行う。
【００５３】
この２値画像のイメージを図５に示す。ここでは、理解を容易にするため、図４の撮影時刻Ｔ＝ｔ１〜ｔ８におけるものと同じ被写体の位置で撮影画像１０４１の全体を２値化した２値画像を図示している。
【００５４】
なお、本実施形態の部品通過判定部１１１では、後述するように２値化処理は画素レベルでパイプライン処理してもよく、部品通過判定部１１１の処理において必ずしも図５のようにまとまった２値画像が保存されたり出力されたりする必要はない。
【００５５】
また、部品通過判定部１１１では、２値化された部分切り出し領域１０４２の画像信号のみを処理対象とすればよい。ここでは、部品通過判定部１１１では、２値化された部分切り出し領域１０４２の画像データにおいて、ＨＩＧＨ（１）となった画素数の総和を計算する。なお、画像信号の総和計算は、画像信号の２値化結果を出力した後に行うのではなく、２値化処理をすると同時に演算してもよい。
【００５６】
そして、部品通過判定部１１１では、部分切り出し領域１０４２のＨＩＧＨ（１）となった総和値が、予め定めた閾値を超えるか超えないかにより部品１０５が通過したか否かを判定する。本実施形態では、部品通過と判定するための閾値を２０（画素）とする。即ち、部品通過判定部１１１は、部分切り出し領域１０４２のうち２０画素以上にマーカ１１２が撮像されれば部品１０５が通過したと判定する。また、部分切り出し領域１０４２のうちマーカ１１２が撮像された画素数が２０画素未満であれば部品１０５が通過していないと判定する。
【００５７】
コントローラ１０８は、電子回路基板上に実装されるＦＰＧＡデバイスの中に実装される演算ブロックである。コントローラ１０８は、予め撮像素子１０１に対しＳＰＩインタフェースを介して、連続撮影設定を指令して動画撮影モードにする。また、同じく撮像素子１０１に対して前述した部分切り出し領域の設定値を指令し、ライン上の切り出し領域を設定する。
【００５８】
また、コントローラ１０８は、前述の部品通過判定において部品１０５が通過したと判定されると、撮像素子１０１に対して静止画撮影設定を指令して静止画撮影モードに設定する。また、予め定めた動体撮影のための画素数設定値を指令し、動体撮影のための撮影設定を行う。本実施形態では、動体撮影のための画素数設定値は、撮像素子１０１の撮影領域の全体（１０４１）に相当する２０４８×２０４８画素とする。また、撮像素子１０１に対する撮影設定を指令した直後に、撮像素子１０１に対して撮影トリガを発行し、撮像素子１０１に上記の２０４８×２０４８画素の静止画を撮影させる。
【００５９】
画像出力インタフェース１１０は、入力インタフェースから入力した８０ｂｉｔのパラレル信号、画素クロック信号、水平同期信号、垂直同期信号を、カメラリンク等のＬＶＤＳ映像信号に変換する周知のシリアライザＩＣなどにより構成する。あるいは、画像出力インタフェース１１０にＬＶＤＳ信号の出力が可能なＦＰＧＡデバイスを用い、ＦＰＧＡ内でパラレル信号をシリアル信号に変換してもよい。画像出力インタフェース１１０は、前述した２０４８×２０４８画素の静止画像を入力し、画像処理装置１０７へ画像信号を出力する。画像処理装置１０７は、カメラリンクグラバボードなどを介して画像出力インタフェース１１０からＬＶＤＳ信号を受信する。
【００６０】
＜画像処理装置の構成＞
画像処理装置１０７は、例えばＣＰＵを搭載したＰＣハードウェアなどにより構成することができる。なお、画像処理装置１０７のハードウェア構成は、必ずしもＰＣ（パーソナルコンピュータ）フォームである必要はない。例えば、画像処理装置１０７の制御回路には、ＣＰＵのみならずＤＳＰ、マイクロコンピュータ、ＦＰＧＡ、ＡＳＩＣなど、他の基本的な画像処理演算が可能な演算装置を用いることができる。
【００６１】
ここで、図７に、図１の画像処理装置の構成の一例を示す。図７の制御系は、主制御手段としてのＣＰＵ６０１、記憶装置としてのＲＯＭ６０２、およびＲＡＭ６０３を備えたＰＣハードウェアなどによって構成することができる。ＲＯＭ６０２には、後述する製造手順を実現するためのＣＰＵ６０１の制御プログラムや定数情報などを格納しておくことができる。また、ＲＡＭ６０３は、その制御手順を実行する時にＣＰＵ６０１のワークエリアなどとして使用される。また、図７の制御系には、外部記憶装置６０６が接続されている。外部記憶装置６０６は、ＨＤＤやＳＳＤ、ネットワークマウントされた他のシステムの外部記憶装置などから構成される。
【００６２】
本実施形態の制御手順（例えば図８）を実現するためのＣＰＵ６０１の制御プログラムは、ＨＤＤやＳＳＤなどから成る外部記憶装置６０６や、ＲＯＭ６０２の（例えばＥＥＰＲＯＭ領域）のような記憶部に格納しておくことができる。その場合、後述の制御手順を実現するためのＣＰＵ６０１の制御プログラムは、ネットワークインターフェース６０７を介して、上記の各記憶部に供給し、また新しい（別の）プログラムに更新することができる。あるいは、後述の制御手順を実現するためのＣＰＵ６０１の制御プログラムは、各種の磁気ディスクや光ディスク、フラッシュメモリなどの記憶手段と、そのためのドライブ装置を経由して、上記の各記憶部に供給し、またその内容を更新することができる。上述の制御手順を実現するためのＣＰＵ６０１の制御プログラムを格納した状態における各種の記憶手段、記憶部、ないし記憶デバイスは、本発明の制御手順を格納したコンピュータ読み取り可能な記録媒体を構成することになる。
【００６３】
ＣＰＵ６０１には、図１のカメラ１０４、および搬送装置１０６を制御するロボット制御装置１２１がネットワークインターフェース６０７、ネットワーク６０８を介して接続される。ネットワークインターフェース６０７は、例えばＩＥＥＥ  ８０２．３のような有線通信、ＩＥＥＥ  ８０２．１１、８０２．１５のような無線通信による通信規格を用いて構成することができる。ネットワークインターフェース６０７は、例えば搬送装置１０６の他、搬送装置１０６が設置された生産システムに生産制御、管理のために配置されたＰＬＣやシーケンサのような統轄制御装置や、管理サーバなどとの間の通信にも用いることができる。
【００６４】
図７の監視装置では、ＵＩ装置（ユーザーインターフェース装置）として、操作部６０４、および表示装置６０５が接続されている。操作部６０４は、ハンディターミナルのような端末、あるいはキーボード、ジョグダイアル、ポインティングデバイスなどのデバイス（あるいはそれらを備えたから成る制御端末）によって構成することができる。表示装置６０５には、例えば液晶方式の他、後述するデータ表示、あるいはそれに類似の表示画面を表示出力できるものであれば任意の方式のディスプレイ装置を用いることができる。
【００６５】
＜移動体検出とそれに基づく動体撮影＞
切り出し領域（ＲＯＩ）の設定処理において、画像処理装置１０７は、画像出力インタフェース１１０から入力した画像から、３点のマーカ１１２が存在する領域を検出し、動体撮影を行う際に部品通過判定に用いる画像領域を決定する。画像からマーカ領域を検出する方法としては、ラベリング処理、画像モーメント計算、パタンマッチング、形状マッチング等の、周知の画像処理アルゴリズムを用いることができる。なお、マーカ１１２でなく搬送装置１０６表面のテクスチャなどを特徴として使用する場合においても同様に、パタンマッチング等の周知の画像処理アルゴリズムを用いればよい。画像処理装置１０７は、撮影画像中で３点のマーカ領域を検出すると、検出した各々のマーカに対応する矩形状の切り出し領域を計算する。
【００６６】
例えば、図６（ａ）に示すように、マーカ１３０２について最も撮像される面積が大きなｙ座標を検出し、検出したｙ座標に対してマーカ１１２が存在する範囲１３０１を切り出し領域とする。あるいは、図６（ｂ）に示すように、マーカ１３０２が画成する円形の領域に外接する矩形１３０３を計算して切り出し領域としてもよい。また、図６（ｃ）に示すように、マーカ１３０２が画成する領域に内接する矩形１３０４を計算して切り出し領域としてもよい。また、搬送装置１０６の軌道ズレ等に起因するバラツキを考慮して、計算結果の画像領域よりも大きな、あるいは小さな切り出し領域を設定してもよい。画像処理装置１０７は、上記のように計算された３つの画像領域を、動体撮影を行うトリガとして用いる切り出し領域の設定値として、撮像素子１０１に指令し、撮像素子１０１は指令された設定値をレジスタに保存する。
【００６７】
上記のようにして設定した切り出し領域をトリガとして用いて、実際の動体撮影は、以下のように行われる。
【００６８】
部品通過判定部１１１は、前述した部品通過判定のための特徴領域設定の処理と同じく、部品１０５が通過したか否かの判定演算を行う。部品通過判定部１１１における判定演算の手順について詳しく説明する。
【００６９】
まず、それぞれの領域について画像信号の２値化処理を行う。実際の動体撮影でも、搬送装置１０６およびその撮影背景を暗色とし、照明は、マーカ検出用の照明装置１１８のみを点灯させる。マーカ１１２に再帰反射材を用いる。
【００７０】
部品１０５の搬送条件は実際の動体撮影でも同一であるため、部品１０５の移動に伴ない、撮像素子１０１から部品通過判定部１１１に入力される画像信号は、図４のような画像となる。この撮影画像では、搬送装置１０６に備えるマーカ１１２が撮像された画素は輝度が大きくなり、そうでない画素は輝度が小さくなる。
【００７１】
部品通過判定部１１１では、入力されたパラレル画像信号に対し、１画素を意味する８ｂｉｔ毎に、２値化処理を行い、２値画像を得る。２値化処理は、予め定めた閾値（例えば１２８）を超えればＨＩＧＨ（１）、閾値以下ならばＬＯＷ（０）とすることで実行する。この２値化処理により得られた２値画像のイメージを図５に示す。ただし、本実施形態では後述するように２値化処理は画素レベルでパイプライン処理してもよく、図５のようにまとまった２値画像が保存されたり出力されたりするとは限らない。
【００７２】
次に、それぞれの領域について２値化された画像信号に対し、ＨＩＧＨ（１）となった画素数の総和を計算する。画像信号の総和計算は、画像信号の２値化結果を出力した後に行うのではなく、２値化処理をすると同時に演算してもよい。
【００７３】
最後に、それぞれの領域について計算された総和値が、予め定めた閾値を超えるか超えないかにより部品１０５が通過したか否かを判定する。本実施形態では、部品通過判定の閾値を２０とし、部分切り出し領域のうち２０画素以上にマーカ１１２が撮像されれば部品１０５が通過したと判定する。また、部分切り出し領域のうちマーカ１１２が撮像された画素数が２０画素未満であれば部品１０５が通過していないと判定する。なお、閾値による部品通過判定では、それぞれの領域のｘ座標の始点と終点がＨＩＧＨ（１）となっていることを条件とした上で閾値判定をしてもよい。このような判定方法をとることにより、部分切り出し領域の中央付近が照明条件やマーカ１１２の状態により一部が暗く撮像される場合でも、精度よく移動体検出を行うことができる。
【００７４】
部品通過判定部１１１では、部品通過を３つのマーカ（特徴部）について判定するが、その判定処理の細部は以下のように任意である。例えば、部品通過判定部１１１における最終的な通過判定は、３つのマーカ全てが通過判定となることを条件としてもよいし、３つのうち１つ以上のマーカが通過判定となることを条件としてもよい。あるいは、３つのうち２つ以上のマーカが通過判定となることを条件としてもよいし、特定の１つまたは２つのマーカが通過判定となることを条件としてもよいし、それ以外に３マーカを論理値と見立てた場合のあらゆる３入力論理演算を条件としてもよい。また、部品通過判定部１１１における判定演算と同様に、マーカ１１２を使用せずに表面テクスチャ等の画像特徴の合致度を周知のパタンマッチング等で計算し、その計算結果のスコア値を閾値処理したものを条件としてもよい。
【００７５】
コントローラ１０８は、電子回路基板上に実装されるＦＰＧＡデバイスの中に実装される演算ブロックである。コントローラ１０８は、予め撮像素子１０１に対しＳＰＩインタフェースを介して、連続撮影設定を指令して動画撮影モードにする。また、同じく撮像素子１０１に対して前述した切り出し領域（ＲＯＩ）の設定処理で計算された部分切り出し領域の設定値を指令し、切り出し領域を設定しておく。
【００７６】
また、コントローラ１０８は、前述の部品通過判定において部品１０５が通過したと判定されたことを入力した瞬間に、撮像素子１０１に対して静止画撮影設定を指令して静止画撮影モードに設定する。また、同時に、撮像素子１０１に対して予め定めた動体撮影のための画素数設定値を指令する。本実施形態では、この動体撮影のための画素数設定を撮像素子１０１全体である２０４８×２０４８画素とする。また、撮像素子１０１に対する撮影設定を指令した直後に、撮像素子１０１に対して撮影トリガを発行し、撮像素子１０１に２０４８×２０４８画素の静止画を撮影させる。
【００７７】
＜設定処理、移動体検出、動体撮影を利用した部品生産＞
図８は、図１に示すような動体撮影システムを用いて、部品の製造処理を行う場合の制御手順を示している。図示のステップは、画像処理装置１０７に係るものが中心であるが、一部にロボット制御装置１２１で制御されるもの、また、作業者の操作に係るものも含まれている。
【００７８】
図８のステップＳ１０１では、製造工程を実行する搬送装置１０６（ロボットアーム）に部品１０５を操作する動作を教示する。この教示は、例えばロボット制御装置１２１の操作部６０４として接続されたティーチングペンダントなどを用いて行う。あるいは、この教示は不図示の他の制御端末でロボットプログラムを編集することによって行ってもよい。
【００７９】
図８のステップＳ１０２〜Ｓ１１５は、上述の切り出し領域（ＲＯＩ）の設定処理に相当する。この切り出し領域（ＲＯＩ）の設定処理は、ステップＳ１１６〜Ｓ１２４の、動体撮影結果に基づき制御される生産工程に先立って行われる。ステップＳ１０２〜Ｓ１１５の切り出し領域（ＲＯＩ）の設定処理は、繰り返し実行されるステップＳ１１６〜Ｓ１２４の生産工程に変更がなければ、生産工程に先立って、少なくとも１度だけ実行すればよい。
【００８０】
ステップＳ１０２では、カメラ１０４と照明装置（１１７、１１８）を搬送装置１０６の搬送領域を撮影できるように設置する。続いて、ステップＳ１０３で搬送装置１０６（ロボットアーム）を試運転する。この「試運転」は、ステップＳ１０４が作業者が操作部６０４に設けたボタンなどによって大まかにマーカ待受け領域を指定するために行うもので、部品１０５の搬送経路としては、本番の生産工程と同じ搬送経路を用いる。搬送速度については、作業者が作業のしやすい搬送速度であればよく、必ずしも本番の生産工程と同じ搬送速度で搬送装置１０６（ロボットアーム）に搬送動作を行わせなくても構わない。
【００８１】
ステップＳ１０４で、部品１０５がカメラ１０４の前方を通過したことを認識すると、ステップＳ１０５で作業者が操作部６０４に設けたボタンなどによってそのタイミングを指示する。これに応じて、ステップＳ１０６で、例えば図４で説明したように部品１０５の移動する方向に交差するように撮像素子１０１の撮像画面中に配置した１ライン程度の狭小な検出領域を設定する。この設定は、当該の検出領域を撮像素子１０１に対して切り出し領域として指定する出力モード設定によって行う。即ち、本番の動体撮影において撮像素子１０１に対して設定する切り出し領域の設定工程では、検出領域（設定工程におけるＲＯＩ：切り出し領域）は、本番の動体撮影よりもごく狭小な（１ライン程度）領域に設定する。この検出領域（設定工程におけるＲＯＩ：切り出し領域）は、カメラ１０４のコントローラ１０８のレジスタなどに書き込むことによって設定する。
【００８２】
そして、ステップＳ１０７で搬送装置１０６に本番の生産工程と同じ搬送速度、搬送経路で搬送動作を行わせる。この時、照明は、マーカ検出用の照明装置１１８のみを点灯させる。そして、部品通過判定部１１１により、設定した検出領域（設定工程におけるＲＯＩ）中で、上述のように特徴部として例えばマーカ１１２の画像を検出させる。部品通過判定部１１１は、設定した検出領域から画像を読み出し（Ｓ１０８：撮像）、検出領域中の明（Ｈｉｇｈ）画素数をカウント（Ｓ１０９）する。さらに、ステップＳ１１０で、そのカウントした明（Ｈｉｇｈ）画素数が閾値（例えば上述の２０画素）以上かどうかを判定する。
【００８３】
このステップＳ１１０が肯定された場合には、マーカ１１２の１つが１ラインの検出領域（設定工程におけるＲＯＩ）に対応する位置に到達した、ということが示されるので、処理はステップＳ１１１に移行する。
【００８４】
ステップＳ１１１では、撮像素子１０１を第２の出力モード（フル解像度出力）に切り換え、ステップＳ１１２において、この第２の出力モード（フル解像度出力）で撮像を行わせる。この時、照明は、（フル画面撮影用の）照明装置１１７を点灯させる。ステップＳ１１３、Ｓ１１４では、第２の出力モード（フル解像度出力）で撮像された画像データに対して、画像処理装置１０７がノイズ除去、ラベリング、重心計算などを行い、例えば３つ配置されたマーカ１１２の中心位置を特定する演算を行う。
【００８５】
ステップＳ１１５では、本番の生産工程の動体撮影で用いる切り出し領域（ＲＯＩ）を決定する。この時、図６（ａ）〜（ｃ）で示したような手法によって、特徴部としてのマーカ１１２を含む矩形領域を選択し、本番の生産工程の動体撮影で用いる切り出し領域（ＲＯＩ）として決定する。この生産工程の動体撮影で用いる切り出し領域（ＲＯＩ）は、カメラ１０４のコントローラ１０８のレジスタなどに書き込むことによって設定する。
【００８６】
ステップＳ１１６では、本番の生産工程を起動する。ステップＳ１１７では、カメラ１０４の生産工程の動体撮影で用いる切り出し領域（ＲＯＩ）が、ステップＳ１１５でレジスタに設定した位置に設定される。また、照明は、マーカ検出用の照明装置１１８を点灯させる。
【００８７】
その後、ステップＳ１１８〜Ｓ１２４のループ制御によって、本番の生産工程が進行する。ここでは、カメラ１０４の部品通過判定部１１１が、コントローラ１０８のレジスタに設定された切り出し領域（ＲＯＩ）を撮像（Ｓ１１８）する。そして、切り出し領域（ＲＯＩ）内の明（Ｈｉｇｈ）画素数をカウント（Ｓ１１９）し、さらにステップＳ１２０で、その画素数が閾値以上かどうかを判定する。
【００８８】
このステップＳ１２０が肯定された場合には、マーカ１１２が切り出し領域（ＲＯＩ：切り出し領域）に対応する位置に到達した、ということが示されるので、処理はステップＳ１２１に移行する。
【００８９】
ステップＳ１２１では、撮像素子１０１を第２の出力モード（フル解像度出力）に切り換える。ステップＳ１２２では、撮像素子１０１に、この第２の出力モード（フル解像度出力）で撮像を行わせる。この時、照明は、（フル画面撮影用の）照明装置１１７を点灯させる。そして、撮像された画像データはステップＳ１２３で画像処理装置１０７に転送される。
【００９０】
画像処理装置１０７では、部品１０５を把持した搬送装置１０６をカメラ１０４で動体撮影して取得した画像から部品１０５の位置姿勢を検出する。そして、画像処理装置１０７が検出した部品１０５の位置姿勢に基づき、ロボット制御装置１２１は、搬送装置１０６の位置姿勢を制御し、部品１０５に係る製造工程、例えば部品１０５の組み付けや加工を制御することができる。ステップＳ１１８〜Ｓ１２３の生産制御は、ステップＳ１２４で、生産工程を終了させる所定の条件が検出されるまで繰り返し実行される。
【００９１】
上記のように、本実施形態は、動画撮影のトリガとなる移動体検出を行う切り出し領域を設定する設定処理工程を備えている。この設定処理では、実際の動体撮影と同じ態様で移動する移動体の画像が移動する方向と交差するよう配置された検出領域を設定する。そして、移動体の画像が検出領域を通過した場合に、画像センサから出力させた画像データから移動体の特徴部位を検出する。さらに、検出した特徴部位を含む撮像範囲中の部分領域を切り出し領域として決定する。この切り出し領域の設定処理の場合、作業者は、大まかなタイミング指定を行うだけで、面倒な領域指定操作などを必要とせず、極めて容易に実施できる。また、この切り出し領域の設定処理は、１ライン幅程度の検出領域を設定して、極めて高速に実行でき、従来のように、移動体を静止させて撮影を行う必要がない。また、この切り出し領域の設定処理では、移動体は、実際の動体撮影と同じ搬送条件で移動させて構わない。
【００９２】
このように、本実施形態では、移動体（部品１０５）を停止させることなく、動体撮影時と同じ搬送状態において、特徴部を検出するための切り出し領域（ＲＯＩ）の設定処理を面倒な設定操作を必要とせず、極めて容易に実施できる。また、切り出し領域（ＲＯＩ）の設定処理は、静止画撮影ではなく、動体撮影時と同じ搬送状態において実行できるため、例えば、特徴領域の設定時と実際の動体撮影時との搬送装置１０６の位置ズレが生じず、精度よく、また確実に動体撮影を行うことができる。
【００９３】
本発明は、上述の実施例の１以上の機能を実現するプログラムネットワーク又は記憶媒体を介してシステムまたは装置に供給し、そのシステムまたは装置のコンピュータにおける１つ以上のプロセッサーがプログラムを読出し実行する処理でも実現可能である。また、１以上の機能を実現する回路（例えば、ＡＳＩＣ）によっても実現可能である。
【符号の説明】
【００９４】
１０１…撮像素子、１０２…レンズ、１０３…制御装置、１０４…カメラ、１０５…部品、１０６…搬送装置、１０７…画像処理装置、１０８…コントローラ、１０９…画像入力インタフェース、１１０…画像出力インタフェース、１１１…部品通過判定部、１１２…マーカ、１２１…ロボット制御装置。
【図１】
2020035052.tif 000003
【図２】
2020035052.tif 000004
【図３】
2020035052.tif 000005
【図４】
2020035052.tif 000006
【図５】
2020035052.tif 000007
【図６】
2020035052.tif 000008
【図７】
2020035052.tif 000009
【図８】
2020035052.tif 000010