当我写这些命令时
out = ones(size(ben))
imshow(out)
输出是一张白色图片,但我希望看起来几乎是黑暗的图片,因为rgb值是1,1,1。当我给255,255,255它也给出了白色图片。这不是一个两难的局面吗?
答案 0 :(得分:3)
尝试out = ones(size(ben), 'uint8');
ones()
会创建一个双精度数组。当imshow()
获取双精度数组时,它假定像素值的范围介于0和1之间,并将白色指定为大于1的任何值。但是,如果将uint8
数组传递给{{ 1}}它将假设范围在0到255之间。
您也可以尝试使用imshow()
代替imagesc();
,但您可能需要在病房后imshow()
获取灰度图像。
另一种方法是在显示前重新缩放图像:
colormap gray