.mat转.tif 用于arcgis裁剪遥感图像 |
您所在的位置:网站首页 › 高光谱mat文件 › .mat转.tif 用于arcgis裁剪遥感图像 |
在用arcgis矢量裁剪分类结果图(栅格数据)之前,分类结果中numpy数组先保存为.mat格式,这样就可以在matlab中load该mat文件 ,由于mat文件是struct ,不能直接imwrite成tif,所以要先转换成矩阵形式,再imwrite 转换部分参考 http://t.csdn.cn/eLe9k S1 = load('vscnnnopca1.mat'); BP1 = struct2cell(S1); Mymat1 = cell2mat(BP1); imwrite(uint8(Mymat1),'image.tif','tif' )%记住加unit8,否则图像会是二值图像了 %如果超过0-255的范围,用unit16 以下是我保存为tif的错误尝试: 1.曾尝试在分类结果里的numpy(二维,与图像高宽尺寸一致)直接spectral.save_rgb保存为tif,但是保存的tif加上坐标后 用arcmap裁剪并不会出现7种类别信息,只是按shp边界裁剪出了形状而已。 spectral.save_rgb("jiaozuo.tif", outputs.astype(int), colors=spectral.spy_colors)2.曾尝试imshow mat,然后再出来的图那里文件-》另存为tif,但是这样的保存结果与原来的图的尺寸不一样,又尝试用windows附件-》画图工具修改图像尺寸,也尝试用ps修改tif图像大小,但是这样修改之后加上坐标在arcmap中打开就会出现问题:图像中的想要的区域和shp大小不重合 裁剪不了。 所以还是得保存numpy成mat 再转tif 加上坐标之后就是完整的栅格数据了,在arcmap再打开shp矢量数据,用掩膜截取,就能得到想要的区域并且含有类别信息,进一步可以双击更换每一类的颜色。 |
今日新闻 |
推荐新闻 |
CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3 |