我正在研究高光谱卫星图像,并试图在我的数据集上实现SAM算法,我尝试使用spectral_angle和msam函数,这些函数可以在光谱python库中获得。我使用以下命令。预处理后的数据集具有维度(2000,2000,20)
signature=image_cube300,500,:mmn=spectral_angles(image_cube,signature.reshape(1,20))
我得到了一个numpy数组,其中包含了所有的值'Nan‘。
发布于 2020-10-27 22:57:27
显然,您的数据中有NaN值。假设是image_cube
,尝试如下:
image_cube[np.isnan(image_cube)] = 0
signature=image_cube[300,500,:]
mmn=spectral_angles(image_cube,signature.reshape(1,20))
根据image_cube
的数据类型,您可能必须首先将其转换为浮点类型。另外,你可以用你喜欢的浮点值来代替零(例如,平均谱)。
https://stackoverflow.com/questions/64497886
复制相似问题