次に、添付図面を参照して本発明に係る物体認識装置及び物体搬送システムの実施形態について詳細に説明する。最初に、図1乃至図3を参照して、本発明に係る物体認識装置及び物体認識方法の実施形態の概要について説明する。
図1は、本実施形態の物体認識装置100の概略構成を示す概略ブロック図(a)と説明図(b)である。物体認識装置100は、図1(a)に示すように、物体OBが存在し得る計測エリアを包含する複数の画像Aiを順次に取得する画像取得手段Aと、これらの画像Aiの観察領域Di内の画像処理を行う画像処理手段Bと、この画像処理手段Bによって求められた物体認識情報Biに係る物体OBの予測移動態様Ciを求める移動態様予測手段Cと、上記予測移動態様Ciに基づいて、次の画像Ai+1に関する観察領域Di+1を設定する観察領域設定手段Dとを具備する。ここで、iは自然数であり、1~n(nは2以上の自然数)の複数の数を示す。
物体認識情報Biは、物体の配置を示す物体認識範囲Biaを含み、また、物体の種類、外観、欠陥の有無や種類、物体の良否、物体の姿勢に関する情報なども含むことができる。また、上記予測移動態様Ciは、今回の画像Ai内の物体OBを基準にしたときの次の画像Ai+1内の物体OBの移動の量と向きを含み、例えば、移動ベクトルの形で表わすことができる。また、この予測移動態様Ciは、今回の画像Ai内の物体OBを基準にしたときの次の画像Ai+1内の物体OBへの姿勢変化を含んでいてもよい。
図1(b)は、或る画像Aiにおいて、観察領域Diの内部に物体OBが配置される物体認識範囲Biaが求められたとき、この物体認識範囲Biaと予測移動態様Ciとから、次の画像Ai+1における観察領域Di+1を設定する様子を示す。次の観察領域Di+1は、次の物体認識範囲Bi+1が含まれる領域を予測して設定されるが、その設定は、前の物体認識情報Biに基づいて行われる。例えば、図示例では、予測移動態様Ciに基づいて、前の物体認識範囲Biaを次の画像における予測位置に移動させてなる基準範囲di+1を基準とし、この基準範囲di+1を所定の方法で拡大することにより、次の観察領域Di+1が設定される。
ここで、(xi,yi)は、物体認識範囲Biaの中心座標、(vi
x,vi
y)は、予測移動態様Ciを示す予測移動ベクトルの値、(xi+1,yi+1)は、基準範囲di+1の中心の位置座標、Δtは、前の画像と次の画像の間の時間間隔、Δwは、観察領域Di+1における基準範囲di+1の幅Wiからの増加分(x方向の拡大量)、Δhは、観察領域Di+1における高さHiの基準範囲di+1の高さHiからの増加分(y方向の拡大量)とすれば、以下の式(1)~(4)が成立する。ここで、関数σ(vi
x)、σ(vi
y)は、今までの移動速度の集合に対するx成分若しくはy成分の標準偏差を示す。cはスケール定数であり、0.01や0.1などの任意の数を設定できる。ΔwとΔhは、例えば、図示例のように、基準範囲di+1の図示左右両側と図示上下両側にそれぞれ周辺域の拡大分に相当する値として設定されてもよく、或いは、図示左右両側と図示上下両側の周辺域の合計の拡大分に相当する値として設定されてもよい。後者の場合には、基準範囲di+1の図示左右両側と図示上下両側の拡大分の図示左と右の比率、或いは、図示上と下の比率は、1:1としてもよいが、その他の予測移動態様Ciの情報、例えば、図示左右と図示上下の移動確率の比率に応じた比率となるように設定してもよい。
xi+1=xi+vi
x・Δt…(1)
yi+1=yi+vi
y・Δt…(2)
Δwi=c・σ(vi
x) …(3)
Δhi=c・σ(vi
y) …(4)
なお、図示例では、上記式(1)~(4)に示すように、予測移動態様Ciを、物体認識範囲Biaの中心点と基準範囲di+1の中心点の間の予測移動ベクトルの移動の量と向きのみによって表現している。ただし、予測移動態様Ciは、上記の中心位置の移動の量と向きだけでなく、例えば、一般的には、物体認識範囲Bia(幅Wiや高さHi)に相当する物体OBの移動後の位置及び範囲を表す情報、すなわち、上記基準範囲di+1を導出可能な情報を含むものであってもよく、さらには、上記拡大度合Δw、Δhを導出可能な情報をも含むものであってもよい。なお、予測移動態様Ciには、さらに、物体OBの姿勢変化に関する情報をも含めても構わない。
予測移動態様Ciは、物体OBの移動特性に応じて種々の予測方法によって求められる。このとき、初回の画像A1から次の画像A2までの間の物体OBの移動態様の予測である予測移動態様C1は、予め事前に決められた初期値とされることが好ましい。例えば、物体OBの一般的な移動速度、移動の向き、姿勢変化がわかっている場合には、初回の予測移動態様C1は、その移動速度、移動の向き、姿勢変化に設定される。その後の予測移動態様C2以降は、以前に導出される物体OBの移動態様をも加味して算出されることが好ましい。例えば、予測移動態様C2は、実際に、初回の観察領域D1を画像処理することによって得られた物体認識情報B1と、次の観察領域D2を画像処理することによって得られた物体認識情報B2とを用いて導出される、物体OBの最初の実際の移動態様E1を勘案して決められることが好ましい。このとき、上記初回の予測移動態様C1と、実際の移動態様E1との双方を勘案して次の予測移動態様C2を定めるようにしてもよい。また、実際の移動態様E1のみに基づいて次の予測移動態様C2を定めてもよい。このことは、次の予測移動態様Ci+1(例えばC2)を、前の実際の移動態様Ei(例えばE1)と同じに設定することを含む。さらに、過去の複数の実際の移動態様Eiが存在する場合には、これらの複数の移動態様Eiから適宜の方法で予測移動態様Ci+1を求めるようにしてもよい。この適宜の方法としては、例えば、平均値、中央値等の代表値とする場合や、より直前の移動態様であるほど重くなる態様の重み付けを与えて代表値を求める方法などが考えられる。
初回の観察領域D1は、上記予測移動態様が求められていない段階で与える必要があるため、物体OBの上記計測エリア内における配置特性に応じて、予め事前に決められた領域とされるか、或いは、物体OBの検出位置に応じて予め事前に決められたルールに従って定められる領域とされる。例えば、初回の画像A1において、初回の観察領域D1を画像A1の全体としてもよく、或いは、画像A1の中の物体OBが配置される可能性の高い領域としてもよい。予め画像A1中の物体OBが配置され得る場所の予測が困難であれば、初回の観察領域D1は比較的広い範囲に設定される。一方、物体OBの位置が検出されたときと同時に、或いは、その直後に、初回の画像A1が取得される場合、検出された物体OBの位置情報を利用して、観察領域D1を、初回の画像A1内の上記物体OBが確実に包摂される領域となるように設定してもよい。
観察領域Diの基準範囲diからの拡大量ΔwやΔhは、例えば、上記式(3)及び(4)によって求められる。このときの拡大度合乃至は拡大率Δw,Δhは、物体OBの移動特性に応じて定めることが好ましい。例えば、物体OBの移動態様Eiのばらつきが大きい場合には、上記拡大度合や拡大率を大きくする必要があり、移動態様Eiのばらつきが小さい場合には、上記拡大度合や拡大率を小さくすることができる。過去の実際の物体OBの移動態様Eiが複数得られている場合には、これらの移動態様Eiの集合のばらつき(例えば、標準偏差)に応じて、上記拡大度合や拡大率を増減することが望ましい。このようにすることにより、観察領域Diにおける画像処理によって物体OBに関する物体認識情報Biをより確実に求めることができる。
本実施形態において、物体OBの認識情報をより詳細に解析する場合には、図1に点線で示すように、上記以外の追加の情報処理を実行することもできる。例えば、物体OBの複数の移動態様Eiを求め、これらの移動態様Eiに基づいて、物体OBの移動状況MSを算出することが挙げられる。物体移動状況MSとしては、例えば、物体OBの全体の移動軌跡、移動方位、最終的な反転角度などが含まれ得る。これらの物体移動状況MSは、物体OBに対する各種の制御や判定を行うための検出量として用いることができる。
次に、図2及び図3を参照して、物体認識装置100による物体OBの認識方法について説明する。なお、この方法では、前述のように、予測移動態様Ciとして、移動の量と向きだけを想定している場合について説明する。まず、図2(a)に示すように、最初の画像A1を取得した後に、図2(b)に示すように、画像A1内の予め設定されていた初回の観察領域D1内の画像データを処理する。このとき、初回の観察領域D1は、物体OBが確実に配置される領域に設定される。例えば、物体OBを検知するセンサが設置される場合には、当該センサが物体OBを検知したときに画像A1を撮影するとすれば、観察領域D1は、上記センサが検知する物体OBが配置され得る範囲、例えば、上記センサの検知範囲を含むように設定される。また、物体OBの存在の有無に拘わらず、所定の時間間隔で撮影を行う場合には、後述する図7のプロセスのように、各画像の物体OBが配置され得る範囲内において或る限定領域内の画像処理を行うことにより、当該限定領域内に物体OBの一部が存在するか否かを検出し、上記限定領域内に物体OBの一部が存在する画像若しくは、その後の画像に対して、上記限定領域に対して所定の位置関係にあり、上記限定領域よりもさらに広い範囲を包含することによって上記物体OBが存在し得る範囲を観察領域D1として設定してもよい。さらには、上記画像A1のうちの物体OBが存在し得る範囲全体を観察領域D1としてもよい。この場合には、初回に限り、画像処理を行う必要のある領域が広くなるが、その後の観察領域を狭く限定できれば、大きな支障はない。例えば、初回に限っては、観察領域D1を画像A1の全体としても構わない。
初回の観察領域D1において画像処理が行われると、図2(c)に示すように、観察領域D1内に存在する物体OBが認識され、物体認識情報B1が求められる。物体認識情報B1のうち、物体OBが配置される範囲を示す物体認識範囲Biaは、例えば、後述するエッジ抽出処理後の境界ボックスの設定処理といった領域抽出技術や、各種図形へのフィッティング、テンプレートマッチングなどの種々の画像処理によって求めるようにしてもよい。
上記の物体認識範囲B1aは、物体認識情報B1に係る物体OBの予想移動態様C1に応じて、次の画像A2における物体OBの予想位置に移動される。これにより、図2(d)に示すように、基準範囲d2が得られる。ここで、予想移動態様C1は、予め検出されていた物体OBの移動速度や移動の向きに応じて求められる。特に、予想移動態様C1は初回の物体OBの移動予想に係るものであるので、予め移動の速度や向きを設定しておいてもよい。
上記の基準範囲d2は、図3(a)に示すように、次の画像A2において、観察領域D2の設定時の基準となる。すなわち、観察領域D2は、基準範囲d2を所定の拡大度合で拡大させた領域として設定される。拡大度合Δw,Δhは、前述の式(1)~(4)に示すように、物体OBの今までの移動態様Eiのばらつき、例えば、移動速度のx方向のばらつきを示す標準偏差σ(vi
x)やσ(vi
y)の大小に応じて、増減される。このようにすると、移動速度のばらつきの増加により観察領域の拡大度合が増大するので、観察領域の画像データ量を抑制しつつ、物体OBの認識不良を回避し、確実に物体認識処理を実行することができる。観察領域D2の拡大度合を示すΔwとΔhについては、今までの移動態様Ei(E1)が算出できないため、拡大度合Δw、Δhの初期値を予め設定しておく必要がある。
上記のように画像A2において観察領域D2が設定されると、図3(b)に示すように、観察領域D2で画像処理が行われ、図3(c)に示すように、物体OBが認識される。ここで、物体認識範囲B2aが求められると、前回の物体認識範囲B1aとの関係により、物体OBの実際の移動態様E1を導出することができる。この移動態様E1は、次の予測移動態様C2やΔw,Δhの算出において基礎データとして用いることができる。一般に、i番目の画像Aiにおける観察領域Di内の画像処理により、物体認識範囲BiaからBi+1aまでの移動態様Eiを求めることができる。その後、上記の物体認識情報B2の物体認識範囲B2aは、図3(d)に示すように、前回と同様に、次の予測移動態様C2とともに、次の画像A3における観察領域D3(図示せず。)を設定する際に用いられる基準範囲d3の基礎となる。なお、観察領域D3を設定する際に用いる拡大度合Δw、Δhは、基礎となる今までの移動態様Eiが上記移動態様E1のみとなるので、この移動態様E1のみに基づいて算出するか、或いは、前述の拡大度合Δw、Δhの初期値と移動態様E1とに基づいて算出する。
上記の方法において、各画像Aiの間の時間間隔が或る程度短ければ、各画像Aiの間の物体OBの移動態様Eiは、一般的には、慣性によりそれほど変化することはない。このため、次の観察領域Di+1を設定するための予測移動態様Ci+1を、その前の物体OBの移動態様Ei若しくはこれに近い態様にすれば、問題が生じにくく、より確実に次の観察領域Di+1において物体OBを認識できる。このことは、特に、物体OBが、何等かの力で飛翔している場合、或いは、高速で移動している場合において、物体OBの途中の移動態様を把握しようとするときに有効である。このとき、予測移動態様Ci+1の予測誤差に起因する問題は、基準範囲di+1を基準としつつ、その周囲に拡大して次の観察領域Di+1を設定することによって、回避される。
図4は、本実施形態に係る物体認識装置100を、コンピュータによって実行される物体認識プログラムの機能によって実現する場合の処理手順を示す概略フローチャートである。また、図5は、この処理手順において行われる各種の画像処理を模式的に示す説明図(a)-(e)である。
この物体認識プログラムでは、物体認識処理過程の開始設定条件と、初回の観察領域D1や初回の予測移動態様C1の設定値などの初期条件と、観察領域の画像処理の処理ルーチンや各種閾値等の画像処理条件と、物体OBの移動態様の予測に用いる処理ルーチンや算出定数等の予測処理条件と、が所定のメモリー等に格納された状態で、適宜に読みだされた上記の各条件に基づいてプログラムが実行されるように構成される。そして、コンピュータの入出力回路を介して接続された撮像装置(カメラ)を所定の撮影条件で動作させることができ、これによって物体OBが配置され得る計測エリアを含む範囲に対して複数の画像を順次に取得することができるようになっている。ただし、物体認識装置100は、予め順次に撮影された複数の画像が保存されてなるデータを処理する装置として構成されていてもよい。この場合には、上記複数の画像のデータを所定の条件で順次にコンピュータに取り込むように構成されているか、或いは、既に取り込まれている複数の画像のデータを、画像ごとに順次に読み出すように構成されていればよい。
物体認識プログラムは、所定の開始操作がなされたとき、或いは、認識されるべき物体OBがセンサ等の手段によって検知されたとき、さらには、撮像装置の撮像開始信号が入力されたときなどのトリガが与えられたときなどに開始される。そのとき、上記初期条件の初期値が読み出され、例えば、初回の画像A1が取得されると、既定の範囲に設定された初回の観察領域D1において画像処理が実行される。一般的には、この工程では、図5(a)に示すように、i番目の画像Aiの観察領域Diに対して画像処理が行われる。この工程では、最初に、図5(b)に示すように、観察領域Diの画像データを所定のフィルタ処理によって処理し、物体認識処理が容易な態様に変換することが好ましい。例えば、物体OBの輪郭を強調した画像に変換したい場合には、エッジ抽出処理やエッジ強調処理が行われる。一方、輪郭以外の影響を低減したい場合には、他の部位の平滑処理が行われる。これらの要求を共に満たすフィルター(処理方法)の例としては、ガイディドフィルター(Guided Filter)やバイラテラルフィルター(Bilateral Filter)などが挙げられる。なお、フィルタ処理としては、二値化フィルタ、移動平均フィルタ、ガウシアンフィルタ、メディアンフィルタ、ソーベルフィルタ、プリューウイットフィルターなども使用し得る。
次に、上述のフィルタ処理後の画像に対しては、物体認識処理が行われる。この物体認識処理は、物体OBの位置、範囲、姿勢、模様、色彩、その他の形態を認識するための画像処理であり、その一例として、例えば、図5(c)や(d)に示すように、物体OBの範囲を特定する。一般には、この工程では、輪郭追跡処理や図形検出処理、図形フィッティング処理などが実行される。これらの処理により、観察領域Di内における物体OBが認識される範囲を決定することができ、例えば、物体認識範囲Biaが求められる。この物体認識範囲Biaは、例えば、図5(c)に示す境界ボックス(Bounding Box)などの境界図形や図5(d)に示す楕円フィッティングなどのフィッティング図形によって表現することができる。
上記境界ボックス等の境界図形は、物体OBの画像を取り囲む矩形その他の領域を形成するものであり、物体OBを取り囲む所定条件の領域(境界図形)をなるべく小さな面積にするように(例えば、外接領域となるように)求める。また、上記楕円フィッティングなどのフィッティング図形は、物体OBの画像を円、楕円、矩形、多角形などの各種の図形にフィッティングし、最も近い当該図形を形成する。なお、物体認識処理においては、画像処理技術のうち、形状検出技術、図形検出技術、領域抽出技術などを用いることができ、その結果として、物体OBに関する各種情報の識別、分類、判別などを行うことが可能になる。上記各技術の具体的な方法は問わず、テンプレートマッチング、ブロブ検出法、各種エッジ検出、各種変換処理などを用いることができる。本実施形態では、境界ボックスを形成するために、rotation calipers algorithmを用い、エッジ画素の点群に対して回転するカリパスによって挟み角度ごとに得た外接矩形のうちの最小面積の矩形を求める方法を使用できる。また、楕円フィッティングとしては、例えば、エッジ画素の点群に対して二乗誤差で最小化した楕円を求める方法を使用できる。
上記のようにして導出できる物体認識範囲Biaにより、観察領域Di内における物体OBの位置や範囲を知ることができる。また、この物体認識範囲Biaから、物体OBの姿勢を検出することも可能である。例えば、図5(e)に示すように、境界図形やフィッティング図形の各辺の方向や主軸の方向を求めることによって、物体OBの角度姿勢を得ることができる。図示例では、フィッティングした楕円の主軸の角度(主軸角)θを算出することにより、物体OBの姿勢を容易に求めることができる。本実施形態では、二次元姿勢を判別する例を挙げているが、物体OBの外観を解析することにより、物体OBの三次元姿勢を求めることも可能である。なお、一般に、物体OBがカメラから遠ざかっている場合や照明環境が均等でない場合などにおいては、後述するように、物体OBの精密な外形を反映した境界図形(例えば矩形)を精度よく求めることが困難な場合があるので、楕円や円などのコンパクトなフィッティング図形を求める方法が好ましい。
本実施形態において、観察領域Di内に物体OBの画像部分の少なくとも一部が含まれない場合には、物体OBの全体が観察領域Di内に含まれるように観察領域Diを修正する観察領域修正手段をさらに具備することも可能である。これによれば、観察領域修正手段により物体OBの画像部分の全体が含まれるように観察領域が修正されるので、設定された観察領域の予測が不十分な場合でも確実に物体を認識可能となる。ここで、観察領域Di内に物体OBの画像部分の少なくとも一部が含まれない場合を検出する方法としては、例えば、前述の方法で求めた物体認識範囲Biaが物体OBの予め想定されている画像面積の範囲内に収まらない(当該範囲よりも大きいか、小さい)ことを検出する方法、物体認識範囲Biaが観察領域Diの境界に接していることを検出する方法、物体認識範囲Biaの形状が予め想定されている形状から大きく変形していることを検出する方法、或いは、これらの複数の方法の組み合わせなどが挙げられる。これらの方法によって観察領域Di内に物体OBが包摂されていないことが判明すると、その検出態様に応じて、観察領域Diをさらに拡大したり、移動させたりすることによって再設定し、その後、さらに再設定された観察領域Diの画像処理を実施する。
次に、図6~図10を参照して、本発明に係る物体搬送システム10について説明する。図6に示すように、この物体搬送システム10は、上記物体認識装置100を用いた物体OBを搬送する搬送システムである。この物体搬送システム10は、螺旋状の搬送路111を有するボウル型の搬送体110を備えたパーツフィーダ11と、このパーツフィーダ11の上記搬送路111の出口から搬送物を受け取るように構成された入口を備えた直線状の搬送路121を有する搬送体120を備えたリニアフィーダ12とを具備する振動式の搬送装置を構成する。また、この搬送装置は搬送管理機能を有し、この搬送管理機能は、リニアフィーダ12の搬送体120の搬送路121上の搬送物である物体OBを撮影画像GPXに基づいて検査、判定する。なお、本発明において、振動式の搬送装置に限られない構成については、物体OBが搬送路に沿って搬送される各種の搬送装置に用いることができる。また、振動式の搬送装置であっても、上記パーツフィーダ11とリニアフィーダ12の組み合せに限定されるものではなく、循環式パーツフィーダなどの他の形式の搬送装置に用いることが可能である。さらに、上記の組み合せにあっても、リニアフィーダ12の搬送路121上の搬送物である物体OBを検査するものに限らず、パーツフィーダ11の搬送路111上の物体OBを検査するものであっても構わない。
パーツフィーダ11はコントローラCL11によって駆動、制御される。また、リニアフィーダ12はコントローラCL12によって駆動、制御される。これらのコントローラCL11、CL12はパーツフィーダ11やリニアフィーダ12の加振機構(電磁駆動体や圧電駆動体などを含む。)を交流駆動し、搬送体110,120を搬送路111,121上の搬送物(物体OB)が所定の搬送方向Fに移動する態様となるように振動させる。また、コントローラCL11、CL12は、搬送管理システムの主体となる画像処理機能を有する検査処理ユニットDTUに入出力回路(I/O)を介して接続されている。
また、コントローラCL11,CL12は、下記の動作プログラムを実行する演算処理装置MPUに対して、マウスなどの後述する操作入力装置SP1,SP2などを介して所定の操作入力(デバッグ操作)が行われると、上記の動作プログラムに従って物体搬送システム10の搬送装置の駆動を停止する。このとき、上記の動作プログラムに従って、例えば、検査処理ユニットDTUにおける画像計測処理も停止される。このデバッグ操作及び当該操作に応じた各所の動作については後に詳述する。
検査処理ユニットDTUは、パーソナルコンピュータ等の演算処理装置MPU(マイクロプロセシングユニット)を中核構成とする。図示例では、上記演算処理装置MPUは、中央処理ユニットCPU1,CPU2、キャッシュメモリCCM、メモリコントローラMCL、チップセットCHSなどから構成される。また、この検査処理ユニットDTUには、撮像手段であるカメラCM1,CM2にそれぞれ接続された画像処理を行うための画像処理回路GP1,GP2が設けられている。これらの画像処理回路GP1,GP2はそれぞれ画像処理メモリGM1,GM2に接続されている。画像処理回路GP1,GP2の出力は上記演算処理装置MPUにも接続され、カメラCM1,CM2から取り込んだ撮影画像GPXの画像データを処理し、適宜の処理画像(例えば後述する画像エリアGPY内の画像データ)を演算処理装置MPUに転送する。主記憶装置MMには予め搬送管理システムの動作プログラムが格納されている。検査処理ユニットDTUが起動されると、演算処理装置MPUにより上記動作プログラムが読み出されて実行される。また、この主記憶装置MMには、演算処理装置MPUにより、後述する画像計測処理を実行した対象となる撮影画像GPX若しくは画像エリアGPYの画像データが保存される。
また、検査処理ユニットDTUは、入出力回路(I/O)を介して液晶モニタ等の表示装置DP1,DP2や操作入力装置SP1,SP2に接続される。表示装置DP1,DP2は、上記演算処理装置MPUによって処理された撮影画像GPX若しくは画像エリアGPYの画像データ、画像計測処理の結果、すなわち、搬送物判別処理、搬送挙動検出処理、物体認識処理の結果などが、所定の表示態様で表示される。なお、この表示機能は、実際に搬送物(物体OB)が搬送されている場合に限らず、後述するように、過去のデータを読みだして再生している場合にも機能する。また、表示装置DP1,DP2の画面を見ながら操作入力装置SP1,SP2を操作することにより、各種の操作指令、設定値などの処理条件を上記演算処理装置MPUに入力することができる。
物体搬送システム10においては、上記演算処理装置MPUによって実行される後述する動作動作プログラムに含まれる上記物体認識プログラムの実行によって、前述の物体認識装置100の機能実現手段A~Dが機能する。図7(a)~(g)には、物体搬送システム10の搬送装置の上記カメラCM1,CM2により撮影された搬送路上の画像Aiに基づいて、物体認識装置100により搬送物である物体OBの認識が行われる過程の例を示す。なお、図7に示す複数の画像A01,A02,A1~A5は、上記撮影画像GPX若しくは画像エリアGPYの画像データの少なくとも一部によって構成される。また、図7(e)~(g)において画像A3~A5の範囲がずれている点は、図示や説明の都合上に過ぎず、予め同じ範囲に設定されていることが好ましい。
最初に、図7(a)及び(b)に示すように、上記カメラCM1,CM2の撮影によって得た画像エリアGPY内の画像A01、A02において、搬送方向Fに短く、搬送方向Fに対して交差する方向に長い形状の限定領域Tを、搬送路上の搬送物である物体OBが通過する範囲に設定しておく。そして、この限定領域Tにより限定された画素群が画像A01のように物体OBが存在する様子(画素群の延長方向に沿った明度等の画素値のプロファイル)を示す「有」の状態から、画像A02のように物体OBが存在しない様子(隙間)を示す「無」の状態に切り替わったとき、物体OBが限定領域Tを通過したと判定される。この物体通過判定がなされると、図示のように、この画像A02が初回の画像A1とされるか、或いは、画像A02の次の画像が初回の画像A1とされ、物体の通過検出位置である限定領域Tの下流側に、初回の観察領域D1が設定される。この初回の観察領域D1は、画像A02を初回の画像A1とする図示の場合、図7(c)に示すように、限定領域Tに隣接する下流域において、物体OBを包含する大きさで固定された位置に設定される。一方、画像A02の次の画像を初回の画像A1とする場合には、画像A02と画像A1の間の時間と物体OBの搬送方向Fの移動速度とから求めた物体OBの移動量を勘案し、初回の観察領域D1は、限定領域Tから移動量に対応する距離だけ下流側へずれた範囲とされる。これらの場合には、いずれも、初回の観察領域D1を物体OBの1個分に近い狭い領域に限定して設定することができるので、画像処理の高速化や高度化がさらに容易になる。
上記の物体通過判定は、限定領域Tの画素値のプロファイルに応じて物体OBの通過中か否かを判別するものであり、この判別処理は、種々の処理過程によって実現できる。一例として、限定領域Tの画素列の画素値を、同数のノードを備えた入力層に入力し、適宜の中間層(隠れ層)を介して、例えば、1又は複数のノードを備える出力層の出力により、限定領域Tを物体OBが通過中であるか、或いは、限定領域Tが物体OBの間の隙間にあるかを判別するニューラルネットワークを用いることによってこの判別処理を実行することもできる。本実施形態では、例えば、53画素に対応するノードを備えた入力層と、2層の中間層と、1つのノードを備えた出力層を有する全結合型のニューラルネットワークを構成し、これに29フレーム(画像)以上の学習データを与えて学習させた物体OBの判別処理ルーチンを使用し、単一の出力層の出力値によって通過中と隙間の判別を行った。この処理では、例えば、出力層のノードを複数とすることによって、物体OBの向きや、外観模様(後述するマーク部分)の位置などの判別も可能になる。なお、この物体通過判定処理を行う物体通過判定手段は、上記構成に限定されるものではなく、所定の限定領域Tを物体OBが通過したことを検出できるものであればよい。また、この物体OBの通過が検出されたときの初回の画像A1における初回の観察領域D1は、上記限定領域Tと既定の位置関係にあることによって、限定領域Tを通過した物体OBが配置され得る範囲とされる。
なお、図示例では、いずれの場合でも、初回の観察領域D1は、物体OBが搬送路上に開口した気流を吹付けるための噴気口OPに対面する範囲に設定される。この噴気口OPが設けられる物体処理部では、物体認識処理とは別に行われる、画像A01やA02に対する画像計測処理と搬送物判別処理によって、物体OBが搬送路上で気流を吹き付けられるべきか否かが判定され、その判定結果に応じて、図示しない電磁弁などが制御され、噴気口OPからの気流の噴出の有無が決定される。
物体認識処理では、上記観察領域D1において、前述と同様に画像処理を施し、物体認識情報B1を求める。図示例では、図7(c)に物体認識範囲B1aが描かれている。上述のように、物体OBが噴気口OPに対面する範囲に観察領域D1が設定されるので、物体OBが気流を吹き付けられるべきものであるときには、噴気口OPから気流が吹き付けられ、物体OBは搬送路上から側方へ移動を開始する。一方、物体OBが気流を吹き付けられるべきものでなければ、そのまま搬送路上を搬送方向Fに移動していくだけである。ここで、初回の観察領域D1において得られた物体認識情報B1aから初回の予測移動態様C1が求められる。この場合、初回の予測移動態様C1は、物体OBの搬送方向Fの移動速度(例えば、搬送路上の物体の平均の搬送速度)と、移動の向きとして搬送方向Fの前進の向きとに基づいて求めることができる。すなわち、初回の予測移動態様C1では、搬送方向Fに沿ったx方向の移動成分のみが設定され、y方向(直交方向)の移動成分は0とし、考慮しなくてもよい。ただし、物体OBが気流を受けるものか否かが不明である場合には、上述のように、物体OBの予測位置の搬送方向Fと直交する方向の範囲が特定しにくくなるため、この予測移動態様C1において、y方向の予測位置の幅を大きくしたり、上記拡大度合Δhを大きくしたりすることによって、図示のように、次の観察領域D2のy方向の範囲を大きくすることが好ましい。ただし、搬送物判別処理による判別結果によって物体OBが気流を受けるか否かを事前に知ることができる場合には、当該判別結果に応じて上記予測移動態様C1や拡大度合Δhが決定されるようにしてもよい。すなわち、物体OBが気流を受けない場合には、初回の観察領域D1と同様のy方向の範囲で観察領域D2を設定でき、物体OBが気流を受ける場合には、観察領域D2のΔh(y方向の範囲)を初回の観察領域D1よりも大きく設定する。
その後、図7(d)に示すように、物体認識範囲B1aと図示しない予測移動態様(C1)とから、図示しない基準範囲(d2)が求められ、これに基づいて、次の画像A2における観察領域D2が設定される。図示例では、物体OBが搬送路上から側方へ移動を開始するので、この観察領域D2で物体認識情報が求められると、物体認識範囲B2aも移動していることとなる。
そして、図7(e)に示すように、前述と同様に、次の画像A3における観察領域D3が設定される。これ以降、図7(f)に示すように、次の画像A4における観察領域D4が設定され、図7(g)に示すように、次の画像A5における観察領域D5が設定される。このようにして、物体OBが搬送路上から斜め側方へ移動していく様子を、上記過程で得られた物体認識情報Bi、特に、物体認識範囲B1a~B5aの移動の様子、すなわち、前述の移動態様Ei(E1~E4)によって把握することができる。
図8は、搬送路上から物体OBを排除する物体排除処理部における物体OBの移動態様を示す説明図(a)~(d)である。この物体排除処理部は、図8(a)に示すように、搬送路121の搬送面に開口する噴気口OPSを備え、この噴気口OPSから気流を吹き付けることによって、画像計測処理と搬送物判別処理により不良品であることや不適姿勢であることが判定された物体OBを搬送路上から排除し、下流側へ搬送されていくことを防止するようになっている。前述の図7に示す場合と同様に、図8(b)~(d)のように、噴気口OPSから吹き付けられる気流によって物体OBが搬送路上から側方へ排除されていく過程が認識される。この場合、気流を受けた物体OBの側方への移動態様により、噴気口OPSからの気流の吹付タイミングの良否や吹付強度(圧力)の良否がわかるので、当該吹付タイミングや吹付強度(圧力)を上記移動態様に基づいて調整するようにしてもよい。例えば、図8に示す例では、物体OBは、その下流側の部分が本来の搬送位置よりも側方へずれる態様で、搬送方向Fに対して傾斜した姿勢となっているので、吹付タイミングがやや早い可能性があるから、吹付タイミングを僅かに遅くするように調整することが好ましい。この場合、傾斜が逆であれば、吹付タイミングを早くする。このように制御することで、気流を受けた物体OBの姿勢に応じて吹付タイミングを最適な範囲に保つことができる。
図9は、搬送路上の物体OBを気流によって反転させ、搬送姿勢を変更する姿勢反転処理部における物体OBの移動態様を示す説明図(a)~(d)である。この姿勢反転処理部は、図9(a)に示すように、搬送路121の搬送面に開口する噴気口OPRを備え、この噴気口OPRから気流を吹き付けることによって、画像計測処理と搬送物判別処理により不適姿勢であることが判定された物体OBを搬送路上で反転させ、異なる姿勢、好ましくは適正姿勢で下流側へ搬送されるようにしている。前述の図7に示す場合と同様に、図9(b)~(d)のように、噴気口OPRから吹き付けられる気流によって物体OBが搬送路上で反転し、隣接する別の搬送路上で反転後の物体OBが搬送されていく様子が認識される。
この場合、気流を受けた物体OBの姿勢変化の様子や上記別の搬送路122上での姿勢を確認することによって、反転のための気流の吹付タイミングの良否や吹付強度(圧力)の良否がわかる。この例では、各観察領域Diでの画像処理は、図示のように、物体OBの外観模様が判別できる態様で行われる。図示例の場合、搬送路121上で当初ハッチングしたマーク部分が図示下方の下流側に配置される姿勢であった物体OBが、気流によって反転し、搬送路122上に配置されたときに上記マーク部分が図示上方の下流側に配置される姿勢に変換される。このような外観模様の判別は、テンプレートマッチングなどによって実行することができる。
この例においても、噴気口OPRにおける気流の吹付タイミングや吹付強度(圧力)を上記移動態様に基づいて調整するようにしてもよい。例えば、図9に示す例では、物体OBがやや下流側が早く移動する姿勢となっているので、吹付タイミングがやや早い可能性があるから、吹付タイミングを僅かに遅くすることが好ましい。この場合、傾斜が逆であれば、吹付タイミングを早くする。このように制御することで、気流を受けた物体OBの姿勢に応じて吹付タイミングを最適な範囲に保つことができる。なお、上記別の搬送路122は、図示しない下流側の箇所において元の搬送路121と合流するように構成され、これによって、反転された物体OBが適正姿勢となって搬送路121上を移動していくようになっている。
なお、上記では気流の吹付タイミングの制御について説明したが、気流の圧力制御についても同様である。気流の圧力が大きすぎると、物体OBの飛翔速度や飛翔距離が増大するが、対象となる物体OBの前後に近接して搬送される他の物体OBをも排除したり姿勢を変えてしまったりというように影響を与え易くなる。このため、物体移動状況MSにより、排除や反転の必要な圧力を下回らないとともに、他の物体への影響を与える過剰な圧力に達しない範囲に制御することが好ましい。もちろん、姿勢反転処理部では、対象となる物体OBの姿勢を反転させるのに必要な最小限の圧力以上にするとともに、物体OBの姿勢を過剰に反転させてしまうことのない範囲に制御する必要もある。したがって、物体処理部では、物体排除処理部であっても姿勢反転処理部であっても、気流の圧力を適正な範囲に収める必要があり、そのために物体認識情報Biや物体移動状況MSなどを利用することができる。
<動作プログラムの構成>
次に、図10を参照して、本発明に係る各実施形態の全体の動作プログラムの流れについて説明する。図10は、上記検査処理ユニットDTUの演算処理装置MPUにより、動作プログラムに従って実行される搬送管理のための各種処理過程を示す概略フローチャートである。この動作プログラムを起動すると、まず、上記の画像撮影及び画像計測処理が開始されるとともに、コントローラCL11、CL12により搬送装置(パーツフィーダ11及びリニアフィーダ12)の駆動が開始される。そして、前述のデバッグ操作に応じたデバッグ設定がOFFであれば、撮影画像GPX又は画像エリアGPYに対して画像計測処理が実行され、搬送物判別処理の最終の判定結果がOK判定であれば、デバッグ操作が行われない限り、そのまま次の撮影画像GPX又は画像エリアGPYの画像計測処理が実施される。例えば、物体排除処理部では、常時は排除用噴気口OPSの気流が停止されているが、判定結果がNG(不良品)であれば、排除用噴気口OPSから気流が流れる。これにより、不良の物体OBを搬送路上から排除する。また、姿勢反転処理部では、常時は反転用噴気口OPRからの気流は停止されているが、判定結果がNG(不良品)であれば、反転用噴気口OPRから気流を噴出させて搬送路上で反転させる。なお、上記とは逆に、常時は気流を流しているが、判定結果がOK(良品)であれば、気流を停止するようにしてもよい。
このようにして、搬送路上で搬送物である物体OBが判別され、その判別結果に応じて処理されることにより、下流側へは良品のみが整列した状態で供給されていく。この場合にも、その後、デバッグ操作が行われない限り、そのまま次の撮影画像GPX又は画像エリアGPYの画像計測処理と搬送物判別処理が実施される。また、上記の画像計測処理や搬送物判別処理と並行して、観測領域Diの画像処理により物体OBに対する上記物体認識処理が行われ、物体OBの移動態様Eiが物体認識情報Biに基づいて認識される。このとき、上記物体認識処理の対象となる物体OBは、上述のように搬送路上から側方へ移動するもの(噴気口OP,OPS,OPRからの気流を受けるもの、NGと判定されたもの)のみであってもよいが、これに限らず、搬送路上でそのまま搬送方向Fに搬送されていくもの(OKと判定されたもの)を対象とするようにしてもよく、或いは、双方を対象とするようにしてもよい。例えば、搬送路上において搬送方向Fに沿って搬送されていくときの搬送挙動を認識するために、搬送路上の物体OBを追跡する搬送挙動検出処理が行われるようになっていてもよい。そして、この搬送挙動検出処理の検出結果により搬送態様を調整するために搬送装置の駆動の制御を行うようにしてもよい。この搬送駆動の制御は、例えば、搬送装置の加振機構の加振要素の駆動条件、例えば、圧電駆動体の周波数や電圧を制御し、適正な搬送態様となるように調整する。なお、上記搬送挙動検出処理は、上記物体認識処理とは無関係に、全く別の画像処理によって実行されても構わない。例えば、搬送路121上を搬送方向Fに移動していくときの物体OBの搬送方向Fとは直交する方向の位置の変動の大小に応じて、振動の周波数や振幅を制御することによって、物体OBが搬送路121上で無駄に暴れることを防止することができる。
上記の途中でデバッグ操作が行われ、デバッグ設定がONになると、上記ルーチン(運転モード)から抜け出して、搬送装置の駆動が停止され、画像計測処理や搬送物判別処理、物体認識処理、搬送挙動検出処理も停止される。そして、この状態において適宜の操作を行うと、過去の画像ファイルを選択可能な状態となる。このとき、選択表示される画像ファイルは、直前の運転モードにおいて記録していた複数の撮影画像GPX又は画像エリアGPYを含む画像ファイルである。これをそのまま選択して適宜の操作をすると、再実行モードに移行する。このモードでは、上述のようにすでに実行された画像計測処理、搬送物判別処理、物体認識処理や上記搬送挙動検出処理等の結果を記録した画像ファイルに基づいて、画像の表示や、各種処理や制御等を再実行することができる。すなわち、搬送装置の搬送物である物体OBの制御(排除や反転、物体認識)に不具合が生じた場合には、この不具合を解消するために、まず、過去の画像データに基づいて画像処理を再実行することによって、各処理や制御等の問題箇所を探る。当該問題箇所が判明すれば、それに応じて各処理や制御の設定内容(設定値)を変更、調整し、再び過去の画像データに対して画像計測処理等を再実行することで調整、改善作業の結果を確認することができる。その後、適宜の復帰操作を行うと、デバッグ設定がOFFに戻され、画像計測処理が再開されるとともに、搬送装置の駆動が再開される。
なお、以上説明した各実施形態において、カメラCM1,CM2が既定の撮影間隔で連続して撮影するとともに、搬送物の搬送速度Vsと撮影間隔Tsとの関係により搬送路を通過する全ての搬送物(物体OB)が常に含まれるように予め設定された搬送方向Fの範囲を有する計測エリア内の画像データに対して画像計測処理を施すようにすれば、全ての搬送物(物体OB)について、いずれかの撮影画像において計測エリア内において必ず検出することができるため、従来技術のように個々の搬送物の位置を検知するためのトリガ信号を生成する必要がなくなる。また、この画像に含まれる物体OBの画像データを処理することで搬送物判別処理、物体認識処理、搬送挙動検出処理に必要な情報を確実に抽出することができる。なお、本発明の物体搬送システムでは、上記のようなトリガレス撮影法を採用することなしに、通常のセンサ等による搬送物の検知タイミングに対応する撮影タイミングで画像を取得しても構わない。
本実施形態では、物体認識範囲Biaと予測移動態様Ciに対応する次の観察領域Di+1を設定し、この観察領域Di+1内での画像処理による物体認識処理によって物体OBを認識し、物体認識情報Bi+1を導出するようにしているので、処理対象となる画像データを限定しつつ、物体OBを確実に認識することができる。このため、処理の高速化を図ることができ、限られた時間で従来よりも高度な処理も実行可能になる。また、上記の観察領域の予測と画像処理との繰り返しによって、物体OBの複雑な移動態様や動作(物体移動状況MS)を容易に把握することが可能になる。
特に、上記処理過程によって搬送物の移動態様や動作を高速かつ確実に把握することができる。これにより、搬送システムの高速化だけでなく、搬送路上における物体OBの高密度化や、物体OBの整列の高精度化を図ることができる。
本実施形態では、次の観察領域Di+1を設定するに際し、観察領域Diで求めた物体認識情報Biと予測移動態様Ciから得た基準範囲di+1にさらにその周辺域を加えることにより、拡大した領域としていることから、物体OBが予測移動態様Ciとは異なる移動態様を示した場合でも、次の画像Ai+1からより確実に物体認識情報Bi+1を導出することができる。
なお、本発明の物体認識装置及び物体搬送システムは、上述の図示例にのみ限定されるものではなく、本発明の要旨を逸脱しない範囲内において種々変更を加え得ることは勿論である。例えば、本発明は、画像Aiのうちの限定された観察領域Di内で行われる画像処理によって物体認識情報Biを求めるものであり、物体OBの種類、画像Aiの種類や画質、画像処理そのものの種類や処理内容、物体認識情報Biの種類や内容などには何ら制限を受けない。また、観察領域や基準範囲などの各領域や範囲の形状は、図示例では矩形や隅丸長方形などとなっているが、任意であり、何ら制限されるものではない。