当我写的图像出现黑便(When I write the image it appears black

2019-10-19 00:10发布

我有一个程序,返回grayscale图像。 但是,当我尝试写的形象,似乎完全black 。 这是为什么? 我怎样才能写出图像,并得到预期的结果?

谢谢。

Answer 1:

首先检查您的数据的类型。 你可以投的类型由例如数据的双重()UINT16()等。(检查类型转换的帮助)。 这里是你如何重新调整自己的价值观,以UINT16的强度范围,用65K〜可能不同的值无符号整数的例子。 当然,铸造导致强度值的精度要求不高。

new_img(:,:) = uint16((new_img(:,:)./max(max(new_img(:,:),[],1)))*65536);

之后,你应该能够将数据写入到文件。



Answer 2:

请确保您的灰度化图像是正确的类。 此外检查所生成的图像中的值。 如果他们只是过低都将显示为黑色。 如果你能提供更具体的信息,有可能给予更详细的答案。



Answer 3:

如果你的二进制图像上工作的(之前被转换为灰色)和您关于将其转换为灰度,则突然像素从范围内变化[0,1]〜[0,255]。 所以在二进制图象的值“1”是完全白色,但在灰度图像几乎是黑色的。

尝试这个:

img = imread('image_name.jpg');
imshow(img*50)

它让你确保你的图像是黑色或只是其像素值是不恰当的。



文章来源: When I write the image it appears black