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