![4489e018ac19c0c9c06908979be36982.png](https://i-blog.csdnimg.cn/blog_migrate/453fa9abd40d99ca53755915bbc167fd.jpeg)
之前写过一篇关于融合的文章,介绍了利用pansharpen.py实现遥感影像的融合,最后留下了一个小尾巴,就是去研究一下HSV、Gram-Schmidt融合实现。今天就先把HSV融合的逐步实现给大家作个介绍。
简单介绍一下HSV融合的步骤,首先是将多光谱多光谱图像重采样至全色图像的尺寸,其次将RGB图像变换HSV颜色空间,接着用高分辨率的图像代替转换后的颜色亮度值波段(V),最后再将转换后的图像变换回RGB颜色空间。下面就逐步实现上述的过程(还是以之前的高分1数据为例):
1、数据读取,包括多光谱、全色波段数据读取及相关的数据处理。
# 读取多光谱数据
ds = gdal.Open('./multi.tif')
multi_arr = ds.ReadAsArray()
multi_arr.shape
# 读取全色数据
ds = gdal.Open('./pan_1.tif')
pan_arr = ds.ReadAsArray()
pan_arr.shape
# 定义一个包含4各波段的arr,大小与multi_arr一致,需要注意的是shape的顺序,并依次将blue,green,red,nir波段赋值
rgbn = np.zeros((270,406,4))
for i in range(multi_arr.shape[0]):
rgbn[:,:,i] =