JP3543442B2 - 物品の干渉検出方法 - Google Patents
物品の干渉検出方法 Download PDFInfo
- Publication number
- JP3543442B2 JP3543442B2 JP24810895A JP24810895A JP3543442B2 JP 3543442 B2 JP3543442 B2 JP 3543442B2 JP 24810895 A JP24810895 A JP 24810895A JP 24810895 A JP24810895 A JP 24810895A JP 3543442 B2 JP3543442 B2 JP 3543442B2
- Authority
- JP
- Japan
- Prior art keywords
- component
- interference
- angle
- interference detection
- detection area
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired - Fee Related
Links
Images
Landscapes
- Image Analysis (AREA)
- Length Measuring Devices By Optical Means (AREA)
Description
【発明の属する技術分野】
本発明は、主として生産ラインにおいてロボットでピッキングしようとする部品と他部材との干渉の有無を検出することにより、他部材との干渉が生じていない部品をピッキングの可能な部品として検出する物品の干渉検出方法に関するものである。
【0002】
【従来の技術】
一般に、生産ラインにおいてロボットを用いて部品をピッキングする際に、ピッキングしようとする部品が他部材(他の部品や装置)と干渉(近接、接触、重複)していると、その部品をロボットでピッキングすることができない場合があり、その部品をピッキングしようとした処理に要した時間が無駄になる。また、部品をピッキングすることができたとしても、干渉していた部材が部品のピッキングに伴って移動する(たとえば、重なっていた部品が落ちたり、近接ないし接触していた部品がロボットの移動で押されたりする)ことにより、他の部品の位置が変化することがある。ここで、ロボットでのピッキングの際には処理効率を向上させるために、通常はピッキングしようとする部品の位置を一度に複数個ずつ計測しているものであるから、ピッキングの際に他の部品の位置が変化すると、位置が変化した部品はピッキングすることができなくなる。
【0003】
このように、部品の干渉があるとピッキングの際に作業時間が増加したり、作業ができなくなるなどの不都合が生じるから、部品のピッキングの際には部品の干渉を検出することが要求される。
物品の干渉を検出する技術としては、着目する物品をTVカメラのような画像入力装置によって撮像し、濃淡を2値化することによって着目する物品の画像内での面積を求め、この面積が物品の既知の面積に基づいて設定した閾値を越えるときには他部材との干渉があると判断するものが知られている。
【0004】
【発明が解決しようとする課題】
上記技術を採用すれば、着目する物品と他部材とが接触しているような場合には干渉を検出することができるが、1つの物品の上に他の物品が載っているような場合や、物品同士が離れて位置しているがロボットには干渉する程度に近接しているような場合には干渉として検出することができない。
【0005】
本発明は上記事由に鑑みて為されたものであり、その目的は、接触、近接、重複のいずれの状態でも干渉として検出することが可能な物品の干渉検出方法を提供することにある。
【0006】
【課題を解決するための手段】
請求項1の発明では、物品の外観を非接触で計測し、物品の既知の形状との照合により物品の位置および角度を求めた後、物品の位置および角度に基づいて干渉検出領域を設定し、干渉検出領域において検出された他部材について、干渉検出領域外の面積が所定値を越えるときに干渉があると判断することを特徴とする。
この方法では、物品の位置および角度に応じて干渉検出領域を設定し、干渉検出領域において検出された他部材について干渉検出領域の外側の面積を検出するから、ごみ等の異物程度では干渉とみなさないようにすることができる。つまり、物品をロボットでピッキングする場合にはロボットの稼働率を高めることが可能になる。
【0013】
請求項2の発明では、物品の外観を非接触で計測し、物品の既知の形状との照合により物品の位置および角度を求めた後、物品の位置および角度に基づいて干渉検出領域を設定し、干渉検出領域内に含まれる他部材の面積が所定値を越えるときに干渉があると判断し、干渉検出領域内に含まれる他部材の面積が所定値以下であるときには物品の高さを計測し、物品の高さが所定値を越えるときには干渉があると判断することを特徴とする。
この方法によれば、最初は面積を用いて干渉を判定することによって、ほとんどの干渉については比較的短時間で検出できるようにし、面積によっては検出されないような干渉(重複の場合)については、高さ情報を用いることによって検出することができるのであって、比較的短時間で各種の干渉状態を確実に検出することができる。
【0015】
【発明の実施の形態】
(実施形態1)
本実施形態では、物品として生産ラインにおいてロボットによりピッキングする部品を対象とし、図2に示すように、部品Xの外観を計測する手段としてTVカメラ11を用いる。部品XにはTVカメラ11の光軸方向と同じ方向から光源12によって光が照射されており、TVカメラ11では部品Xの外表面の陰影を撮像する。TVカメラ11で撮像した画像はデジタル信号として取り出され画像メモリ13に格納される。また、画像メモリ13に格納された濃淡情報を含む画像(白黒画像でもカラー画像でもよいがここでは白黒画像)に基づいて、マイクロコンピュータよりなる画像処理部14では着目する部品と他部材との干渉の有無を検出する。ここに、TVカメラ1により撮像された画像には少なくとも1つの部品Xの画像が含まれるようにしてあり、通常は複数の部品Xが1画面に含まれることになる。
【0016】
画像処理部14の処理手順は、基本的には図1のようになる。まず、画像メモリ13に格納された濃淡画像に基づいて画像内の部品Xの位置および角度を認識する(S1)。ここで、部品Xの位置とは画像内での部品Xの代表点(たとえば、画像内での重心)の座標であり、部品Xの角度とは画像内での部品Xの向き(たとえば、慣性主軸の方向)である。
【0017】
画像内の部品Xの位置および角度が認識されると、他部材との干渉の有無を判定する干渉検出領域D1 を設定する(図3参照)。干渉検出領域D1 は、各部品Xの形状に応じてあらかじめ設定され領域設定ファイルF1 に格納されている。そこで、着目する1種類の部品Xについて領域設定ファイルF1 から干渉検出領域D1 を読み出し(S2)、ステップS1において求めた部品Xの位置に応じて領域設定ファイルF1 から読み出した干渉検出領域D1 の位置を合わせる(S4)。こうして干渉検出領域D1 を設定した後に、干渉検出領域D1 の中に他部材が存在するか否かを判定し、他部材の存在が検出されると干渉があると判断する(S5)。干渉を判定した後、画像内に他に部品Xが存在していれば(S3)、他の部品Xについても干渉検出領域D1 の位置を合わせて干渉の判定を繰り返して行なう。ただし、繰り返し処理は同種類の部品Xについて行ない、繰り返し処理の際には領域設定ファイルF1 からの干渉検出領域D1 の読み出しは行なわない。こうしてTVカメラ11の視野内に存在する着目すべき1種類の部品Xのすべてについて干渉の判定を行なうと、TVカメラ11によって次にピッキングすべき部品Xを撮像する。
【0018】
以下では、ステップS1において部品の位置を検出する方法と、ステップS5において干渉を判定する方法について具体的に説明する。
1.部品の位置を認識する方法
1.1 パターンマッチングによる方法
部品Xの位置をパターンマッチングにより認識する場合には、画像処理部14を図4のように構成しておく。すなわち、画像処理部14に、パターンマッチング部21を設け、テンプレートファイルF2 にあらかじめ設定してあるテンプレートとTVカメラ11により撮像した部品Xの画像とのパターンマッチングを行なう。パターンマッチングの際には、TVカメラ11により撮像した画像(以下では原画像という)の中で、テンプレートを1゜ずつ回転させ、各角度のテンプレートを1画素ずつラスタスキャンするとともに一致度を判定する。ここで、テンプレートは、検査対象となる部品Xと同じ条件(照明方向や撮像倍率)で基準とする部品Xを撮像し、濃度を正規化したものを用いる。したがって、原画像についても濃度を正規化する。濃度の正規化には各画素の濃度を画像内の全画素の濃度の総和で除算する。このように濃度を正規化しておくことにより、光源12の光量変化によらずパターンマッチングを行なうことができる。
【0019】
しかして、テンプレートをラスタスキャンし、原画像と重なる位置の各画素の濃度差の総和を求めると、部品Xが存在しかつ角度が一致するときに差濃度の総和は極小値になる。つまり、パターンマッチング部21でのテンプレートの回転およびスキャンと一致度の演算との結果に基づいて、位置角度検出部22では差濃度の総和が極小値をとるようなテンプレートの位置および角度を部品Xの位置および角度として求める。このような処理を正規化相関演算と称している。
【0020】
つまり、正規化相関演算の処理をまとめると、図5に示すように、まずテンプレートの回転角度θを0°に初期化し(S11)、テンプレートの位置を初期化した後(S14)、画素の差濃度の総和を求める(S16)。次に、テンプレートの位置を1画素分移動して(S17)、同様に一致度を求める(S16)。このようにして画像内の全位置について一致度を求めた後(S15)、テンプレートの角度を1゜だけ回転させ(S18、S13)、位置を再び初期化し、同様の手順でテンプレートをラスタスキャンして一致度を求める(S14〜S17)。以上の処理を繰り返すことにより、テンプレートの回転角度が360゜に達すれば(S12)、テンプレートはすべての位置と角度についてスキャンされたことになるから、次に差濃度の総和の極小値を求めると(S19)、その位置および角度が部品Xの位置および角度になる(S20)。ここで、極小値を求める際に閾値を設定しておき閾値以下の極小値のみを対象として位置および角度を求めるようにすれば誤検出を防止することができる。
【0021】
上述のようにして部品Xの位置および角度が求まれば、領域設定部23において領域設定ファイルF1 から部品Xに応じた干渉検出領域D1 を読み出し、この干渉検出領域D1 内での干渉の有無を干渉検出部24において判定する。
1.2 一般化ハフ変換による方法
部品Xの位置は一般化ハフ変換により求めることができる。一般化ハフ変換を適用するには、原画像(濃淡画像)から求めた方向値(各画素間の濃度勾配の方向)を用いる。方向値φは、各画素の近傍(一般に8近傍)の画素の濃度を用いて水平方向(x方向)と垂直方向(y方向)との濃淡の変化率(微分値dx,dy)を求め、φ=Arctan(dy/dx)として求められる。ただし、方向値φは量子化されている。
【0022】
ここで、一般化ハフ変換を適用する場合には、図8に示すように、部品Xに対するテンプレートMが設定されており、テンプレートMについて輪郭線Lb上の各画素の極座標(ri ,αi )と方向値φi とが求められ、さらに、同じ方向値φi を持つ画素(極座標(ri ,αi )で表す)がまとめられる。つまり、方向値φk は量子化されており、輪郭線Lbの上の各画素はいずれかの方向値を持つから、表1のように、各方向値φi ごとに画素の極座標(ri ,αi )を分類したテンプレートテーブルT1 が作成される。このテンプレートテーブルT1 がテンプレートMに相当するものとして使用される。
【0023】
【表1】
【0024】
テンプレートMに対する部品Xの画像の相対位置を求めるには、図9のように、まず部品Xの画像の輪郭線(輪郭線の抽出には周知のエッジ抽出処理を施す)の上の各画素について画像の水平方向および垂直方向の座標軸を持つ右手系の直交座標系での座標(xj ,yj )を求めるとともに、各画素の方向値φj を求める。
【0025】
いま、上記直交座標系において、部品Xの画像のテンプレートMに対する相対位置が(x,y)であり、部品Xの画像のテンプレートMに対する角度がθであるものとする。ここで、上記直交座標系において部品Xの輪郭線上の座標(xj ,yj )の画素の方向値がφj であるものとすると、テンプレートMの対応する画素の方向値φi は(φj −θ)になる。また、部品Xの画像はテンプレートMに対して(x,y)だけ離れて位置しているから、テンプレートMの基準点の座標を(0,0)とすれば、部品Xの画像の基準点の座標は(x,y)であって、テンプレートMの基準点(0,0)を原点としテンプレートMの基準方向に対して角度θだけ回転した極座標系を考えると、上記直交座標系での座標(xj ,yj )と極座標(rj ,αj )との間には次の関係式が成立する。
x=xj −rj ・cos(αj +θ)
y=yj −rj ・sin(αj +θ)
上式が一般化ハフ変換式であって、部品Xの画像の輪郭線上の画素とテンプレートMの輪郭線Lbの上の画素とが等価であれば、rj =ri かつαj =αi であるから、角度θを所定角度ずつ変化させながら部品Xの画像の輪郭線の上の各画素の方向値φi に対して(φi −θ)を求め、この値をテンプレートテーブルT1 に照合して得た極座標(ri ,αi )を上式に適用したときに、部品Xの輪郭線の上の多数の点について(x,y)がほぼ一致していれば、そのときの角度θを部品Xの角度とし、求めた(x,y)を部品Xの位置とみなせる。
【0026】
ここで、部品Xの画像の輪郭線の上の各画素の方向値φi を求め、テンプレートテーブルT1 に照合し、さらにテンプレートテーブルT1 から求めた極座標(ri ,αi )を一般化ハフ変換式に適用して、部品Xの輪郭線の上の多数の点について(x,y)がほぼ一致するか否かを判定するという演算が必要であるから、この演算を簡単に行なうために、以下の手法が考えられている。つまり、テンプレートテーブルT1 との照合によって得られた極座標(ri ,αi )を一般化ハフ変換式に代入して得た座標(x,y)の発生度数を求め、発生度数が極大になれば部品Xの画像とテンプレートMとの一致度が高いと考えることができる。そこで、座標(x,y)の発生度数を求めるために、図10に示すように、部品Xを含む画像と同じサイズを有するアドレス空間(アキュムレータ配列Aと称する)を各角度θごとに設け、各角度θごとに一般化ハフ変換によって上述のようにして座標(x,y)を求めたときに、その座標(x,y)に対応したアドレスのアキュムレータ配列Aの格納値を1つずつインクリメントする。このような処理によって、アキュムレータ配列Aの各アドレスには、一般化ハフ変換によってそのアドレスに対応する座標(x,y)が得られた度数が格納される。
【0027】
このようにアキュムレータ配列Aに度数を格納する処理を、各角度θごとに設けたすべてのアキュムレータ配列Aに対して行なえば、角度θが部品Xの角度θに一致するアキュムレータ配列Aでは、特定の座標(x,y)に対応したアドレスの格納値が他のすべてのアキュムレータ配列Aの各アドレスの格納値よりも大きくなると考えられる。つまり、格納値の大きなアドレスを持つアキュムレータ配列Aに対応する角度θが部品Xの角度θであり、そのアキュムレータ配列Aのうち格納値が極大値になるアドレスに対応した座標(x,y)が部品Xの位置(x,y)になる。要するに、パターンマッチングの場合と同様に、各アキュムレータ配列Aの中で各アドレスの格納値が極大になるものを求めれば、部品Xの位置および角度を求めることになる。ここで、格納値について閾値を設定しておき、格納値が閾値以上になるもののみを採用すれば、誤検出を防止することができる。
【0028】
上述の処理を行なう画像処理部14は、図6のように、テンプレートテーブルT1 を用いて各角度θのアキュムレータ配列Aを作成するハフ変換処理部25と、アキュムレータ配列Aの各アドレスの格納値の極大値に基づいて部品Xの位置および角度を求める位置角度検出部26とにより構成される。部品Xの位置および角度が求められると、領域設定部23において領域設定ファイルF1 から部品Xに応じた干渉検出領域D1 が読み出され、この干渉検出領域D1 内での干渉の有無が干渉検出部24において判定される。
【0029】
以上の処理をまとめると、図7のようになる。つまり、まずテンプレートMについて角度θを初期化し(S21)、テンプレートテーブルT1 を用いて一般化ハフ変換を施し1つの角度についてのアキュムレータ配列Aを作成する(S23)。その後、角度θをインクリメントして(S24)、同様の処理を角度θが360゜になるまで繰り返し(S22)、各角度θのアキュムレータ配列Aを作成する。このようにしてテンプレートMのすべての角度θについてアキュムレータ配列Aが作成されると、各アキュムレータ配列Aの格納値が極大であるアドレスを求める(S25)。このアドレスが部品Xの位置を示し、アキュムレータ配列Aの角度θが部品Xの角度θを示すのである(S26)。
【0030】
2.干渉を判定する方法
干渉を判定するには、上述のように干渉検出領域D1 を各部品Xごとに設定し領域設定ファイルF1 に格納しておくことが必要である。干渉検出領域D1 は、以下のようにして設定される。まず、登録すべき部品Xを画像の基準方向に対して角度が0゜となるように配置した状態でTVカメラ11により撮像し、表2に示すような微分マスクを用いることにより、各画素の濃度に重み付けを行なって、各画素の近傍での濃度の変化の大きさを求める。
【0031】
【表2】
【0032】
ここで、濃度の変化は、微分マスクを演算子として用いた結果であるx方向の微分値dxとy方向の微分値dyとを用いて、(dx2 +dy2 )1/2 で表す。
このような濃度変化の大きい場所は部品Xと背景との境界線であると考えられるから、濃度変化が所定の閾値以上になる画素を求めれば、図11(a)のように部品Xの輪郭線を求めたことになる(図12のS31,S32)。ここで、輪郭線処理では1画素幅になるように処理を行ない、その後、輪郭線が閉じた図形を形成するように線の延長処理を行なう。この種の処理は細線化処理として周知のものである。次に、求めた輪郭線を図11(b)の斜線部のように3画素の幅に膨張させる(図12のS33)。最後に、図11(c)のように部品Xと重複する部分を消去すれば、斜線部のような干渉検出領域D1 が得られる(図12のS34)。このように干渉検出領域D1 を設定すれば、部品Xの外側に干渉検出領域D1 を設定することになる。以上のような処理を各種の部品Xについて行ない、各部品Xごとに干渉検出領域D1 を求めて領域設定ファイルF1 に登録しておくのである。
【0033】
2.1 干渉検出領域内での干渉検出
干渉検出領域D1 を用いた干渉の有無の判定は、図13のような手順で行なう。まず、上述のように部品Xの位置および角度を求めた後に(S41)、干渉検出領域D1 を領域設定ファイルF1 から読み出し(S42)、部品Xの位置および角度に干渉検出領域D1 の位置および角度を合わせる(S44)。このようにして部品Xの位置および角度に合わせた干渉検出領域D1 の上で走査しつつ、濃度が所定の閾値以上になる画素の個数を計数する(S45)。ただし、これは部品Xなどの存在箇所が、背景よりも濃度が高くなる(明るい)ように照明している場合であり、背景よりも濃度の低い部品Xでは濃度が閾値以下の画素を計数することになる。干渉検出領域D1 の走査は、図14に矢印で示すように周回するようにして外側から内側に向かって行ない、1周すれば次に内側でまた1周するように走査する。このようにして干渉検出領域D1 の全画素について走査が終了した後に計数値を所定値と比較し(S46)、所定値以上であれば干渉があると判断するのである(S47)。また計数値が閾値よりも小さいときには、他に部品Xがあるか否かを判定し(部品の位置および角度を求める処理によって部品の個数は認識されている)、部品Xが残っていれば(S43)、残りのすべての部品Xについても同様の処理を繰り返す。
【0034】
2.2 干渉検出領域外での干渉検出
干渉の有無の判定は、図15の手順で行なうことができる。まず、上述のように部品Xの位置および角度を求めた後に(S51)、干渉検出領域D1 の位置および角度を領域設定ファイルF1 から読み出し(S52)、部品Xの位置および角度に干渉検出領域D1 の位置および角度を合わせる(S54)。このようにして部品Xの位置および角度に合わせた干渉検出領域D1 を図16に矢印で示すように周回するようにして外側から内側に向かって走査する(S55)。走査の途中で濃度が所定の閾値以上になる画素があれば(S56)、その画素を始点として、濃度が閾値以上になる部分を干渉検出領域D1 の外側で追跡し(S57)、その画素数を求める(S58)。このようにして求めた画素数(面積)が所定値以上であれば(S59)、干渉があると判断し、閾値より小さければ、ごみ等の異物の付着であってピッキングに影響がないものとし干渉がないと判断するのである(S60)。このようにして1つの部品Xについて干渉の有無を判断した後、他の部品Xがあるか否かを判定し、部品Xが残っていれば(S53)、残りのすべての部品Xについても同様の処理を施す。
【0035】
2.3 高さ情報を用いた干渉検出
上述した干渉検出の方法は、部品Xの位置がずれている場合には適用可能であるが、図18のように、複数の部品X1 ,X2 が重なっている場合には干渉を検出することができない。そこで、高さ情報を用いることによって部品X1 ,X2 が重なっている場合の干渉を検出する方法について説明する。ここでは、部品X1 ,X2 は異品種であって、部品X2 は部品X1 よりもサイズが小さいものとする。また、部品X1 ,X2 が近接ないし接触しているような状態は高さ情報のみでは検出できないことがある(部品X1 ,X2 の高さが等しい場合)。そこで、濃度を用いる干渉検出と高さを用いる干渉検出とを併用する。
【0036】
すなわち、図17に示すように、部品X1 ,X2 の品種ごとに位置および角度を求め(S61)、部品X1 ,X2 の品種ごとに領域設定ファイルF1 に格納されている干渉検出領域D1 を読み出して(S62)、干渉検出領域D1 を設定する(S64)。基本的には「2.1」の手法を用いるのであって、干渉検出領域D1 の上で走査しつつ、濃度が閾値以上である画素の個数を計数する(S65)。画素数が所定個数以上であれば(S66)干渉があると判断する(S67)。ここで、「2.1」の方法では画素数が所定個数以下であると干渉がないものとしていたが、ここでは濃度が閾値以上である画素数が所定個数以下であるときには、部品X1 ,X2 について高さを計測する(S68)。
【0037】
高さの計測には図19に示すように部品Xに線状の光パターンを形成するスリット光を照射し、部品Xをスリット光の長手方向に直交する方向に搬送することによって、部品Xの上で光パターンが走査されるようにする。つまり、TVカメラ11と光源12との位置関係は固定的に設定されているから、TVカメラ11の受光面に形成される光パターンの像の位置に基づいて基線長三角測量法を適用して光切断法により部品Xの高さを求めることができる。また、光パターンの長手方向の位置情報はTVカメラ11の受光面の上でも保存され、光パターンの長手方向に直交する方向の位置情報は部品Xを搬送する装置の情報(あるいは光源12の点灯後の時間情報)として得ることができる。
【0038】
このようにして得た画像は3次元画像(画像の各画素に高さ情報を対応付けた画像)であり、部品Xの高さが得られているから、この高さが部品Xの既知の高さに対して設定した基準値を越えるとき(S69)、図18のような状態であって干渉があるものと判断する(S67)。このようにして1箇所で干渉の有無を判断した後、他箇所に部品X1 ,X2 があるか否かを判定し、部品X1 ,X2 が残っていれば(S63)、残りのすべての部品X1 ,X2 についても同様の処理を施す。
【0039】
ところで、濃度と高さとを併用する場合に、高さを用いる前に濃度を用いて干渉を検出しているのは、濃度を用いる方法では複数の部品X1 ,X2 の情報を短時間で得ることができるからであって、この段階で干渉を検出することができれば、干渉の判定を短時間で行なうことができるからである。高さを計測する方法は、スリット光を部品X1 ,X2 に対して相対的に走査する必要があるから計測に時間がかかるのであり、このように時間のかかる測定の機会を低減することによって比較的短時間で干渉の有無を検出できることになる。また、濃度を用いる場合に、サイズの大きい部品X1 の干渉検出領域D1 で部品X2 の干渉を検出することはできないが、サイズの小さい部品X2 の干渉検出領域D1 では部品X1 の干渉を検出することができる可能性があるから、サイズの小さい部品X2 から順に干渉検出領域D1 を設定すれば、高さを計測する機会をさらに低減することができる。
【0040】
(実施形態2)
上述した実施形態では、部品Xの全体を照明する光源12を用いて部品Xの位置および角度を求めていたが、本実施形態では実施形態1における「2.3」と同様の方法で部品Xの高さを計測し、高さに基づいて部品Xの位置および角度を求める。つまり、図19に示すように、部品Xに線状の光パターンを形成するスリット光を照射し、部品Xをスリット光の長手方向に直交する方向に搬送することによって、部品Xの上で光パターンが走査されるようにして部品Xの高さ情報を得ている。つまり、TVカメラ11と光源12との位置関係は固定的に設定されているから、TVカメラ11の受光面に形成される光パターンの像の位置に基づいて基線長三角測量法を適用して部品Xの高さを求めることができる。また、光パターンの長手方向の位置情報はTVカメラ11の受光面の上でも保存され、光パターンの長手方向に直交する方向の位置情報は部品Xを搬送する装置の情報(あるいは光源12の点灯後の時間情報)として得ることができる。
【0041】
このようにして得た画像は3次元画像(画像の各画素に高さ情報を対応付けた画像)であるから、画像内でラスタスキャンを行ない、最初に高さ情報に閾値以上の変化を生じた画素を始点として高さ情報が許容範囲内である画素をトレースする。このような処理によって高さ変化のある部分(つまり部品Xの輪郭)に沿ったエッジを求めることができる。また、1つの部品Xについてトレースが終了すると(トレースした画素が始点に戻る)、始点の次の画素からラスタスキャンを再開して部品Xの内側や外側における高さ情報の変化を検出する。このようにして高さ情報の変化により、部品Xの上に重なっている他部材の存否や画面内の他の部品Xの存否を知ることができる。
【0042】
本実施形態では、図20に示すように、上述のようにして部品Xの輪郭線を抽出した後(S71)、この輪郭線を用いて部品Xの位置(たとえば、重心の位置)を求める(S72)。部品Xの位置が求められると、テンプレートの位置を部品Xに一致させ、テンプレートを0゜から始めて1゜ずつ回転させ各角度での部品Xとの一致度(重なる画素数)を判定することにより一致度が最大になる角度を部品Xの角度として求めることができる(S73)。部品Xの位置と角度とが求まると(S74)、実施形態1と同様に領域設定ファイルF1 から部品Xに応じた干渉検出領域D1 を読み出し、この干渉検出領域D1 内での干渉の有無を判定する。
【0043】
(実施形態3)
図22のように、複数の部品Xが完全に一致して重なっている場合には高さ情報を用いることによって干渉を検出する。
すなわち、図21に示すように、部品Xの位置および角度を求めた後(S81)、部品Xの位置および角度に基づいて制限した領域内で部品Xについて高さを計測する(S83)。ここでは、干渉検出領域D1 の設定は不要であるから、干渉検出領域読D1 を領域設定ファイルF1 から読み出すことはしない。高さの計測には、実施形態1の「2.3」の方法と同様に、部品Xに線状の光パターンを形成するスリット光を照射し、部品Xをスリット光の長手方向に直交する方向に搬送することによって、部品Xの上で光パターンが走査されるようにする。そして、TVカメラ11の受光面に形成される光パターンの像の位置に基づいて基線長三角測量法を適用して光切断法により部品Xの高さを求める。また、高さの計測の際には部品Xの位置および角度に基づいてスリット光を照射する計測領域を制限する。
【0044】
このようにして部品Xの高さが得られるから、高さが部品Xの既知の高さに対して設定した基準値を越えるとき(S84)、部品Xの重複による干渉があるものと判断する(S85)。このようにして1つの部品Xについて干渉の有無を判断した後、他の部品Xがあるか否かを判定し、部品Xが残っていれば(S82)、残りのすべての部品Xについても同様の処理を施す。他の方法は実施形態1と同様である。
【0045】
【発明の効果】
請求項1の発明は、物品の外観を非接触で計測し、物品の既知の形状との照合により物品の位置および角度を求めた後、物品の位置および角度に基づいて干渉検出領域を設定し、干渉検出領域において検出された他部材について、干渉検出領域外の面積が所定値を越えるときに干渉があると判断するものであり、物品の位置および角度に応じて干渉検出領域を設定し、干渉検出領域において検出された他部材について干渉検出領域の外側の面積を検出するから、ごみ等の異物程度では干渉とみなさないようにすることができる。つまり、物品をロボットでピッキングする場合にはロボットの稼働率を高めることが可能になる。
【0049】
請求項2の発明は、干渉検出領域内に含まれる他部材の面積が所定値を越えるときに干渉があると判断し、干渉検出領域内に含まれる他部材の面積が所定値以下であるときには物品の高さを計測し、物品の高さが所定値を越えるときには干渉があると判断するから、最初は面積を用いて干渉を判定することによって、ほとんどの干渉については比較的短時間で検出できるようにし、面積によっては検出されないような干渉(重複の場合)については、高さ情報を用いることによって検出することができるのであって、比較的短時間で各種の干渉状態を確実に検出することができるという利点がある。
【図面の簡単な説明】
【図1】実施形態1を示す基本の動作説明図である。
【図2】実施形態1における装置の概略構成図である。
【図3】実施形態1における干渉検出領域の概念図である。
【図4】実施形態1における画像処理部のブロック図である。
【図5】実施形態1における動作説明図である。
【図6】実施形態1における画像処理部のブロック図である。
【図7】実施形態1における動作説明図である。
【図8】実施形態1における一般化ハフ変換のテンプレートを示す図である。
【図9】実施形態1における一般化ハフ変換の概念を説明する図である。
【図10】実施形態1で用いるアキュムレータ配列を示す図である。
【図11】実施形態1における干渉検出領域の設定手順の概念説明図である。
【図12】実施形態1における干渉検出領域の設定手順の動作説明図である。
【図13】実施形態1における干渉検出方法を示す動作説明図である。
【図14】実施形態1における干渉の概念を示す図である。
【図15】実施形態1における干渉検出方法を示す動作説明図である。
【図16】実施形態1における干渉の概念を示す図である。
【図17】実施形態1における干渉検出方法を示す動作説明図である。
【図18】実施形態1における干渉の概念を示す図である。
【図19】実施形態1における高さ計測装置の概略構成図である。
【図20】実施形態2の動作説明図である。
【図21】実施形態3の動作説明図である。
【図22】実施形態3における干渉の概念を示す図である。
【符号の説明】
11 TVカメラ
12 光源
13 画像メモリ
14 画像処理部
Claims (2)
- 物品の外観を非接触で計測し、物品の既知の形状との照合により物品の位置および角度を求めた後、物品の位置および角度に基づいて干渉検出領域を設定し、干渉検出領域において検出された他部材について、干渉検出領域外の面積が所定値を越えるときに干渉があると判断することを特徴とする物品の干渉検出方法。
- 物品の外観を非接触で計測し、物品の既知の形状との照合により物品の位置および角度を求めた後、物品の位置および角度に基づいて干渉検出領域を設定し、干渉検出領域内に含まれる他部材の面積が所定値を越えるときに干渉があると判断し、干渉検出領域内に含まれる他部材の面積が所定値以下であるときには物品の高さを計測し、物品の高さが所定値を越えるときには干渉があると判断することを特徴とする物品の干渉検出方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP24810895A JP3543442B2 (ja) | 1995-09-26 | 1995-09-26 | 物品の干渉検出方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP24810895A JP3543442B2 (ja) | 1995-09-26 | 1995-09-26 | 物品の干渉検出方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
JPH0991441A JPH0991441A (ja) | 1997-04-04 |
JP3543442B2 true JP3543442B2 (ja) | 2004-07-14 |
Family
ID=17173353
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP24810895A Expired - Fee Related JP3543442B2 (ja) | 1995-09-26 | 1995-09-26 | 物品の干渉検出方法 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP3543442B2 (ja) |
Families Citing this family (14)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP3768174B2 (ja) * | 2002-07-24 | 2006-04-19 | ファナック株式会社 | ワーク取出し装置 |
JP4467992B2 (ja) * | 2004-01-15 | 2010-05-26 | 大日本スクリーン製造株式会社 | 図形処理装置、図形処理方法、およびプログラム |
US7084989B2 (en) * | 2004-04-19 | 2006-08-01 | Sick Ivp Aktiebolag | Measuring apparatus and method in a distribution system |
JP3930490B2 (ja) | 2004-04-23 | 2007-06-13 | ファナック株式会社 | 物品取出し装置 |
JP2006133049A (ja) * | 2004-11-05 | 2006-05-25 | Sick Optex Kk | 高さ形状センサ |
JP5267280B2 (ja) * | 2009-03-31 | 2013-08-21 | 富士通株式会社 | 重なり判定方法、重なり判定装置、および重なり判定プログラム |
JP2011141202A (ja) * | 2010-01-07 | 2011-07-21 | Kokusai Gijutsu Kaihatsu Co Ltd | 部品検査装置及びプログラム |
JP2013094938A (ja) * | 2011-11-04 | 2013-05-20 | Mitsubishi Electric Corp | 部品供給方法、及び部品供給システム |
JP6415026B2 (ja) | 2013-06-28 | 2018-10-31 | キヤノン株式会社 | 干渉判定装置、干渉判定方法、コンピュータプログラム |
KR101540569B1 (ko) * | 2013-12-24 | 2015-07-31 | 주식회사 엘지실트론 | 웨이퍼의 형상 분석 방법 및 장치 |
JP6489894B2 (ja) * | 2015-03-27 | 2019-03-27 | ファナック株式会社 | 対象物の取出経路を補正する機能を有するロボットシステム |
JP7047249B2 (ja) * | 2017-01-10 | 2022-04-05 | オムロン株式会社 | 画像処理システム、画像処理装置、ワークのピックアップ方法、および、ワークのピックアッププログラム |
US11305432B2 (en) * | 2017-01-12 | 2022-04-19 | Fuji Corporation | Work machine and pick-up position selection method |
EP4036517B1 (en) * | 2019-09-26 | 2023-08-23 | Fuji Corporation | Height measurement device |
Family Cites Families (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS6134675A (ja) * | 1984-07-27 | 1986-02-18 | Hitachi Ltd | 画像認識方法および装置 |
JP2712336B2 (ja) * | 1988-07-29 | 1998-02-10 | 松下電器産業株式会社 | 電子部品の装着方法 |
JP2844705B2 (ja) * | 1989-08-23 | 1999-01-06 | 株式会社リコー | 縁面距離評価装置および方法 |
JP2775924B2 (ja) * | 1989-11-16 | 1998-07-16 | トヨタ自動車株式会社 | 画像データ作成装置 |
JPH05165968A (ja) * | 1991-12-18 | 1993-07-02 | Komatsu Ltd | 物体の位置・姿勢認識装置 |
JP3054513B2 (ja) * | 1993-04-15 | 2000-06-19 | 三洋電機株式会社 | 電子部品のリード浮き検出方法 |
JP3426002B2 (ja) * | 1993-09-20 | 2003-07-14 | 三菱電機株式会社 | 物体認識装置 |
JP3027680B2 (ja) * | 1994-02-23 | 2000-04-04 | 松下電工株式会社 | 部品認識方法 |
-
1995
- 1995-09-26 JP JP24810895A patent/JP3543442B2/ja not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
JPH0991441A (ja) | 1997-04-04 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP3543442B2 (ja) | 物品の干渉検出方法 | |
JP2014511772A (ja) | ロボットシステムにおいてピッキング動作後にセンサ測定値を無効にする方法 | |
CN111354038B (zh) | 锚定物检测方法及装置、电子设备及存储介质 | |
WO2005076214A1 (en) | Method and system for image processing for profiling with uncoded structured light | |
US6690819B1 (en) | Method and apparatus for recognizing components | |
JP4707249B2 (ja) | 部品位置検出方法及び装置 | |
JPH02306386A (ja) | 文字認識装置 | |
JP5160366B2 (ja) | 電子部品のパターンマッチング方法 | |
Koch et al. | A vision system to identify occluded industrial parts | |
JP3494388B2 (ja) | 指紋照合方法および指紋照合装置 | |
JPH1021412A (ja) | 部品画像のエッジ検出方法および部品形状認識装置 | |
JP2002133424A (ja) | 文書の傾き角度及び境界の検出方法 | |
US6915010B2 (en) | Real time object localization and recognition from silhouette images | |
JPH09161056A (ja) | 円形容器内面検査方法 | |
JP3552419B2 (ja) | 物体の認識方法 | |
JP2710685B2 (ja) | 外観検査による欠陥検出方法 | |
JPH1115975A (ja) | 外観検査方法 | |
JP3706431B2 (ja) | 部品形状認識装置 | |
JP3235392B2 (ja) | 対象パターンの回転角検出方法 | |
Pochec | Moire based stereo matching technique | |
JPH0769959B2 (ja) | パターン認識のための頂点検出方法 | |
JPH05113315A (ja) | 円形画像データの中心位置検出方法 | |
JP2959017B2 (ja) | 円形画像判別方法 | |
JP3715683B2 (ja) | 画像処理装置及びその画像処理方法 | |
JPH0624028B2 (ja) | パターン認識のための特徴点コーナーの位置計測方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20031216 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20040216 |
|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20040316 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20040329 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20080416 Year of fee payment: 4 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20090416 Year of fee payment: 5 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20090416 Year of fee payment: 5 |
|
S533 | Written request for registration of change of name |
Free format text: JAPANESE INTERMEDIATE CODE: R313533 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20090416 Year of fee payment: 5 |
|
R350 | Written notification of registration of transfer |
Free format text: JAPANESE INTERMEDIATE CODE: R350 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20100416 Year of fee payment: 6 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20100416 Year of fee payment: 6 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20110416 Year of fee payment: 7 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20130416 Year of fee payment: 9 |
|
LAPS | Cancellation because of no payment of annual fees |