通常我们是利用专业遥感影像处理软件如ENVI等来处理遥感影像。但是在处理小块遥感影像或者需要自己实现一些比较简单但envi上没有的功能,则需要自己编程实现,首要的一步就是读取遥感影像,本篇博客记录如何利用matlab读取遥感影像并将其转换为普通图像。
代码如下:
%输入为制定的RGB对应遥感影像的波段
function tif2jpg(r,g,b)
%这部分是批处理过程,因为我自己有大量的遥感影像片段需要处理,所以进行批处理
imgPath = 'RsImage/';
RStiff = dir([imgPath,'*.tif']);%得到指定文件夹下所有tif后缀的文件
len = length(RStiff);
for i = 1:len
RsImg = imread([imgPath, RStiff(i).name]);
RsChannel1 = RsImg(:,:,r);
RsChannel2 = RsImg(:,:,g);
RsChannel3 = RsImg(:,:,b);
%因为从遥感影像读取的数据是int16型的,范围超过0-255,需要将每个通道数据压缩至0-255
ImgChannel