import cv2 as cv
import numpy as np
from matplotlib import pyplot as plt
def big_image_binary(image):
print(image.shape)
cw = 256
ch = 256
h, w = image.shape[:2]
gray = cv.cvtColor(image, cv.COLOR_BGR2GRAY)
for row in range(0, h, ch):
for col in range(0, w, cw):
roi = gray[row:row+ch, col:col+cw]
print(np.std(roi), np.mean(roi))
dev = np.std(roi)
if dev < 15:
gray[row:row+ch, col:col+cw] = 255
else:
ret,dst=cv.threshold(roi,0,255,cv.THRESH_BINARY | cv.THRESH_OTSU)
gray[row:row+ch, col:col+cw] = dst
cv.imwrite('./result_binary.png', gray)
src = cv.imread('./11.jpg') # blue, green, red
# cv.namedWindow('input image', cv.WINDOW_AUTOSIZE)
# cv.imshow('input image', src)
big_image_binary(src)
cv.waitKey(0)
cv.destroyAllWindows()
转载请注明来源,欢迎对文章中的引用来源进行考证,欢迎指出任何有错误或不够清晰的表达。可以在下面评论区评论,也可以邮件至 2621041184@qq.com