0

我正在尝试以灰度绘制一组数据。但是,我得到的图像似乎总是蓝色的。

我有一组数据,albedo范围从[0, 0.068],即1X1 double.

我的代码是:

 for all px,py
    albedoMax = 0.0679; albedoMin = 0;
    out_im(px,py) = 1/(albedoMax-albedoMin)*(albedo - albedoMin);
    imshow(out_im);
    drawnow;
 end

基本上px,py是我必须迭代的图像坐标,并且公式试图将输入范围映射[0, 0.068][0 1]. 但是,通过运行此代码,我注意到输出始终是蓝色的。我想知道出了什么问题。

谢谢您的帮助。

4

2 回答 2

0

你不能使用 rgb2gray 函数吗?

于 2013-04-20T10:01:51.640 回答
0

您正在制作的是 RGB 图像的一层。如果您正在创建具有恒定颜色的均匀蓝色图像,则归一化是错误的。但是,如果只是蓝色而不是灰色的问题,那么只需使用以下方法进行转换:

ImGray = rgb2gray(Im);

不要忘记像网格/网格一样分布像素,以填充所有图像而不仅仅是其中的一部分。

于 2013-04-20T12:35:04.390 回答