画像二値化処理

機能

設定されたしきい値によって画像のピクセルをフィルタリングし、設定されたルールに従ってしきい値以上・以下のピクセルを二値化します。

注釈

画像のピクセルのグレー値が最大値と最小値の2つの値、つまり「黒または白のいずれか」しかない場合、このような画像は2値画像と呼ばれます。

非二値画像を二値画像に演算することを画像の二値化といいます。

../../../../../_images/functional_description2.png

使用シーン

汎用の画像処理ステップです。通常、2D画像でしきい値の条件を満たすピクセルを分割するために使用されます。

入力と出力

../../../../../_images/input_and_output8.png

パラメータ説明

このステップでは、特徴対象物と背景を分割するために、4種類の方法が用意されています。

  • AdaptiveThreshold: グローバル適応しきい値。THRESH_BINARY、THRESH_BINARY_INVの2つの分割操作タイプを選択可能です。

  • DualThreshold: 2つのしきい値。この方法は、高しきい値または低しきい値の設定により、しきい値の条件を満たすピクセルを分割できます。

  • DynamicThreshold: 動的しきい値。4種類のしきい値分割タイプ(Light、Dark、InRange、OutOfRange)と3種類の画像フィルタリング方法(平均化フィルタ、ガウシアンフィルタ、メディアンフィルタ)を選択可能です。また、いくつかの補助パラメータ(ピクセルのオフセット、フィルタのカーネルサイズ)も設定できます。

  • Threshold: グローバル固定しきい値。この方法では、固定なしきい値を設定し、7種類の分割操作タイプ(THRESH_BINARY、THRESH_BINARY_INV、THRESH_TRUNC、THRESH_TOZERO、THRESH_TOZERO_INV、THRESH_OTSU、THRESH_TRIANGLE)を用いて、しきい値の条件を満たすピクセルを分割できます。

AdaptiveThreshold

分割タイプ
パラメータ説明:このパラメータは、特徴対象物と背景を分割する操作タイプを選択するために使用されます。
オプション:THRESH_BINARY、THRESH_BINARY_INV
  • THRESH_BINARY:しきい値を超える強度を持つピクセルのマスク画像を生成します。

  • THRESH_BINARY:しきい値を下回る強度を持つピクセルのマスク画像を生成します。

初期値:THRESH_BINARY
調整アドバイス:実際のニーズに応じて選択してください。

DualThreshold

低しきい値
パラメータ説明:低しきい値が高しきい値より低く設定された場合、2つのしきい値の間の値を持つピクセルは255に設定され、その他のピクセルは0に設定されます。低しきい値が高しきい値よりも高く設定されている場合、2つのしきい値で設定された間隔を超えた値を持つピクセルは255に設定され、その他のピクセルは0に設定されます。
初期値:0
調整アドバイス:実際のニーズに応じて設定してください。
高しきい値
パラメータ説明:「低しきい値」と同じです。
初期値:100
調整アドバイス:実際のニーズに応じて設定してください。

DynamicThreshold

しきい値分割タイプ
パラメータ説明:このパラメータは、どのピクセルを255に設定し、どのピクセルを0に設定するかを設定します。
オプション:明るい領域、暗い領域、範囲内、範囲外。 \(P_o\) を元の画像のピクセルにし、 \(P_f\) をフィルタリング後の画像内の \(P_o\) が対応するピクセルにし、 \(offect\)ピクセル値のオフセット パラメータにした場合、各分割タイプの説明は下記のようになります。
  • 明るい領域: \(P_o ≥ P_f + offect\) の場合、 \(P_o\) を255に設定し、それ以外の場合は0に設定します。

  • 暗い領域: \(P_o ≤ P_f - offect\) の場合、 \(P_o\) を255に設定し、それ以外の場合は0に設定します。

  • 範囲内: \(P_f - offect ≤ P_o ≤ P_f + offect\) の場合、 \(P_o\) を255に設定し、それ以外の場合は0に設定します。

  • 範囲外: \(P_o < P_f - offect\) または \(P_o > P_f + offect\) の場合、 \(P_o\) を255に設定し、それ以外の場合は0に設定します。

画像のフィルタリング方法
パラメータ説明:このパラメータは、画像フィルタリングの方法を選択するために使用されます。
オプション:平均化フィルタ、ガウシアンフィルタ、メディアンフィルタ。
  • 平均化フィルタ:スライディング ウィンドウの中心値をウィンドウ内の全ピクセル値の平均に置き換えることで、画像を滑らかにします。

  • ガウシアンフィルタ:画像を滑らかにし、ディテールとノイズを除去します。

  • メディアンフィルタ:各ピクセルをウィンドウ内の隣接ピクセルの中央値に置き換えます。

初期値:平均化フィルタ。
調整説明:実際のニーズに応じて選択してください。
フィルタリングのカーネルサイズ
パラメータ説明:このパラメータは、画像フィルタリングのためのスライディングウィンドウの辺の長さ(ピクセル単位)を設定するために使用されます。
初期値:3
調整説明:ウィンドウの中心には常にピクセルが存在する必要があるため、奇数で入力してください。偶数で入力した場合は、1つずつ増加します。
ピクセル値のオフセット
パラメータ説明:フィルタリング後の画像のすべてのピクセルに適用されるオフセットピクセル値を設定するために使用されます。
初期値:15.00

Threshold

しきい値 (0–255)
パラメータ説明:このパラメータは、画像ピクセルをフィルタリングするためのしきい値を設定するために使用されます。
初期値:128
調整アドバイス:実際のニーズに応じて設定してください。
分割タイプ
パラメータ説明:このパラメータは、特徴対象物と背景を分割する操作タイプを選択するために使用されます。
オプション:THRESH_BINARY、THRESH_BINARY_INV、THRESH_TRUNC、THRESH_TOZERO、THRESH_TOZERO_INV、THRESH_OTSU、THRESH_TRIANGLE
  • THRESH_BINARY:画像のピクセルのグレー値が設定されたしきい値より大きい場合は、255に設定されます。それ以外の場合は0に設定されます。

  • THRESH_BINARY_INV:画像のピクセルのグレー値が設定されたしきい値より大きい場合は、0に設定されます。それ以外の場合は255に設定されます。

  • THRESH_TRUNC:画像のピクセルのグレー値が設定されたしきい値より大きい場合は、その値が設定されたしきい値に設定されあます。それ以外の場合は、元のピクセルのグレー値を保持します。

  • THRESH_TOZERO:画像のピクセルのグレー値が設定されたしきい値より大きい場合は、元のピクセルのグレー値を保持します。それ以外の場合は0に設定されます。

  • THRESH_TOZERO_INV:画像のピクセルのグレー値が設定されたしきい値より大きい場合は、0に設定されます。それ以外の場合は元のピクセルのグレー値を保持します。

  • THRESH_OTSU:「Otsu法(大津法)」を使ってグローバルなしきい値を求めます。

  • THRESH_TRIANGLE: 「三角法」を使ってグローバルなしきい値を求めます。

初期値:THRESH_BINARY
調整アドバイス:THRESH_BINARY、THRESH_BINARY_INVを使用することをお勧めします。