2値画像とは
階調が2つの画像です。
0が黒、1が白の2値です。
python+OpenCV
%matplotlib inline
import matplotlib.pyplot as plt
import cv2
import numpy as np
#グレースケールで読み込む
gray = cv2.imread('haruna_kankore.png', 0)
#画像を2値化
ret, th = cv2.threshold(gray, 127, 255, cv2.THRESH_BINARY)
#画像を保存
cv2.imwrite('binary.png', th)
adap = cv2.adaptiveThreshold(gray, 255, cv2.ADAPTIVE_THRESH_MEAN_C, cv2.THRESH_BINARY, 11, 2)
cv2.imwrite("adap.png", adap)
ret, OTSU = cv2.threshold(gray, 0, 255, cv2.THRESH_OTSU)
cv2.imwrite("OTSU.png", OTSU)
出力結果
元画像
2値化
adp
OTSU

