python opencv による2値化

#!/usr/bin/python
#-*- coding:utf-8 -*-

import numpy as np
import cv2

# original image (gray scale image)
org_img = cv2.imread('image_example.jpg', 0)

# preference
THRESHOLD = 127
MAXVALUE  = 255

# binarization using opencv
_, bin_cv2 = cv2.threshold(org_img, THRESHOLD, MAXVALUE, cv2.THRESH_BINARY)

# binarization not using opencv
bin_npy = np.zeros(org_img.shape, org_img.dtype)
bin_npy[np.where(org_img > THRESHOLD)] = MAXVALUE

# check
cv2.imwrite('original.png',   org_img)
cv2.imwrite('binary_cv2.png', bin_cv2)
cv2.imwrite('binary_npy.png', bin_npy)

 

ytbilly3636.hateblo.jp