HALCONで実現する高精度計測

画像処理により対象物の様々な形状を高精度に計測するには、サブピクセル精度で対象物のエッジ情報をうまく抽出する必要があります。また、取得したエッジ情報から興味の対象となるエッジを選別したり、エッジを部分的に分割したり、もしくは直線的・曲線的に隣接するエッジ同士を結合するといった作業が求められます。そして、最終的にこれらのエッジを円成分や直線成分で近似することで、サブピクセル精度による高精度な計測が実現できます。

これら一連の処理を極めて柔軟に、かつ簡単に実現できるのがHALCONの特徴です。その詳細をHALCON以外のマシンビジョンツールと比較することにより、HALCONの設計コンセプトがいかに優れているかをご説明します。

本シリーズ『HALCONによる優れた高精度計測』は、以下の3号に分けてご紹介します:
1) HALCONのデータオブジェクト
2) XLDデータオブジェクトの抽出と操作性
3) XLDデータオブジェクトの円・直線近似

 

No.2: XLDデータオブジェクトの抽出と操作性

HALCONではピクセル間にまたがるデータを測定するため、XLDオブジェクト(Extended Line Description)を使用することでサブピクセル精度の計測を実現しています。HALCONのデータオブジェクトに関する詳しい紹介は、前号のLinX Expressをご参照ください。

XLDデータオブジェクトの抽出
XLDデータオブジェクトを抽出する関数は、ピクセル数以上のデータを取り扱うため通常より多くの時間を要します。また、このような処理関数を画像全体に適応すると、実行時間の大きな損失となります。そこで、前号で紹介したRegionオブジェクトを使用することで、ある画像処理の結果(Region)を用いて、元画像から解析範囲を絞込むことができます。そして、範囲を絞込んだ画像からXLDデータの抽出を行うことで、データ抽出の処理時間を大幅に短縮することが出来ます。

領域を絞って抽出した場合: 23.2msec

画像全体から抽出した場合: 613.6msec

本機能は他社にないHALCONを代表する機能であり、高速化が求められるマシンビジョンシステムにて絶大なる効果を発揮します。本機能はエッジ抽出の高速化だけでなく、パターンマッチングでも解析範囲を絞り込むことで高速化が実現できます。

XLDオブジェクトの操作性
通常のアプリケーションでは、対象物と背景のコントラスト差が少ないなどの影響により、XLDオブジェクトを安定して抽出することが困難です。つまり、抽出したいエッジが途中で切れてしまったり、対象外の細かいエッジノイズを抽出してしまったり、といった悩みを抱えることになります。これに対して、HALCONの便利な関数群を利用することで、以下の通り巧みに目的のエッジを操作・抽出することができます。

【エッジの分割】
今回の目的ではダイアモンドの高さを計測したいので、直線成分のエッジに分割しなければなりません。そこで、「segment_contours_xld」関数を用いると、曲線や直線の成分に応じたパラメータを指定することにより、任意の箇所で自由にXLDオブジェクトを分割することができます。以下の例では、直線方向を向いていない“反り”を分割することで、後の操作により“反り”だけを除外できます。

   

エッジ分割前

 

    

エッジ分割後

【エッジの選択】
ノイズの影響によって抽出された細かなエッジを除外したり、誤った方向成分を持つエッジを除外するには、「select_contours_xld」関数を用います。これにより、XLDの形状特徴量を指定して任意のXLDだけを抽出することができます。以下の例では、直線成分を持ち、一定の長さを持っているXLDを抽出しています。

   

エッジ選択前

 

    

エッジ選択後

【エッジの結合】
直線や円などで近似を行う場合、より多くのエッジデータを活用することで精度を向上させることができます。そのためには、興味の対象となるエッジ同士を結合させる必要があり、HALCONでは「union_collinear_contours_xld」関数を利用します。この関数は、結合したいエッジ同士の相対距離や相対角度を指定することで、任意のエッジを自由に結合することが出来ます。今回の例では、ダイアモンドの斜辺を直線で近似することにより、その交点から高さを求めることを目的としているため、斜辺に平行なエッジ(XLD)同士を結合します。

   

エッジ結合前

 

    

エッジ結合後

No.3では、抽出したXLDデータを用いて円・直線成分で近似することにより、最終的に計測を行うところまでを解説いたします。ご期待ください。

なお、本号に関連するサンプルプログラムをご希望の方は、以下のサイトからダウンロードしていただけます。

    program.zip

ただし、本プログラムの実行にはHALCONライセンスが必要となりますので、ライセンスを所有されていない方はHALCON活用法に付随する評価版CDのご利用をお勧めいたします。HALCON活用法のご購入は以下のページを参照ください。

HALCON活用法 特別キャンペーン                

2006年 8月末までを特別キャンペーン期間とし、「HALCON活用法」を通常の半額となる1000円(送料別)にてご案内することになりました。是非ともこの機会に「HALCON活用法」のご購入をご検討いただければ幸いです。