imshow()
这是因为imshow()显示图像时对double型是认为在0-1(灰度空间)范围内,即大于1时都是显示为白色,而imshow()显示uint8型时是0~255范围。而经过运算的范围在0-255之间的double型数据就被不正常得显示为白色图像了。
解决方法:
(1)用 imshow(mat2gray(X)) % 将double图像进行归一化
(2)用 imshow(uint8(X)) % 将double图像转化为整型
rgb2gray()
解决方法:
x = rgb2gray(uint8(x)); % 彩色图像转灰度图像时,不能是double类型