(57)【要約】【課題】種々の形状の部品を、良好にしかも高精度で位置決めすることが可能な部品位置検出方法及び装置を提供する。【解決手段】部品３０の輪郭エッジ点を検出するとともに、該輪郭エッジ点に対してスキャン用直線３２ａ、３２ｂを設定し、その設定された直線の傾きを変化させて（Ｓ３）、該直線と輪郭エッジ点間の距離が最短になるエッジ点が複数箇所において検出される傾きを求める（Ｓ３〜Ｓ１０）。そして、この傾きの直線から部品に外接する外接直線３４ａ〜３４ｄを求めて、部品中心と部品傾きを算出する（Ｓ１７）。このような構成では、距離が最短となる輪郭エッジ点が少なくとも２つ以上あると、位置決めができるので、辺が直線状である部品はもちろん、非直線状の辺の部品でも、高精度で部品の位置検出が可能となる。【選択図】図２
2006260315.tif 000002
【特許請求の範囲】
【請求項１】
撮像された部品の画像を処理して部品位置を検出する方法であって、
部品の輪郭エッジ点を検出するとともに、該輪郭エッジ点に対して直線を設定し、
前記設定された直線と画像を相対的に回転させて、該直線と輪郭エッジ点間の距離が最短になる輪郭エッジ点が複数箇所において検出される回転角度を求め、
前記求めた回転角度に基づき部品の傾きを算出することを特徴とする部品位置検出方法。
【請求項２】
撮像された部品の画像を処理して部品位置を検出する方法であって、
部品の輪郭エッジ点を検出するとともに、該輪郭エッジ点に対して直線を設定し、
前記設定された直線と画像を相対的に回転させて、該直線と輪郭エッジ点間の距離が最短になる輪郭エッジ点が複数箇所において検出される回転角度を求め、
前記求めた回転角度での直線から部品に外接する外接直線を求め、
前記外接直線を辺ごとに求めて、該求めた外接直線から部品中心と部品傾きを算出することを特徴とする部品位置検出方法。
【請求項３】
対向する辺に対応する外接直線間の距離が最短になる外接直線を求め、該求めた外接直線から部品中心と部品傾きを求めることを特徴とする請求項２に記載の部品位置検出方法。
【請求項４】
撮像された部品の画像を処理して部品位置を検出する方法であって、
部品の輪郭エッジ点を検出するとともに、該輪郭エッジ点に対して直線を設定し、
前記設定された直線と画像を相対的に回転させて、該直線と輪郭エッジ点間の距離が最短になる輪郭エッジ点が複数箇所において検出される回転角度を求め、
前記求めた回転角度での直線から部品に外接する外接直線を求め、
前記求めた外接直線並びに部品サイズに基づき部品中心と部品傾きを算出することを特徴とする部品位置検出方法。
【請求項５】
撮像された部品の画像を処理して部品位置を検出する装置であって、
部品を撮像する撮像装置と、
撮像された部品の画像を処理して部品の輪郭エッジ点を検出するとともに、該輪郭エッジ点に対して直線を設定する画像処理装置とを有し、
前記画像処理装置は、前記設定された直線と画像を相対的に回転させて、該直線と輪郭エッジ点間の距離が最短になる輪郭エッジ点が複数箇所において検出される回転角度を求め、該求めた回転角度に基づき部品の傾きを算出することを特徴とする部品位置検出装置。
【請求項６】
撮像された部品の画像を処理して部品位置を検出する装置であって、
部品を撮像する撮像装置と、
撮像された部品の画像を処理して部品の輪郭エッジ点を検出するとともに、該輪郭エッジ点に対して直線を設定する画像処理装置とを有し、
前記画像処理装置は、前記設定された直線と画像を相対的に回転させて、該直線と輪郭エッジ点間の距離が最短になる輪郭エッジ点が複数箇所において検出される回転角度を求め、該求めた回転角度での直線から部品に外接する外接直線を辺ごとに求めて、該求めた外接直線から部品中心と部品傾きを算出することを特徴とする部品位置検出装置。
【請求項７】
対向する辺に対応する外接直線間の距離が最短になる外接直線を求め、該求めた外接直線から部品中心と部品傾きを求めることを特徴とする請求項６に記載の部品位置検出装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、部品位置検出方法及び装置、更に詳細には、撮像された電子部品の画像を処理して部品位置を検出する方法及び装置に関する。
【背景技術】
【０００２】
従来、電子部品（以下、単に部品という）を回路基板に実装する部品実装機では、フィーダーから供給される部品を吸着ノズルで吸着し、吸着ノズルを回路基板上の所定位置に移動させて部品を基板に搭載している。この場合、部品は、必ずしも正しい姿勢で吸着されるわけではないので、部品を回路基板に搭載する際、実装直前に画像認識部において部品の画像データをＣＣＤカメラなどの撮像装置などで取得し画像処理を行って、部品中心、並びに部品傾きを検出して部品位置検出（部品認識、あるいは部品位置決めともよばれる）を行い、精度よく電子部品を実装している。
【０００３】
従来の部品位置検出方法は、パターンマッチングを利用したものや、部品の辺やコーナーを利用したものが存在している。
【０００４】
パターンマッチングを利用する方法は、まず位置決めしようとする部品の基準となるパターン（あるいはテンプレート）を作成して、これを登録し、次に実際に位置決めする部品を撮像して画像を取得し、保存しておいたパターンと比較する。その場合、パターンを回転させて比較することも行われ、この作業を部品が存在する可能性のある画像全体に対して実行する。ここで、最も高い一致度を示した位置が対象物の位置として検出される。この一致度は、一般的に、「正規化相関法」を使用した相関値が知られている（非特許文献１）。
【０００５】
一方、部品の辺やコーナーを利用した部品位置決めは、部品のサイズ情報とどの辺、コーナーを位置決めに使用するかの情報が与えられた状態で部品を撮像する。部品が画像のどの位置にあるかを検出しておおまかな部品の位置を取得するため、画像四方からラスタスキャンを行い、部品外接矩形を取得する。その矩形から位置決めに使用すべき辺あるいはコーナーの位置がおおよそ分かるため、その周辺のエッジを取得する。辺の場合は、エッジ点を使用してハフ変換により直線式を求め、コーナーであれば交差する２直線を求め、その交点をコーナー点とする。部品中心・傾きは、４辺で位置決めするのであれば、中心位置は４直線の４交点を使用して求め、部品傾きは４辺のＸ，Ｙ軸それぞれに対する傾きの平均とする。コーナーの場合は、左上、右上、右下、左下の４コーナーであれば、図８に示したように、４交点ＴＬ、ＴＲ、ＢＬ、ＢＲを使用して、線分ＴＬ―ＴＲの中点と線分ＢＬ―ＢＲの中点を通る直線Ｖと、線分ＴＬ―ＢＬの中点と線分ＴＲ―ＢＲの中点を通る直線Ｈとの交点を部品１００の中心として求め、一方、部品１００の傾きは４コーナーで矩形を形成する時の上下左右４辺のＸ，Ｙ軸それぞれに対する傾きの平均とする。このような方法が、特許文献１に記載されている。
【特許文献１】特開２００２−２８８６３４号公報
【非特許文献１】新実践画像処理 Image Processing with HALCON、発行者：村上  延夫、発行所：株式会社リンクス  出版事業部、発行日２００１年６月６日）
【発明の開示】
【発明が解決しようとする課題】
【０００６】
しかしながら、上述したパターンマッチングによる部品位置認識では、部品位置が大きく傾いた場合には、部品認識が困難であるという欠点がある。また、テンプレートを登録しておかなければならないため、登録する作業が必要で、保存しておくためのメモリが必要であり、また画像全体を比較しなくてはならず処理スピードが遅いなどの問題がある。
【０００７】
また、部品の辺やコーナーを利用した部品位置決めは、部品に直線部分やコーナー形状がないと、位置決めできないという問題があり、例えば図９に示したような部品１０１の辺やコーナーでは位置決めが困難であるという問題がある。
【０００８】
本発明は、このような問題を解決するもので、種々の形状の部品を、良好にしかも高精度で位置決めすることが可能な部品位置検出方法及び装置を提供することを課題とする。
【課題を解決するための手段】
【０００９】
本発明（請求項１と５）は、
撮像された部品の画像を処理して部品位置を検出する方法及び装置であって、
部品の輪郭エッジ点を検出するとともに、該輪郭エッジ点に対して直線を設定すること、
前記設定された直線と画像を相対的に回転させて、該直線と輪郭エッジ点間の距離が最短になる輪郭エッジ点が複数箇所において検出される回転角度を求め、この求めた回転角度に基づき部品の傾きを算出することを特徴とする。
【００１０】
また、本発明（請求項２と６）は、
上記求めた回転角度での直線から部品に外接する外接直線を求め、
この外接直線を辺ごとに求めて、該求めた外接直線から部品中心と部品傾きを算出することを特徴とする。その場合、対向する辺に対応する外接直線間の距離が最短になる外接直線を求め、該求めた外接直線から部品中心と部品傾きを求めるようにする（請求項３と７）。
【００１１】
また、本発明（請求項４）は、
上記求めた外接直線と部品サイズに基づき部品中心と部品傾きを算出することを特徴とする。
【発明の効果】
【００１２】
本発明では、部品の輪郭エッジ点に対して設定された直線と画像を相対的に回転させて、該直線と輪郭エッジ点間の距離が最短になる輪郭エッジ点が複数箇所において検出される回転角度を求め、該求めた回転角度、あるいはその回転角度での直線から求められる外接直線から部品中心と部品傾きを算出するようにしている。従って、距離が最短となる輪郭エッジ点が少なくとも２つ以上ある部品の場合には、位置決めができるので、辺が直線状である部品はもちろん、非直線状の辺（ぎざぎざのある辺ないし凹凸のある辺）の場合でも、高精度で部品の位置検出が可能となる。従って、パターンマッチングによる方法と違い登録しておくパターンを必要とせず、メモリが節約されるとともに、パターンマッチングより、位置決めできる角度範囲が大きくなる、という効果が得られる。
【発明を実施するための最良の形態】
【００１３】
本発明は、部品の輪郭エッジ点を検出するとともに、該輪郭エッジ点に対して直線を設定し、該設定された直線の傾きを変化させ、あるいは直線の傾きは、変化させず画像を回転させて、直線と輪郭エッジ点間の距離が最短になる輪郭エッジ点が少なくとも２点以上において検出される直線の傾き、あるいは画像の回転角度を求めるようにしており、その求めた直線の傾きあるいは画像の回転角度から、外接直線を求め部品中心と部品傾きを算出するようにしている。以下にその実施例を添付図面を参照して詳細に説明する。
【実施例１】
【００１４】
図１は、本発明が使用される部品実装機２０と、撮像された部品の画像を処理する画像処理装置１２の構成を概略示している。
【００１５】
同図において、吸着ノズル１は、実装機２０のメイン制御装置１３により制御されてＸ、Ｙ軸方向に移動して部品供給装置（不図示）から供給される部品（電子部品）２を吸着する。メイン制御装置１３は、部品２を吸着した吸着ノズル１を、撮像位置へ移動させ、そこで、照明装置３により照明された部品２が、ＣＣＤカメラあるいはＣＭＯＳカメラなどの撮像装置４により撮像される。
【００１６】
撮像された部品の画像は、後述するように、画像処理装置１２において画像処理され、部品位置、つまり、部品中心（画像中心ないし吸着中心からの位置ずれ）、並びに部品傾き（基準角度に対する角度ずれ）が検出される。その後、部品２は、メイン制御装置１３により基板１４の位置に移動され、検出された位置ずれと角度ずれが補正されて回路基板１４の所定位置に搭載される。
【００１７】
基板１４には、基板マーク（不図示）が形成されており、この基板マークは、吸着ノズル１を設けたヘッドに取り付けられる基板認識カメラ１５により撮影され、そのマーク画像が画像処理装置１２で処理され、基板位置が検出される。基板１４に位置ずれと角度ずれがある場合には、そのずれが補正されるので、部品２は、高精度で基板１４上に搭載される。
【００１８】
画像処理装置１２は、カメラ４、１５からの画像をデジタル値に変換するＡ／Ｄコンバータ５と、デジタル画像に変換された部品２や基板マークなどの対象物の画像を格納する画像メモリ６、作業用メモリ（ＲＡＭ）７、部品データ格納メモリ８、ＣＰＵ１０、インターフェース１１などから構成されており、撮像された部品２の画像は、デジタル化されて画像メモリ６に格納される。また、部品データ格納メモリ８には、部品外形寸法（縦幅、横幅など）、特徴物のサイズや位置などの部品データが部品の種類ごとにＩＤ番号を付されて格納されている。部品の画像処理時、モニタ１６には、部品の画像ないし画像処理の様子と処理結果が表示される。
【００１９】
このような構成で、画像処理装置１２は、部品実装機２０からユーザーが作成した部品データをあらかじめ受け取り、それを部品データ格納メモリ８に格納する。部品実装時、メイン制御装置１３は、吸着ノズル１を部品供給装置（不図示）に移動させ、そこから供給される部品２を吸着ノズル１で吸着させる。続いて、メイン制御装置１３は、吸着ノズル１を撮像装置４の上に移動させ、照明装置３を点灯して部品２を照明し、それにより部品２が撮像装置４により撮像される。その画像は、画像処理装置１２に転送され、Ａ／Ｄ変換器５でデジタル化され、画像メモリ６に保存される。画像が保存されたら、画像処理装置１２のＣＰＵ１０は、以下に述べるように、部品データと画像データを使用して、部品位置検出（部品の位置決め）処理を行う。その部品位置の検出結果は、インターフェース１１を介してメイン制御装置１３に送信され、メイン制御装置は、位置検出により得られた位置ずれ、角度ずれを補正して部品２を回路基板１４上に搭載する。
【００２０】
本発明では、外接線を取得して部品位置検出を行うものであり、以下に、図２に示すように、部品の外周エッジ（輪郭）が複雑な形状を有する部品３０の位置検出を行う場合について説明する。
【００２１】
まず、ステップＳ１で４辺のラスタスキャン線３１ａ〜３１ｄで画像メモリ６の部品（部品画像）３０を４方からスキャンし、濃度の変化するところを検出して部品の外周輪郭線を形成する輪郭エッジ点（以下、単にエッジ点という）を取得する。
【００２２】
続いて、ステップＳ２で上辺と下辺の初期のスキャン用直線３２ａ、３２ｂ（エッジ点までの距離を取得するための直線）を設定し、各直線を示すスキャン直線式を求めて、スキャン直線式に所定傾き（Δα）を付加する（ステップＳ３）。今、傾きは、ステップＳ２で設定したときの傾き（デフォルト値＝Ｘ軸に平行）から始めるとして、この角度のスキャン直線式とステップＳ１で求めたエッジ点との距離を取得する（ステップＳ４）。この距離は、ステップＳ４の左側の図に示した二重矢印線の矢印間の幅であり、スキャン直線式からラスタスキャン線と同じスキャン密度で、また同じ方向（水平又は垂直方向）にスキャン線を発生させ、スキャン線がエッジ点に交差したときのスキャン距離を求めることにより求めることができる。あるいは、上記距離は、求めたエッジ点からスキャン方向に直線を引いてスキャン直線式と交差する点を求め、この点とエッジ点の両座標値から求めることができる。そして、このような距離を、部品の上辺の各エッジ点と下辺の各エッジ点に対して求め、各上辺と下辺に対して、距離が最短になるエッジ点と、それとほぼ同距離のエッジ点を取得する（ステップＳ５、Ｓ６）。
【００２３】
このようにして求められた最短距離エッジ点とそれとほぼ同距離のエッジ点が、ステップＳ７の右側の図に黒丸で図示されており、同ステップＳ７で、各辺の両端のエッジ点の距離が所定の画素数（例えば、３０画素）以上の距離離れているかを判定する。これは、辺から局所的に突出している一部分のみで最短ないし同距離のエッジ点が取得されると、所望の外接線が検出できないので、ステップＳ７で示した判定を行う。そして、所定画素数未満であると判定されたら、ステップＳ３に戻ってスキャン直線式にさらに所定傾きを付加してステップＳ４以下の処理を繰り返す（ステップＳ８）。なお、スキャン用直線の傾きが外れていると、ステップＳ６で最短距離とほぼ同距離のエッジ点が取得できないので、それが取得できなかった場合も、ステップＳ３に戻って、スキャン直線式にさらに所定傾きを付加してステップＳ４以下の処理を繰り返す。
【００２４】
一方、ステップＳ７の判断で所定画素数以上あると判定された場合には、スキャン用直線３２ａ、３２ｂとエッジ点間の距離が最短になるエッジ点が所定距離（例えば、３０画素）以上離れて複数箇所において（２箇所以上）検出されたので、ステップＳ９の左側の図に示すように最短距離エッジ点を通り、スキャン直線式に平行な直線３３ａ、３３ｂの式を取得する（ステップＳ９）。続いて、ステップＳ２〜Ｓ９の処理を実行して、左辺と右辺に対しても、左辺と右辺の最短距離エッジ点を通り、左辺と右辺のスキャン直線式に平行な直線３３ｃ、３３ｄの式を取得する（ステップＳ１０）。
【００２５】
このようにして、４辺のすべての直線式が取得できたら対向する直線式間の距離（直線３３ａと３３ｂ間の距離ｄ２、並びに直線３３ｃと３３ｄ間の距離ｄ１）を取得して（ステップＳ１１）、それが、部品データに記述されている当該部品の幅に近いときは、各距離ｄ１、ｄ２を作業用メモリ７に記録しておく（ステップＳ１２）。そして、スキャン直線式の傾きを粗く変えてステップＳ４〜Ｓ１２の処理を行い（ステップＳ１３）、各角度で求めた距離ｄ１、ｄ２の中で最短距離を取得する（ステップＳ１４）。そのとき精度を高めるために、最短距離が得られた角度周辺でスキャン直線式の傾きの変更角度（Δα）の刻みを細かくしてステップＳ３〜Ｓ１４（ステップＳ１３は除く）を繰り返して、距離ｄ１、ｄ２が最短となる直線式を求める（ステップＳ１５）。このとき、上下辺と左右辺の交角をチェックしておく（ステップＳ１６）。そして、いままでの処理で求めた最短距離直線３４ａ〜３４ｄの生成される矩形から部品の中心と傾きを求め（ステップＳ１７）、その結果をモニタ１６に表示する（ステップＳ１８）。なお、中心は、ステップＳ１７の左側の図に示したように、各直線３４ａ〜３４ｄの交点ＴＬ、ＴＲ、ＢＬ、ＢＲを求め、線分ＴＬ―ＴＲの中点と線分ＢＬ―ＢＲの中点を通る直線Ｖと、線分ＴＬ―ＢＬの中点と線分ＴＲ―ＢＲの中点を通る直線Ｈとの交点Ｏとし、一方、部品の傾きは、直線３４ａと３４ｂのＸ軸に対する傾きと、直線３４ｃ、３４ｄのＹ軸に対する傾きをそれぞれ求め、その平均とする。なお、部品が極端に縦長あるいは横長の時は、長辺の傾きを部品傾きとする。
【００２６】
なお、ステップＳ９の処理で取得される直線式は、求めようとする部品の外形に外接する外接直線に相当しているので、ステップＳ１１、Ｓ１２の処理を省略して、ステップＳ９で求めた各辺での外接直線を登録して、これらの外接直線から部品中心と部品傾きを求めるようにしてもよい。
【００２７】
本発明におけるスキャンは、ステップＳ１で行われる１ライン毎に走査するラスタスキャンではなく、上述のステップＳ２、Ｓ４に示したように、スキャン直線式を作成して各エッジ点との距離を取得するためのスキャンとなっている。この方法は、図３（Ａ）に示したように、スキャン用直線４１が部品４０の辺４０ａに平行でないときは、直線４１と辺４０ａのエッジ点との距離は、辺４０ａに沿ったエッジ点でそれぞれ異なるのに対して、図３（Ｂ）に示したように、直線４１を傾斜させ、辺４０ａに平行にすると、前記距離が辺４０ａに沿った各エッジ点でほぼ同じ値になることを利用している。このために、ステップＳ３で順次所定角度づつスキャン直線式の傾きを変化させ、前記距離が各エッジ点で等しくなる直線を探している。なお、スキャン用直線４１のスキャン線４２の密度は、好ましくは、ラスタスキャン線の密度の同じ値に設定し、スキャン方向はラスタスキャンと同じ方向にする。
【００２８】
このように、スキャン直線式の傾きを変化させて上記距離が同じエッジ点数が一番多い直線式を選択することになるが、これだけではハフ変換と同じであり、例えば、図３（Ｃ）に示したようなリード端子４３ａ、４３ｂを有する部品４３の場合には、距離が同じエッジ点数が一番多い直線４４’が選ばれ、所望の外接直線が得られないことがある。従って、図３（Ｄ）に示したように、スキャン用直線４４に一番近いエッジ点４３ｄを取得して、それとほぼ同距離にあるエッジ点４３ｅを取得し、両エッジ点４３ｄと４３ｅが十分離れているという条件を入れるようにする（ステップＳ７の処理に相当）。この条件が満たされた場合には、図３（Ｅ）に示したように、スキャン用直線４４を同距離だけ平行移動すれば、求めようとする外接直線４５を得ることができる（ステップＳ９の処理に相当）。
【００２９】
また、スキャン直線式の角度変化の刻み（Δα）を細かくすれば、精度良く認識可能であるが、生産タクトが遅くなる弊害がでる。このため、スキャン変化幅を粗くしておおよその傾きを取得した後に（ステップＳ１３の処理に相当）、変化幅を細かくして処理結果を求めるようにする（ステップＳ１５の処理に相当）。このとき、例えば粗いスキャンは、±１０°の範囲を１°刻みで行い、細かいスキャンは±１°の範囲を０.１°刻みで行うこととする。この刻みをさらに細かくしていけば、求める精度を調整することも可能となる。
【００３０】
図４は、このようにスキャン直線式の角度を変化させることにより、部品３０の４辺の外接線を求める過程を説明しており、図４（Ａ）、（Ｂ）に示すスキャン直線の角度では、ステップＳ７の条件が満たされず、図４（Ｃ）に示すスキャン直線の角度で、初めて満たされることを示している。このように、スキャン用直線をＸ軸ないしＹ軸に対して回転させ、該直線とエッジ点間の距離が最短になるエッジ点が複数箇所において充分離れたところで検出される回転角度を求め、その回転角度におけるスキャン用直線を、距離が最短になるエッジ点まで平行移動させることにより部品に外接する外接直線３３ａ〜３３ｄを求め（ステップＳ１０の処理に相当）、部品３０の中心Ｏとその傾きを取得している（ステップＳ１７の処理に相当）。
【００３１】
なお、部品が図３（Ａ）、（Ｂ）に示すような平行４辺形の部品４０の場合には、図２のステップＳ７で判断される条件が満たされるので、処理時間が短くなり、本発明は、種々の形状の部品３０、４０、４３に適用できるものである。
【実施例２】
【００３２】
図５（Ａ）に示したように、直線部５１ａを有する部分５１と直線部５２ａを有する部分５２に分離して撮像されるような部品５０のような場合には、直線部５１ａと５２ａで形成される隙間をスキャンして、隙間内側の直線部５１ａ、５２ａに外接する２直線５３ａ、５３ｂを求めて、その幅が一番広いときのスキャン直線の傾きを部品傾きとし、重心を部品中心とする。この処理の流れが図６に図示されている。
【００３３】
まず、部品５０の画像を４辺でラスタスキャンして外形矩形５４を取得する（ステップＳ２１、Ｓ２２）。次に、スキャン用直線５５から直線部５１ａと５２ａで形成される隙間に合ったスキャンを行うことにより部品５０のエッジ点（黒丸で図示）を取得し（ステップＳ２３）、各スキャン線での立下りから立ち上がりが現れる組み合わせエッジ点を取得し（ステップＳ２４）、その中で隙間サイズの±２０％以上となるものをノイズとして削除し（ステップＳ２５）、ステップＳ２５の左側の図に示したように、直線部５１ａ、５２ａでの組み合わせエッジ点を取得する。
【００３４】
続いて、各組み合わせエッジ点の中点（Ｘ印）を取得し（ステップＳ２６）、各中点の最小２乗直線を求めて、それを隙間中央にある直線５６とする（ステップＳ２７）。そして、直線の幅方向にスキャンを行って隙間内側の直線部５１ａ、５２ａのエッジ点を取得し（ステップＳ２８）、隙間中央直線５６に傾きを加えて隙間内側にスキャン用直線５７を設定し、スキャン直線式を定める（ステップＳ２９）。
【００３５】
以上の処理で、部品５０の直線部５１ａと５２ａにあるエッジ点に対して、スキャン用直線５７が設定されたので、その直線からスキャンを行い左右両方のエッジ点までの距離を取得し（ステップＳ３０）、最短距離のエッジ点を抽出し、それとほぼ同距離のエッジ点を検出する（ステップＳ３１）。
【００３６】
続いて、ステップＳ３１で求めたエッジ点の両端の距離が充分な距離であるかを判定し、それでなければステップＳ２９に戻り、スキャン用直線５７にさらに所定傾きを付加して以下の処理を繰り返す（ステップＳ３２、Ｓ３３）。この処理は、図２のステップＳ７、Ｓ８と同じ考え方に基づく。また、スキャン用直線５７の傾きが外れていると、ステップＳ３１で最短距離とほぼ同距離のエッジ点が取得できないので、それが取得できなかった場合も、ステップＳ２９に戻って、スキャン直線式にさらに所定傾きを付加してステップＳ３０以下の処理を繰り返す。
【００３７】
このようにして、スキャン用直線５７とエッジ点間の距離が最短になるエッジ点が所定距離（例えば３０画素）以上離れて複数箇所において検出されたので、ステップＳ３４の右側の図に示すように最短距離エッジ点を通りスキャン直線５７に平行な直線５７ａ、５７ｂを示す直線式を取得し（ステップＳ３４）、２直線５７ａ、５７ｂ間の距離ｄを取得する（ステップＳ３５）。
【００３８】
続いて、ステップＳ３６において、同ステップの右側の図に示すように、スキャン用直線５７の傾きを粗く変化させてステップＳ２９からＳ３５の処理を繰り返し、直線間距離ｄが一番広くなるときのスキャン直線式の傾きを取得し（ステップＳ３７）、この傾き角度周辺でスキャン直線式の傾きの変化度（振幅）を細かくしてステップＳ２９からＳ３５の処理を繰り返す（ステップＳ３８）。
【００３９】
このような処理により直線間距離ｄが最大値ｄ’となるときの直線５８ａあるいは５８ｂの傾きθを取得し（ステップＳ３９）、また、部品５０の重心を公知の方法で取得する（ステップＳ４０）。そして、部品傾きを、ステップＳ３９で求めた角度θとし、また部品中心を、ステップＳ４０で取得した重心として、それを部品実装機のメイン制御装置１３に送信する（ステップＳ４１）。
【実施例３】
【００４０】
以上は、部品の辺が４辺（実施例１）、あるいは２辺（実施例２）を有する部品の例であったが、図７（Ａ）に示すように、１辺（下辺）６０ａのみが外接直線を持つような部品６０の場合でも同じ原理を利用して位置決めをすることが可能である。
【００４１】
この場合には、下辺６０ａのみエッジ点を取得してスキャン直線を設定し、図７（Ｂ）に示したように、この辺６０ａに外接する外接直線６１を求め、その外接直線に垂直な直線が部品６０の外側に接する直線６２を求めて、２直線６１、６２の交点Ｐを求める。部品データ格納メモリ８には、部品の横幅Ｈ、縦幅Ｖが格納されているので、この部品サイズから、ＰよりＨ／２、Ｖ／２離れた点を部品中心Ｃとし、外接直線６１、あるいはそれと直交する直線６２の傾きを部品傾きとする。
【００４２】
また、外接する辺が２，３辺の部品でも同様にいずれか１つの辺に対して外接直線を求め、この外接直線と部品サイズから、部品中心と部品傾きを算出するようにしてもよい。
【実施例４】
【００４３】
実施例１から実施例３では、画像はそのままでスキャン直線式に傾きを与えて部品傾きを算出していたが、逆に画像を撮像軸を中心に回転させてスキャン用直線はＸ、Ｙ軸に平行なものとしてスキャンを行って位置決めを行ってもよい。画像を回転させて外接直線を取得する方法は、撮像した画像をメモリ上でアフィン変換等を使用して部品画像を徐々に回転させ、その画像に対してＸＹ軸に平行なラスタスキャンを行って、外接直線を取得する。そして、一番外接点が多い時の画像回転角度を外接直線の傾きとし、その外接直線から部品中心、傾きを算出する。また、画像を回転させるのは、処理時間を要するので、ラスタスキャンにより取得されたエッジ点（ステップＳ１、Ｓ２３）から定まる画像を回転させるようにしてもよい。
【図面の簡単な説明】
【００４４】
【図１】本発明の部品位置検出に利用される装置の構成を示した構成図である。
【図２】部品位置検出の全体の流れを示したフローチャートである。
【図３】本発明の部品位置検出の原理を説明する説明図である。
【図４】スキャン直線式の傾きを変化させて所望の外接直線を求める過程を示した説明図である。
【図５】分割されて撮像される部品の位置検出の原理を説明する説明図である。
【図６】図５に示した部品の位置検出の流れを説明するフローチャートである。
【図７】外接直線と部品データに基づいて部品中心と傾きを算出する例を説明した説明図である。
【図８】部品中心と傾きの算出を説明する説明図である。
【図９】辺に凹凸のある部品の上面図である。
【符号の説明】
【００４５】
２  部品
４  撮像装置
６  画像メモリ
８  部品データ格納メモリ
１２  画像処理装置
１３  メイン制御装置
３０、４０、４３、５０、６０  部品
３２ａ、３２ｂ、４１、４４、５７  スキャン直線式
【図１】
2006260315.tif 000003
【図２】
2006260315.tif 000004
【図３】
2006260315.tif 000005
【図４】
2006260315.tif 000006
【図５】
2006260315.tif 000007
【図６】
2006260315.tif 000008
【図７】
2006260315.tif 000009
【図８】
2006260315.tif 000010
【図９】
2006260315.tif 000011