HALCONではXLD(Extended Line Description)と呼ばれるデータ形式を用いることによって、対象のエッジ情報をサブピクセル精度で計測することが可能です。さらにこのXLDデータは高精度な情報であるにもかかわらず容易に扱うことができます。
ここではHALCONで用いられるXLDデータの扱い方の一例として、エアキャップの品質検査の事例を紹介します。一見扱いが難しそうなXLDデータですが、下に示す操作それぞれが関数一つ実行するだけで実現可能であり、容易に扱うことができます。
左画像はエアキャップを撮影したものです。ここでは、品質検査のために各エアキャップの径を高精度に計測することが目的です。
HALCONでは一つの関数実行で画像中のエッジ情報をサブピクセル精度で取得することが可能です。
ここでは左画像のようにエッジを抽出することができましたが、エアキャップ部分のコントラストが低いためエッジが分断されてしまうという問題が起こっています。このような場合であっても、HALCONでは容易に解決することが可能です。
まず短いXLDオブジェクトはノイズとして取り除きます。抽出したエッジのうち、長さの特徴量を用いてある程度長いエッジのみを左画像のように抽出します。
抽出したエッジのうち今度は円方向の特徴を用いて、同心円上のエッジ同士を結合します。これによって、左画像のように分断されていた同心円上のエッジが一つにまとめられます。
最後にそれぞれのエッジに対して円近似を行うことで、各エアキャップの径を高精度に計測することができます。計測した径で円を描画すると左画像のようになり、各エアキャップに対して正確に計測できていることが分かります。