1. 2値化とは
2値化とは、画像をある閾値を基準にして、2つの階調で表現される2値画像(binary image)に変換する処理のことを指します。具体的には、画像の各画素が0から255の256階調の値で表現されている場合、これをある値(例えば10)より大きいなら1、10以下なら0と変換します。すると、各画素が0, 255の2階調で表される2値画像が得られます。
2. OpenCVでの2値化の方法
OpenCVでは、cv2.threshold()
関数を使って2値化を行います。この関数は、ある1つの閾値を決めて、2値化を行います。
ret, dst = cv2.threshold(src, threshold, maxValue, thresholdType)
ここで、
– src
: 入力画像(uint8またはfloat型のnumpy配列)
– threshold
: 閾値
– maxValue
: cv2.THRESH_BINARY, cv2.THRESH_BINARY_INVの場合に使用する値
– thresholdType
: 2値化の方法
となります。
3. thresholdTypeについて
thresholdType
は2値化の方法を指定します。具体的には以下のような種類があります。
cv2.THRESH_BINARY
: 閾値以下の値を0、それ以外の値をmaxValue
にして2値化を行います。cv2.THRESH_BINARY_INV
: 閾値以下の値をmaxValue
、それ以外の値を0にして2値化を行います。
以上がPythonとOpenCVを使った画像の2値化の基本的な知識となります。これらの知識を活用して、具体的な画像処理に挑戦してみてください。.