plt.imshow()显示灰度图色差问题,图片绿油油的
import pywt
import numpy as np
from cv2 import cv2
import matplotlib.pyplot as plt
img = cv2.imread("lenags15.bmp", 0)
w = 'sym4' # 定义小波基的类型
l = 3 # 变换层次为3
coeffs = pywt.wavedec2(data=img, wavelet=w, level=l)
threshold = 0.04 # 设置滤波阈值
denoised_img = pywt.waverec2(coeffs, 'sym4' ,mode="sym")
denoised_img = denoised_img.astype(np.uint8) #把浮点数转为8位整型
plt.imshow(denoised_img) #显示图片
结果如下
原因
显示灰度图时 plt.imshow(dataArray)
要指定一个参数 cmap='gray'
# plt.imshow(denoised_img) #显示图片
plt.imshow(denoised_img,cmap='gray')
结果如下