(58)【調査した分野】(Int.Cl.,DB名)
所定の移送方向に移送される被移送体の撮像画像を画像認識することにより前記被移送体の姿勢を判別する画像処理装置が備える演算装置に実行させる画像処理プログラムであって、
前記撮像画像中において前記被移送体の移送経路上の所定位置で区画された検知領域の検知領域画像を取り込むことと、
前記撮像画像中において前記検知領域の前記移送方向の上流側に接触する位置で区画された認識領域の認識領域画像を取り込むことと、
取り込んだ前記検知領域画像に基づいて前記所定位置に前記被移送体が存在するか検知することと、
前記所定位置での前記被移送体の存在を検知した場合に、取り込んだ前記認識領域画像に基づいて当該被移送体の姿勢を判別することと、
を実行することを特徴とする画像処理プログラム。
【図面の簡単な説明】
【0011】
【
図1】実施形態のパーツフィーダの外観平面及び制御構成を表した図である。
【
図2】カメラが撮像した移送経路の撮像画像の一例を示す図である。
【
図3】部品を移送経路から落下させて排除する撮像画像の一例を示す図である。
【
図4】実施形態で姿勢判別する対象の部品の正常姿勢を示す図である。
【
図5】実施形態で姿勢判別する対象の部品の上下反転姿勢を示す図である。
【
図6】部品が認識領域に到達した直後の状態を示す図である。
【
図7】部品が検知領域に到達する直前の状態を示す図である。
【
図8】部品が検知領域に到達して姿勢判別可能な状態を示す図である。
【
図9】連接移送状態にある下流側の部品が検知位置に存在している状態を示す図である。
【
図10】連接移送状態にある上流側の部品が検知位置に存在している状態を示す図である。
【
図11】画像処理装置が行う周期処理を模式的に示した図である。
【
図12】n回目の撮像時で移送方向長さの短い部品が検知領域に到達する直前の状態を示す図である。
【
図13】n+1回目の撮像時で移送方向長さの短い部品が検知領域に到達した状態を示す図である。
【
図14】下流側の部品の上流側端部の位置に合わせて再認識領域を区画設定する状態を示す図である。
【
図15】再認識領域で姿勢判別した後に認識領域を元の位置に戻した状態を示す図である。
【
図16】連接移送状態の2つの部品がともに認識領域に存在している状態を示す図である。
【
図17】連接移送状態の下流側の部品を姿勢判別するために再認識領域を区画設定した状態を示す図である。
【
図18】画像処理装置のCPUが実行する制御手順を示すフローチャートである。
【
図19】上下方向と表裏方向で姿勢の区別がある部品で、表裏方向、上下方向ともに正常な姿勢を示す正面図である。
【
図21】上下方向と表裏方向で姿勢の区別がある部品で、表裏方向、上下方向の少なくともいずれかで反転した姿勢を示す正面図である。
【
図22】上下方向と表裏方向で姿勢の区別がある部品に対する画像認識の姿勢判別手法を説明する図である。
【
図23】上下方向と表裏方向で姿勢の区別がある部品に対する画像認識の姿勢判別手法を説明する図である。
【
図24】移送方向で姿勢の区別がある部品で、正常な姿勢と反転した姿勢を示す正面図である。
【
図25】移送方向で姿勢の区別がある部品に対し、形状特徴部の比較パターンを用いた画像認識の姿勢判別手法を説明する図である。
【
図26】移送方向で姿勢の区別がある部品に対し、ともに正常な姿勢の連接移送状態で再認識領域を区画設定した状態を示す図である。
【
図27】移送方向で姿勢の区別がある部品に対し、ともに反転した姿勢の連接移送状態で再認識領域を区画設定した状態を示す図である。
【
図28】上下方向で姿勢の区別がある部品で、正常な姿勢と反転した姿勢を示す正面図である。
【
図29】上下方向で姿勢の区別がある部品に対し、形状特徴部の比較パターンを用いた画像認識の姿勢判別手法を説明する図である。
【
図30】上下方向で姿勢の区別がある部品に対し、ともに正常な姿勢の連接移送状態で再認識領域を区画設定した状態を示す図である。
【
図31】上下方向で姿勢の区別がある部品に対し、下流側が正常な姿勢で上流側が判定した姿勢の連接移送状態で再認識領域を区画設定した状態を示す図である。
【発明を実施するための形態】
【0012】
以下、一実施の形態について図面を参照しつつ説明する。なお、以下では、部品供給装置等の構成の説明の便宜上、上下左右等の方向を適宜使用するが、部品供給装置等の各構成の位置関係を限定するものではない。
【0013】
<パーツフィーダの概略構成>
図1は、本実施形態の部品供給装置であるパーツフィーダの外観平面及び制御構成を表している。この
図1において、パーツフィーダ1は、振動フィーダ2と、照明3と、カメラ4と、空気噴出ノズル5と、電磁弁6と、画像処理装置7と、画像表示装置8と、操作インタフェイス9とを有している。
【0014】
振動フィーダ2(移送手段に相当)は、その全体が平面視奥側に底部を有するいわゆるすり鉢形状(凹椀形状)の容器体であり、その外周側の内壁には螺旋状に配置された移送経路2aを備えている。この移送経路2aの内周端部は、当該振動フィーダ2の中央底部に位置する貯留部2bに連通しており、また移送経路2aの外周端部は、直線状に延びて排出口2cを形成している。そして、上記貯留部2bには供給対象の全て同一形状にある多数の部品100が貯留され、特に図示しない加振機構により振動フィーダ2全体に例えば遠心振動等の振動を与えることにより、貯留部2b内の部品100が移送経路2aに入り込む。移送経路2aは、その幅寸法が部品100の所定方向の幅寸法と略等しいレール状に形成されているため、当該移送経路2a上にはその長手方向に沿って多数の部品100が一列に整列するようにはまり込む。さらに、移送経路2aの路面上には所定パターンの細かい凹凸が形成されており、移送経路2a上の各部品100は上記振動によってそれら凹凸から推進力が与えられて当該移送経路2aに沿う方向(螺旋の外周側へ向かう経路方向;以下、移送方向という)に移送される。
【0015】
照明3は、上記移送経路2aの所定位置に向けて投光する照明器具である。
【0016】
カメラ4(撮像手段に相当)は、上記照明3の投光箇所を撮像してその撮像画像のデータを後述の画像処理装置7に送信する機能を有する。なお、このカメラ4は、投光箇所の移送経路2aに対して同じ高さでかつ上記部品100の移送方向と直交する撮像方向で撮像する。
【0017】
空気噴出ノズル5(排除手段に相当)は、上記投光箇所より少しだけ移送方向下流側に配置されており、特に図示しないエアーポンプから供給される圧縮空気を噴出する機能を有する。
【0018】
電磁弁6は、後述の画像処理装置7からの指令に基づき、特に図示しないエアーポンプから上記空気噴出ノズル5への圧縮空気の供給と制止を制御する機能を有する。
【0019】
画像処理装置7は、特に図示しないCPU及びメモリを備えたコンピュータからなり、上記カメラ4から取得した撮像画像を画像認識することで移送経路2a上に移送される各部品100の姿勢を判別する機能を有する。
【0020】
画像表示装置8は、上記画像処理装置7を介してカメラ4の撮像画像や、各種指令及びパラメータの設定を表示する機能を有する。
【0021】
操作インタフェイス9は、キーボードやマウス等のポインティングデバイスからなり、操作者からの各種指令や設定の入力を受け付ける機能を有する。
【0022】
以上の構成を備えるパーツフィーダ1は、振動フィーダ2の中央の貯留部2bにそれぞれランダムな姿勢で貯留された同一形状の多数の部品100を、いずれも同じ所定の姿勢で一列に整列させて排出口2cより供給する装置である。しかし、上述したように振動フィーダ2の移送経路2aは各部品100の所定方向幅と同じ幅寸法の単純なレール構造でしかなく、またその移送経路2aへの部品100の嵌め込みは振動の勢いだけで行うため、各部品100は上記所定の姿勢とは異なる多様な姿勢で移送経路2aにはまり込み、移送される場合が多い。
【0023】
これに対し、画像処理装置7がカメラ4の撮像画像を画像認識して移送経路2a上の各部品100の姿勢を判別し(後述の
図2参照)、適切な姿勢にない部品100に対しては空気噴出ノズル5を介して圧縮空気を当てるよう電磁弁6を制御する(後述の
図3参照)。圧縮空気が当てられた部品100は移送経路2aから排除され、振動フィーダ2中央の貯留部2bへ戻される。これを繰り返すことにより、最終的に排出口2cから供給される部品100は、全て同じ所定の姿勢で一列に整列されて供給される。
【0024】
<本実施形態の特徴>
しかし、上記構成の振動フィーダ2では、貯留部2bに貯留されている各部品100を移送経路2aに順次乗せるタイミングや、移送経路2a上における各部品100の移送速度までは正確に制御できないため、移送経路2a上においては各部品100がランダムな移送間隔でそれぞれ不確定な速度で移送されてしまう。このため、移送方向に前後に並ぶ2つの部品100どうしが接触したまま移送される連接移送状態となる場合があり、この場合にはそれぞれに対して確実に姿勢判別することが困難であった。また、各部品100の移送方向長さが短い場合でも、それぞれに対して確実に姿勢判別することが困難であった。本実施形態のパーツフィーダ1では、これらの事情に対処するよう画像処理装置7が撮像画像を画像認識することにより、各部品100のそれぞれに対し個別に姿勢を判別できるようにする。以下、そのための画像認識の手法について順に説明する。
【0025】
<画像認識の基本手法>
図2に、上記カメラ4が撮像した移送経路2aの撮像画像の一例を示す。この撮像画像11は、図中の右側から左側へ向かう方向を移送方向とする移送経路2aの側方から撮像した画像であり、横方向にX座標を、縦方向にY座標をそれぞれ設定したX−Y座標が設定されている。
【0026】
画像処理装置7は、この撮像画像11中のうち移送経路2aにおける所定の検知位置(所定位置に相当)に検知領域12を区画してその部分画像を検知領域画像として取り込む。この検知領域画像は、上記検知領域12に部品100が存在するか否か、つまり部品100が上記検知位置に到達したか否かを検知するためのものである。そのため、検知領域12は、部品100の有無だけを判別できる程度にその移送方向の長さLk(X方向の長さ)を十分短く設定する。逆に、当該検知領域画像中に部品100の下流側端部が位置してその有無の判別処理が複雑になる可能性を低くするためにも、検知領域12の移送方向長さを長く設定しない。
【0027】
また、画像処理装置7は、撮像画像11中のうち上記検知領域12の移送方向上流側に隣接する位置に認識領域13を区画してその部分画像を認識領域画像として取り込む。この認識領域画像は、上記認識領域13に存在する部品100の姿勢を判別するためのものである。そのため、認識領域13は、部品100の姿勢を判別できる程度にその移送方向長さLnを設定する。この点については後に詳述する。
【0028】
なお、カメラ4が撮像する撮像画像11は画素単位で取り扱うことのできる画像データであり、上記の検知領域画像及び認識領域画像の取り込みは画像処理装置7のソフトウェア処理によって行う。また、上記の検知領域画像及び認識領域画像のいずれも、移送経路2a上に移送される部品100の高さ全体を包括する程度の高さHy(Y方向の長さ、位置)に設定すればよい。そして、画像処理装置7は、検知領域画像に基づいて上記検知位置への部品100の到達を検知した際に、上記認識領域画像に基づいて当該部品100の姿勢を判別する。このように本実施形態が備える画像処理装置7は、カメラ4が撮像した撮像画像11全体ではなく、その一部から取り込んだ部分画像に対して画像認識を行うため、部品100の姿勢判別を短い処理時間で行える。そして、判別した部品100の姿勢が所定の正しい姿勢にない場合には、
図3に示すように当該部品100が空気噴出ノズル5の前方に位置した際に電磁弁6を開放して圧縮空気を噴出させ、部品100を移送経路2aから落下させて排除する。
【0029】
ここで、本実施形態の供給対象である部品100の形状例を
図4、
図5に示す。この部品100は、直方体形状の本体において、その長手方向(移送方向)全体に渡る均等な配置で9つの丸穴101がいずれも当該部品100の厚み方向(図中における紙面直交方向)で貫通するよう設けられている。また、全ての丸穴101は一律に同じ高さに配置され、その高さ位置が当該部品100全体の重心位置102に対して高さ方向(Y方向)にオフセットしている。このように本実施形態における部品100の形状は、部品100の厚み方向(図中における紙面直交方向)においては対称であるためカメラ4の撮像方向に対して表裏の区別がなく、各丸穴101の配置高さの違いによって正常姿勢と反転姿勢の違いが生じるだけである。本実施形態の例では、
図4に示すように各丸穴101が重心位置102より高い配置にある姿勢を正常姿勢とし、
図5に示すように各丸穴101が重心位置102より低い配置にある姿勢を反転姿勢とする。
【0030】
上記認識領域画像に基づく姿勢判別では、各丸穴101の平均高さ位置と、部品100全体の重心位置102の高さ位置とを比較することで正常姿勢と反転姿勢の2種類の姿勢判別だけを行うものとする。この姿勢判別のためには、丸穴101を1つ画像認識すれば基本的には足りるが、判別精度を確保するためには丸穴101を少なくとも4つ以上画像認識すると良い。このときは、認識領域13の移送方向長さLnを丸穴101の4ピッチ分の長さL4以上に設定し、また認識領域画像内には丸穴101の4ピッチ分の長さL4以上で部品100が存在すると良い。なお、上記の部品100が各請求項記載の被移送体に相当し、丸穴101が各請求項記載の形状特徴部に相当する。
【0031】
以上のような領域区画と部品構成とした本実施形態では、
図6〜
図8に示すような行程で部品100の到達検知と姿勢判別を行う。まず、振動フィーダ2での移送によって、
図6に示すように部品100の下流側端部が認識領域13に到達した直後では、部品100はまだ検知領域画像に基づく検知位置への到達が検知されていないため姿勢判別は行われない。部品100の移送が進んで
図7に示すように下流側端部が検知領域12に到達する直前でも、まだ同様に姿勢判別は行われない。そして、
図8に示すように部品100が検知領域12に到達した場合には、当該部品100が画像認識装置によってその検知位置への到達が検知され、それを契機に姿勢判別が行われる。この際には、検知領域12の移送方向上流側に隣接している認識領域13において当該部品100の少なくとも一部がほぼ確実に存在しているため、同じ撮像画像11から取り込んだ認識領域画像に基づいて当該部品100の姿勢判別を行える。
【0032】
<連接移送状態に対する周期的処理>
しかし、上述した理由から、
図9、
図10に示すように移送方向に前後に並ぶ2つの部品100どうしが接触したまま移送される連接移送状態となる場合がある。この場合、上述した検知領域画像での部品100の検知では、先に検知した下流側の部品100と区別して上流側の部品100を単独で検知することが難しく、それぞれ個別に姿勢判別することが困難となる。つまり、
図9に示すように下流側の部品100だけが検知位置に存在している状態から、
図10に示すように上流側の部品100が検知位置に到達したタイミングの検知が困難である。これに対し本実施形態では、連接移送状態の各部品100に対して個別に姿勢を判別できるよう、画像処理装置7が最短の周期でカメラ4に逐次撮像させ、それら撮像画像11ごとに部品100の姿勢判別を行うようにする。
【0033】
本実施形態の画像処理装置7が行うこのような周期処理を
図11に模式的に示す。図示するように、画像処理装置7は基本的に検知処理を繰り返し行い、その検知処理で部品100の検知位置における存在(到達)を検知した場合に判別処理を行う。なお検知処理内の主な工程としては、最初にカメラ4から撮像画像11を取得する撮像工程を行い、次にその撮像画像11内から検知領域画像を取り込む工程を行い、次にその検知領域画像に基づいて部品100の存在(検知位置への到達)を検知する工程を行う。このように検知処理は、最低限の工程だけを行う最短の処理周期Tで繰り返し行う。また判別処理内の主な工程としては、最初に認識領域画像を取り込む工程を行い、次にその認識領域画像に共付いて部品100の姿勢を判別する工程を行う。なお、認識領域画像の取り込みは、当該判別処理の直前の検知処理において撮像された撮像画像11から取り込む。これにより、撮像工程を省略して判別処理の所要時間を短縮化できるとともに、直前の検知時からタイムラグの少ないより正確な姿勢判別を可能にする。
【0034】
以上のように検知処理を最短の処理周期Tで繰り返し行うことにより、複数の部品100が連接移送状態にある場合でも、各部品100のいずれに対しても姿勢判別を行うことができる。なお、同一の部品100に対して姿勢判別を複数回行う可能性もあるが、結局は正常姿勢にある部品100だけが通過し、反転姿勢にある部品100がすぐに排除されるだけであるため問題ない。
【0035】
<非同期移送に対する再認識処理>
しかし上述したように最短周期で検知処理を繰り返した場合でも、そのうちカメラ4での撮像工程と画像処理装置7での画像認識工程にはそれぞれ時間を要するため処理周期Tがある程度長くなってしまう。このため、上述したように各部品100がこの処理周期Tと非同期(位相不一致)かつ不定間隔で移送され、また特に各部品100の移送方向長さが比較的短い場合には、それぞれに対して確実に姿勢判別することが困難な場合がある。
【0036】
例えば
図12、
図13に示すように、全体の移送方向長さが丸穴101の5ピッチ分の長さしかない部品100′の場合を考える。
図12に示すn回目の検知処理時ではカメラ4が撮像した際に部品100′の下流側端部が検知領域12の上流側に近接している。この場合、それから検知処理の処理周期Tが経過した後の次のn+1回目の検知処理時には、
図13に示すように認識領域画像中における部品100′の移送方向長さが姿勢判別に要する丸穴101の4ピッチ分の長さより短くなる可能性が高い。このように認識領域13中に丸穴101の4ピッチ分に満たない移送方向長さで部品100′の画像を認識しても、上述したように姿勢判別の精度が得られない。
【0037】
これに対して本実施形態では、認識領域画像を画像認識する判別処理において、まず認識領域画像中の移送方向下流側に位置する部品100′の移送方向上流側の端部の画像認識を優先的に行う。そして、次に、認識領域画像中において送方向下流側に位置する部品100′の移送方向長さが丸穴101の4ピッチ分の判別基準長L4より短いと判定した場合には、現行の認識領域13よりも移送方向下流側にずれた位置に区画した再認識領域14で認識領域画像をあらたに取り込む。
【0038】
例えば、
図14に示すように、初期位置の認識領域画像中における移送方向下流側の部品100′の移送方向上流側端部の位置を検出する。この上流側端部位置の近傍に認識領域13の移送方向上流側の端部が位置するようずらすことであらたに再認識領域14を区画設定し、この内部の部分画像をあらたな認識領域画像として取り込む。認識領域13の移送方向長さLnが姿勢判別の基準となる判別基準長L4以上(丸穴101の4ピッチ分以上)に設定されていれば、再認識領域14中には必ず部品100′が上記判別基準長L4以上の長さで存在する。これにより、姿勢判別を高い精度で行える。
【0039】
なお、再認識領域14の区画設定及びその中の認識領域画像の取り込みは、直前の検知処理で撮像された撮像画像11から取り込んでもよく、この場合にはそれだけ判別処理を迅速に行うことができる。また、
図15に示すように、移送方向に2つの部品100′が近接した状態で移送されている場合でも、再認識領域14の認識領域画像で姿勢判別した時点では前回の部品100′が必ず検知領域12を抜けているので、認識領域13を元の位置に戻すことで後方の部品100′の検知処理、判別処理には影響を与えない。また、
図16、
図17に示すように移送方向に並ぶ2つの部品100′が連接移送状態である場合でも、各部品100′に対して適切な再認識領域14を区画設定できるため、各部品100′の検知処理、判別処理を正常に行うことができる。
【0040】
<制御フロー>
以上のような機能を実現するために、画像処理装置7が備えるCPU(演算装置に相当;特に図示せず)が実行する制御手順を、
図18により順を追って説明する。
図18において、このフローに示す処理は、パーツフィーダ1の作動を開始した際に実行を開始する。
【0041】
まずステップS105で、画像処理装置7のCPUは、カメラ4に撮像させた撮像画像11を取得する。
【0042】
次にステップS110へ移り、画像処理装置7のCPUは、上記ステップS105で取得した撮像画像11から検知領域画像を取り込む。
【0043】
次にステップS115へ移り、画像処理装置7のCPUは、上記ステップS110で取り込んだ検知領域画像内で部品100の有無を画像認識する。
【0044】
次にステップS120へ移り、画像処理装置7のCPUは、上記ステップS115での画像認識により、検知領域画像中に部品100が存在していると認識したか否かを判定する。検知領域画像中に部品100が存在していない場合、判定は満たされず、ステップS105へ戻り同様の手順を繰り返す。
【0045】
一方、検知領域画像中に部品100が存在している場合、判定が満たされ、ステップS125へ移る。
【0046】
ステップS125では、画像処理装置7のCPUは、上記ステップS105で取得した撮像画像11から認識領域画像を取り込む。
【0047】
次にステップS130へ移り、画像処理装置7のCPUは、上記ステップS125で取り込んだ認識領域画像内で部品100の上流側端部を画像認識する。
【0048】
次にステップS135へ移り、画像処理装置7のCPUは、認識領域画像内での部品長を算出する。
【0049】
次にステップS140へ移り、画像処理装置7のCPUは、上記ステップS135で算出した部品長が判別基準長(この例の丸穴101の4ピッチ分)以上にあるか否かを判定する。認識領域画像内での部品長が判別基準長未満である場合、判定は満たされず、ステップS145へ移る。
【0050】
ステップS145では、画像処理装置7のCPUは、現行の認識領域13より移送方向下流側にずらした再認識領域14を区画して設定する。このずらし量は、例えば上記ステップS130で画像認識した上流側端部の位置の近傍に再認識領域14の上流側の端部が位置するようずらせばよい(上記
図14、
図17参照)。
【0051】
次にステップS150へ移り、画像処理装置7のCPUは、上記ステップS145で設定した再認識領域14の部分画像を認識領域画像として取り込む。そして、ステップS155へ移る。
【0052】
また一方、上記ステップS140の判定において、認識領域画像内での部品長が判別基準長以上である場合、判定が満たされ、ステップS155へ移る。
【0053】
ステップS155では、画像処理装置7のCPUは、認識領域画像内で部品100の姿勢を画像認識により判別する(上記
図4、
図5参照)。
【0054】
次にステップS160へ移り、画像処理装置7のCPUは、上記ステップS155での姿勢判別で部品100の姿勢が正常であったか否かを判定する。姿勢判別で部品100の姿勢が正常でない(反転姿勢である)と判別された場合には、判定は満たされず、ステップS165へ移る。
【0055】
ステップS165では、画像処理装置7のCPUは、適宜のタイミングで電磁弁6を開放し、空気噴出ノズル5から圧縮空気を噴出させて姿勢判別した部品100を移送経路2aから排除する(上記
図3参照)。そして、ステップS170へ移る。
【0056】
また一方、上記ステップS160の判定において、姿勢判別で部品100の姿勢が正常であると判別された場合には、判定が満たされ、ステップS170へ移る。
【0057】
ステップS170では、画像処理装置7のCPUは、操作インタフェイス9を介して操作者からパーツフィーダ1の作動を終了させる操作が入力されたか否かを判定する。終了操作が入力されていない場合、判定は満たされず、上記ステップS105へ戻り同様の手順を繰り返す。一方、終了操作が入力された場合、判定が満たされ、このフローを終了する。
【0058】
以上において、ステップS110の手順が各請求項記載の検知画像取込手段に相当し、ステップS125、S145、S150の手順が各請求項記載の認識画像取込手段に相当し、ステップS115の手順が各請求項記載の検知手段に相当し、ステップS130、S135、S155の手順が各請求項記載の判別手段に相当する。
【0059】
<本実施形態の効果>
以上説明したように、本実施形態のパーツフィーダ1によれば、画像処理装置7が、ステップS115の手順で撮像画像11全体を認識するのではなく、その一部から取り込んだ検知画像に基づいて検知位置における部品100の到達を短い処理時間で検知できる。このため、ステップS105の撮像工程とステップS110の検知領域画像取込工程とステップS115の検知工程を繰り返す検知処理の処理周期Tを十分短くすることができる(上記
図11参照)。これにより、この処理周期Tと非同期(位相不一致)かつ不定間隔で移送される各部品100の移送方向長さが比較的短い場合であっても、検知位置における各部品100の到達をほぼ確実に検知できる。そしてこの場合には、フォトセンサ等の他のセンサを別途設けなくてもカメラ4等の撮像手段だけを用いた簡易な構成で、部品100の検知位置への到達を検知できる。
【0060】
そして、検知領域12の移送方向上流側に認識領域13が隣接しているため、(処理周期Tの短い)検知処理が検知位置における部品100の到達を検知した時点では、当該部品100の少なくとも一部が上記認識領域画像にも存在している。従って、ステップS130、S135、S155の手順でこの認識領域画像に基づいて、各部品100のそれぞれに対し個別に姿勢を判別できる。またこの判別処理は、上記検知処理により検知位置における部品100の到達を検知した場合にだけ行うことで、上述した検知処理の処理周期Tを十分短く維持することができ、検知位置への各部品100の到達をほぼ確実に検知できる。
【0061】
以上の結果、本実施形態の画像処理装置7によれば、移送方向長さの短い複数の部品100が非同期かつ不定間隔で移送される場合でも、各部品100のそれぞれに対し個別に姿勢を判別できる。
【0062】
また、本実施形態では特に、判別処理が、直前の検知処理に用いたものと同一の撮像画像11から認識領域画像を取り込むことで、あらためて撮像しなおす時間を省略して処理周期Tを短縮でき、かつ部品100の少なくとも一部が確実に存在している認識領域画像を取得してその姿勢を判別できる。
【0063】
また、本実施形態では特に、判別処理において、認識領域画像中における移送方向下流側に位置する部品100の移送方向上流側の端部を画像認識する(ステップS130)。これにより、移送方向で2つの部品100が連接して移送している状態でも、それらの境界(下流側の部品100の上流側端部)を認識して、下流側の部品100の姿勢だけを個別に判別できる。
【0064】
また、本実施形態では特に、判別処理において、認識領域画像中における移送方向下流側に位置する部品100の移送方向長さが所定長より短いと判定した場合には、認識領域13よりも移送方向の下流側にずれた位置で区画した再認識領域14の認識領域画像をあらたに取り込む。これにより、認識領域画像中における部品100の移送方向長さをさらに長く存在させることができ、判別処理における部品100の姿勢判別を確実に行うことができる。
【0065】
また、本実施形態では特に、上記所定長は、判別処理で部品100の姿勢の判別の基準となる判別基準長であり、判別処理では、認識領域画像中における移送方向の下流側に位置する部品100の移送方向長さが判別基準長以上となる位置で再認識領域14を区画する。これにより、認識領域画像中における部品100の移送方向長さを判別基準長以上に存在させることができ、判別処理における部品100の姿勢判別を確実に行うことができる。
【0066】
また、本実施形態では特に、判別処理において、部品100が備える丸穴101を形状特徴部として画像認識し、当該形状特徴部の有無及び位置に基づいて当該部品100の移送方向の姿勢、上下方向の姿勢、及び表裏の姿勢を判別し、上記判別基準長は、部品100において丸穴101を所定数(この例の4つ)備え得る領域長さである。これにより、判別処理における部品100の姿勢判別をより確実に行うことができる。
【0067】
<他の部品形状への適用例>
上記実施形態のパーツフィーダ1は、他の多様な形状の部品に対しても適用可能である。
【0068】
<1:上下方向と表裏方向で姿勢の区別がある場合>
例えば、正面図である
図19、矢視XX−XXの断面図である
図20に示すような形状の部品200に対しても上記実施形態のパーツフィーダ1は適用可能である。この部品200は、上記実施形態で用いた部品100(
図4、
図5参照)に、さらにカメラ撮像方向に対して表裏の一方側の上方縁部だけにエンボス状の切り欠き202を形成している。このような形状の部品200では、
図19に示す表裏方向、上下方向ともに正常な姿勢に対し、
図21中左側に示すように表裏方向で反転(切り欠き202が手前側に露出)し上下方向で正常な姿勢や、
図21中中央に示すように表裏方向で正常で上下方向で反転した姿勢や、
図21中右側に示すように表裏方向、上下方向ともに反転した姿勢、の4つの姿勢を取り得る。
【0069】
このような形状の部品200に対しては、判別処理における画像認識で各丸穴201とそれらに最も近い縁部との間の離間距離を計測すればよい。
図22に示すように各離間距離が一律に同じであれば、当該部品200は表裏方向で正常であると判別できる。また、
図23に示すように切り欠き202に近い丸穴201だけ離間距離が短く計測された場合(つまり離間距離に差異やばらつきがある場合)には、当該部品200は表裏方向で反転していると判別できる。なお、上下方向の姿勢については、上側縁部と下側縁部でそれぞれ丸穴201との離間距離を計測して比較してもよいし、または上記実施形態と同様に当該部品200全体の重心位置(図示省略)と各丸穴201との高さ位置の比較により判別してもよい。
【0070】
<2:移送方向で姿勢の区別がある場合>
また、
図24に示すように、移送方向で姿勢の区別がある形状の部品300に対しても上記実施形態のパーツフィーダ1は適用可能である。この部品300は、大径長部301と小径短部302のそれぞれの中心軸を一致させた配置で移送方向に並べて一体に結合した形状に形成されている。このような形状の部品300では、
図24中左側に示すように小径短部302を下流側に位置させた移送方向に正常な姿勢や、
図24中右側に示すように小径短部302を上流側に位置させた移送方向に反転した姿勢、の2つの姿勢を取り得る。
【0071】
このような形状の部品300に対しては、判別処理における画像認識で、最初に形状特徴部に一致する位置を検出する。
図25に示す例では、大径長部301の下流側端部の上方角部を形状特徴部としており、それに対応する比較パターン303として略四角形の小領域のうち上流下方側だけに部品300の一部が存在するパターンを用いる。認識領域画像中においてこの比較パターン303の形状特徴部に一致する箇所の移送方向位置が、大径長部301の下流側端部の位置に相当する。なお、小径短部302の下流側端部を検出することがないよう、上記比較パターン303を走査して比較する範囲の高さを限定する。そして、検出した大径長部301の下流側端部を挟んだ移送方向前後の2カ所で部品300のY方向存在長をそれぞれ検出し、比較することで当該部品300の移送方向姿勢を判別できる。特に、大径長部301の下流側端部より移送方向下流側に小径短部302が存在しているか否かで移送方向姿勢を判別できる。
【0072】
部品300の移送方向姿勢が正常である場合には、
図25に示すように形状特徴部の比較パターン303が一致する位置は認識領域13中の下流側に限定される。したがって、比較パターン303を走査して比較する移送方向範囲を認識領域13中の下流側に限定することで、
図26に示すように部品300の形状特徴部が認識領域13を通過した後でも正しく再認識領域14を設定して姿勢判別できる。この場合、図示するように2つの部品300が連接移送状態であっても、上流側の部品300の形状特徴部を検出せずに下流側の部品300だけ個別に姿勢判別できる。また、
図27に示すように連接移送状態の2つの部品300がともに移送方向反転姿勢にある場合でも、下流側から順に各部品300の移送方向姿勢判別を確実に行うことができる。
【0073】
<3:上下方向で姿勢の区別がある場合>
また、
図28に示すように、上下方向で姿勢の区別がある形状の部品400に対しても上記実施形態のパーツフィーダ1は適用可能である。この部品400は、大径長部401と大径短部402の間に小径部403が挟まれ、それぞれの中心軸を一致させた配置で上下方向に並べて一体に結合した形状に形成されている。このような形状の部品400では、
図28中左側に示すように大径長部401を下方側に位置させた上下方向に正常な姿勢や、
図28中右側に示すように大径短部401を下方側に位置させた上下方向に反転した姿勢、の2つの姿勢を取り得る。
【0074】
このような形状の部品400に対しても、判別処理における画像認識で、形状特徴部に一致する箇所を検出する。
図29に示す例では、大径短部402の上下方向全体と小径部403の下流側端部の上方角部を含めた部分を形状特徴部としており、それに対応する比較パターン404として略四角形の小領域のうち中央高さ位置で移送方向一杯に部品400の一部(大径短部402の一部)が存在するとともに、上流下方側にも部品400の一部(小径部403の一部)が存在するパターンを用いる。この比較パターン404は、部品400全体が上下方向に正常な姿勢にないと検出し得ない。したがって、比較パターン404と一致する形状特徴部が検出できれば当該部品400が上下方向に正常な姿勢にあると判別でき、検出できなければ当該部品400が上下方向に反転した姿勢にあると判別できる。
【0075】
部品400の上下方向姿勢が正常である場合には、
図29に示すように形状特徴部の比較パターン404が一致する位置は認識領域13中の下流側に限定される。したがって、比較パターン404を走査して比較する移送方向範囲を認識領域13中の下流側に限定することで、
図30に示すように部品400の形状特徴部が認識領域13を通過した後でも正しく再認識領域14を設定して姿勢判別できる。この場合、図示するように2つの部品400が連接移送状態であっても、上流側の部品400の形状特徴部を検出せずに下流側の部品400だけ個別に姿勢判別できる。また、
図31に示すように連接移送状態の2つの部品400のいずれか一方が上下方向反転姿勢にある場合でも、下流側から順に各部品400の上下方向姿勢判別を確実に行うことができる。
【0076】
<ユーザインタフェイス及び設定項目>
上記実施形態の機能を実現するために用意すべきユーザインタフェイス及び設定項目を以下に挙げる。
【0077】
1つ目として、部品移送方向の設定項目がある。これはカメラ視野における部品100〜400の移送方向を設定するための項目であり、これによって撮像画像11中における検知領域12と認識領域13の配置、及び再認識領域14のずれ方向が決まる。
【0078】
2つ目として、再認識領域ずれ量の設定項目がある。これは部品100〜400の検知位置への到達を検知していながら認識領域画像で当該部品100〜400の姿勢判別ができない場合に、最初の認識領域13から移送方向下流側にどれだけのずれ量で再認識領域14を区画するかの設定項目である。この設定項目では、判別対称の部品100〜400の形状や移送方向長さ、形状特徴部の配置などに応じて適切な値で設定する。設定値の数値単位は画素単位または実寸が基本となるが、部品特有の単位(例えば丸穴などの形状特徴部の数)で設定してもよい。
【0079】
3つ目として、寸法計測メニューのユーザインタフェイスがある。これは部品100〜400の各方向の寸法を画素単位で把握するための操作メニューであり、再認識領域ずれ量を画素単位または部品特有の単位で設定する場合に操作する。
【0080】
4つ目として、画素サイズ較正メニューのユーザインタフェイスがある。これは、画素と実寸のサイズ関係を求めるための操作メニューであり、再認識領域ずれ量を実寸で設定する場合に操作する。
【0081】
5つ目として、ウィンドウ枠線描画のユーザインタフェイスがある。これは、カメラ4の撮像画像11を画像表示装置8に表示させる際に、検知領域12及び認識領域13それぞれに相当する区画範囲のウィンドウ枠線を描画させるための操作メニューである。パーツフィーダ1の作動中に検知処理及び判別処理が適切なタイミングで実行されているかを操作者が目視で確認するためにも、各領域にウィンドウ枠線を描画する。
【0082】
操作者は、画像表示装置8で部品100〜400の移送と検知処理、判別処理の行程を確認しつつ、操作インタフェイス9を介して上記のユーザインタフェイスの操作及び設定項目の設定入力を行うことで、多様な形状の部品100〜400に対しても適切な姿勢判別を行わせることができる。
【0083】
なお、上記実施形態では、部品100〜400の移送速度及び移送間隔が不確定な振動フィーダ2を用いたパーツフィーダ1での画像認識による姿勢判別手法を説明したが、これに限られない。他にも、ベルトコンベアなどを用いて移送速度または移送間隔が安定した部品供給装置に対しても。上述した画像認識による姿勢判別手法を適用して同様の効果を得ることができる。
【0084】
なお、以上の説明における「等しい」とは、厳密な意味ではない。すなわち、「等しい」とは、設計上、製造上の公差、誤差が許容され、「実質的に等しい」という意味である。
【0085】
なお、以上の説明における「垂直、直交」とは、厳密な意味ではない。すなわち、「垂直、直交」とは、設計上、製造上の公差、誤差が許容され、「実質的に垂直、直交」という意味である。
【0086】
なお、以上の説明における「平行」とは、厳密な意味ではない。すなわち、「平行」とは、設計上、製造上の公差、誤差が許容され、「実質的に平行」という意味である。
【0087】
また、以上既に述べた以外にも、上記実施形態や各変形例による手法を適宜組み合わせて利用しても良い。
【0088】
その他、一々例示はしないが、上記実施形態や各変形例は、その趣旨を逸脱しない範囲内において、種々の変更が加えられて実施されるものである。