ブロブ

マシンビジョンの用語では、2 次元で、形状が変化しやすく、同じようにシェーディングされた連結されているピクセルのグループは、「ブロブ」と呼ばれます。これらのブロブを画像から抽出し、対象領域 (ROI) 内でブロブを検出し、それらを特定の基準に基づいてソートするプロセスは、ブロブ解析と呼ばれます。

In-Sight ビジョンシステムでは、ブロブツールの次の関数を使用して、ブロブ解析を実行します。

  • DetectBlobs 関数: 画像内のブロブを検出し、そのデータを抽出します。この関数は、ExtractBlobs より新しいアルゴリズムを使用してします。
  • ExtractBlobs 関数: 画像内のブロブを検出し、そのデータを抽出します。この関数は、ブロブ解析の最初のステップです。
  • FindBlobs 関数: 抽出されたブロブのリストを、特定の基準および検出されたブロブがその基準にどの程度マッチするかに基づいて、フィルタおよびソートします。
  • SortBlobs 関数:  フィクスチャに対するブロブの位置に基づいて、ブロブのセットをソートします。
:  FindBlobs および SortBlobs 関数の両方とも、ブロブデータ構造体を参照する必要があります。このデータ構造体は、DetectBlobs、ExtractBlobs、FindBlobs、または SortBlobs 関数によって作成することができます。

In-Sight についてブロブツール

ブロブ解析とは

In-Sight ブロブツールは、接続性の解析と呼ばれるタイプのブロブ解析を実行し、このステップは DetectBlobs または ExtractBlobs 関数を使用して実行されます。DetectBlobs または ExtractBlobs 関数をスプレッドシートに挿入してそのパラメータを設定すると、最初に ROI をセグメント化することによって解析の実行が開始されます。

このプロセス中、ROI 内のピクセルは、グレースケールしきい値に基づいて、ブロブと背景の 2 つのカテゴリに分類されます。このしきい値でピクセルを切り分けて、しきい値を下回るピクセルは黒として分類し、上回るピクセルは白として分類します。

:  このしきい値を指定するには、DetectBlobs または ExtractBlobs 関数の [しきい値] パラメータの自動設定を使用するか、試行錯誤しながら手動設定するか、またはヒストグラム関数の計算結果への参照として使用します。

このプロセスが実行されていくにつれて、ピクセルが検証され、その周囲のピクセルに接続されているかどうかが判定されます。ブロブピクセルの左右、上下、または斜めにある類似した値の別のピクセルに、ブロブピクセルが接触している場合、ブロブピクセルが周囲のピクセルに接続していると考えられます。背景ピクセルの左右、または上下にある類似した値の別のピクセルに、背景ピクセルが接触している場合、背景ピクセルが周囲のピクセルに接続していると考えられます。

下記の図は、In-Sight ブロブツールで画像を解析する方法を示しています。この例では、グレースケールしきい値 150 を使用して、画像をブロブピクセルと背景ピクセルにセグメント化しています。グレースケール値が 150 以上であるピクセルはすべて、白または背景として分類され、150 未満の値を持つピクセルはすべて、黒ピクセルまたはブロブピクセルとして分類されます。

ブロブが画像から抽出されると、DetectBlobs または ExtractBlobs 関数によって自動的に、ブロブデータ構造体および抽出されたブロブに関するデータを含んでいる結果データが作成されます。返された情報は、FindBlobs および SortBlobs 関数によって使用され、検出されたその他のブロブをその物理的な特性と位置に基づいて、それぞれフィルタおよびソートすることができます。

FindBlobs 関数は ROI 内にあるブロブを解析して、検出されたブロブが指定した要件とマッチするかどうかを調べます。要件を満たすブロブが返され、それらがどの程度要件にマッチするかに関して、降順に得点化されます。

SortBlobs 関数は ROI 内にあるブロブを解析して、ブロブがフィクスチャに対してどこに位置しているかを特定します。このことは、別のブロブに対するブロブの位置を特定する場合に役立ち、DetectBlobs または ExtractBlobs 関数の 1 つを使用して ROI 内の多数のブロブを一度に検出することができます。

ブロブ解析を使用するタイミング

In-Sight ブロブツールは、次の条件が適用される場合に最適に使用することができます。

  • 画像が 2 次元のオブジェクトのものである。
  • 画像でピクセルの白黒の差がはっきりしており、高コントラストになっている。
:  In-Sight ブロブツールはグレースケール画像のみを解析します。カラー画像はすべて、自動的にグレースケール値に変換されます。

ブロブ解析を使用する理由

以上の条件が満たされると、ブロブ解析は次のアプリケーションで非常に役立つことができます。

  • 大まかな測定のアプリケーション。パーツの特定方向の幅を特定するために正方形の寸法を計測するなどします。
  • 初回通過の位置決めアプリケーション。ここでブロブツールを使用して大まかなフィクスチャをすばやく探し、別のツール用に配置します。
  • 有無を調べるアプリケーション。ここでブロブツールを使用して、画像内のブロブの有無を判定します。
  • 計数アプリケーション。ここでブロブツールを使用して、面積や周囲長などの特性に基づいて、ブロブの計数およびソートを設定することができます。

ブロブ解析の実行方法

In-Sight ブロブツールでは、ブロブ解析のプロセスは、次の 3 つに分けることができます。

ステップ 1 - 画像を調べて、画像とその条件がブロブ解析の要件を満たすかどうかを判定します。

ステップ 2 - DetectBlobs または ExtractBlobs 関数をスプレッドシートに挿入して適切に設定し、画像内のブロブを探して識別します。

ステップ 3 - FindBlobs または SortBlobs 関数をスプレッドシートに挿入し、ブロブの物理的な特性または位置に基づいて、検出されたブロブのリストをそれぞれフィルタします。