■
No.3:
XLDデータオブジェクトの円・直線近似 |
本シリーズ企画の第1号および第2号にて、XLDデータオブジェクトの抽出方法とその操作性について解説しました。このようにして得られたXLDデータを用いて対象ワークの座標、径、曲率などを計測する場合、円成分、楕円成分、直線成分にて各XLDデータを近似する必要があります。本号ではこれらの近似手法について解説するとともに、さらなる計測精度の向上を実現するテクニックをご紹介します。
|
■
XLDデータオブジェクトの直線近似
XLDデータを直線成分で近似することにより、前号のダイアモンドの事例のように、線分の交点の座標や角度を算出することができるようになります。それだけでなく、活用方法によっては以下の事例のように、直線近似したXLDと近似する前の元々のXLDの差分をとることにより、剃刃の刃先の小さな欠けを検出することができます。
|
剃刃の欠け検出(黄線:エッジ検出、緑線:直線近似した結果、赤線:差分をとって一定以上の差があった部分)
|
■
XLDデータオブジェクトの円・楕円近似
XLDデータを円・楕円成分で近似することにより、対象物の中心座標、直径(長軸・短軸)、曲率、円弧成分などを計測することができるようになります。また、下記のような画像の場合、影の影響によりXLDの抽出が正確に行われないため、通常では左図のように近似位置がズレてしまいます。しかし、HALCONの近似手法を用いると、右図の緑線のようにノイズに左右されることなく正確な近似が行えます。
|
BGAボールの径計測 (左図:通常の円近似、右図:HALCONの円近似)
|
さらに難解な要求として、以下の図のように輪郭線が波打っている場合、従来の手法で楕円近似すると赤線のように位置ズレが発生します。しかし最新版のHALCON7.1では、幾何学的手法に基づく楕円近似のアルゴリズムが増加され、このような状況でも正確に計測が行えるようになりました。また、要求によっては波打った部分の影響を考慮した方が都合が良い場合があり、その際には従来の手法と使い分けることで柔軟に対応することができます。
|
楕円近似の比較(赤線:従来の楕円近似、緑線:幾何学的手法に基づく楕円近似)
|
■
特殊な円近似
複雑な形状に対して円近似を適用すると、余分なエッジに邪魔されて近似そのものが困難なケースがよくあります。以下の例では、内部の四角形成分が複雑に入り組む状態で、外側の円成分をうまく抽出・結合する手法が求められます。HALCON7.1でサポートされた円成分の結合手法は、外側の円成分同士をうまく結合する機能を提供します。この手法は内部的に以下の計算を行います:
1) 以下のAで求めた各エッジの中心座標を個別に算出
2) 計算した各エッジの中心座標が、指定した範囲に存在するXLDのみを抽出(外円のエッジ成分
は共通して一定範囲に存在し、四角形成分の中心とは異なる位置にある)
3) 中心座標から各XLDがどれだけ離れているか半径を指定(外円のエッジ成分にて赤線と緑線を
中心からの半径の情報をベースに区別することができる)
4) 上記の手法で分類したエッジ同士を結合する
|
@元画像
|
A各エッジを抽出して、一定の曲率ポイントで分割
|
B外側の円成分同士を結合
|
C結合したXLDを用いて円近似
|
本機能を上手く活用することにより、以下のようなエアキャップの径計測も容易に実現することが可能です。この例ではエアキャップのコントラストが低いために、抽出したエッジ(XLD)が分断されてしまうのに対して、円方向での結合機能をうまく活用して解決できます。
|
@元画像
|
A低コントラストのため分断されたエッジ
|
B同じ円弧成分同士のエッジを結合
|
C結合したXLDを用いて円近似・径計測
|
|
本号に関連するサンプルプログラムをご希望の方は、以下のサイトからダウンロードしていただけます。
program.zip
ただし、本プログラムの実行にはHALCON7.1のライセンスが必要となりますので、評価用ライセンスをご希望の方は弊社までお問い合わせください(techimage@linx.jp)。
|