Image 从Google Earth的屏幕截图将图像导入MATLAB

Image 从Google Earth的屏幕截图将图像导入MATLAB,image,matlab,Image,Matlab,在MATLAB中: 我正在使用屏幕截图制作一张美国的图片 谷歌地球。但是,当我把图像读入MATLAB进行绘图时 上面的数据图像变成全白色——没有红色、绿色或蓝色 注意:在不打印任何其他数据的情况下,它会正确显示 以及使用imshow 我的代码是: I = double(imread('USA.png')); img = flipdim(I,1) B = IMPRESIZE(img,[500,500],'nearest') colormap HSV; hold on; ....Plot Data.

在MATLAB中:

我正在使用屏幕截图制作一张美国的图片

谷歌地球。但是,当我把图像读入MATLAB进行绘图时

上面的数据图像变成全白色——没有红色、绿色或蓝色

注意:在不打印任何其他数据的情况下,它会正确显示

以及使用imshow

我的代码是:

I = double(imread('USA.png'));
img = flipdim(I,1)
B = IMPRESIZE(img,[500,500],'nearest')
colormap HSV;
hold on;
....Plot Data....

有没有办法导入图像并在其上绘制散布数据?

我相信您的问题来自于将图像转换为双面打印

当图像为uint8格式时,MATLAB使用0-255作为色标范围。当图像为双格式时,MATLAB使用0-1作为色标范围。因此,当您将图像转换为双色时,MATLAB使用后一个范围,即R、G或B值大于1的任何颜色变为1,用于显示目的(例如,基本上所有像素都显示为白色)

简而言之,将第一行代码更改为(无强制转换)

或者,如果必须将图像强制转换为双色,则可以使用以下函数根据数据范围自动缩放颜色比例

imagesc(img)
imagesc(img)