将图像转化成为非黑即白的,只有两种颜色的图像。
import cv2
import numpy
img=cv2.imread('aniya.jpg',cv2.IMREAD_REDUCED_COLOR_2)
h,w,c=img.shape
cv2.imshow('img0',img)
for row in range(h):
for col in range(w):
b,g,r=img[row,col]
if(b>127 or g>127 or r>127): #如果b、g、r(蓝绿红)任何一个颜色>127,那么则让这个像素点变成白色
b=255
g=255
r=255
else: #反之,则将像素点变成黑色
b=0
g=0
r=0
img[row,col]=[b,g,r]
#显示图像
cv2.imshow('img',img)
#保存图像
cv2.imwrite("D:/img.jpg",img)
print(img.shape)
cv2.waitKey(0)
cv2.destroyAllWindows()
下面是结果对比图。