从粗糙的ras中提取图像像素值

2024-10-05 10:49:49 发布

您现在位置:Python中文网/ 问答频道 /正文

我有两张照片。图像1的分辨率为250米,图像2的分辨率为500米,这些图像具有完全相同的空间内容和投影。在

如何覆盖这两个图像,以便对于图像_1中的每个像素,我可以从图像2中提取像素值?我尝试了gdal重投影(reprojectimage2),但是它使用插值进行了重采样。这对我不起作用,因为重采样会改变图像2中的像素值。有什么有效的方法可以做到这一点吗?Scipy、numpy或任何类似的工具都会很棒。在


Tags: 工具方法图像numpy内容分辨率空间像素
1条回答
网友
1楼 · 发布于 2024-10-05 10:49:49

您可以将重采样方法设置为“最近邻”(nearest neighbor),这当然仍然是一种插值方法,但我认为结果正是您所追求的。如果使用gdalwalp,可以输出到VRT,然后用Python打开它。在

或者,您也可以在Python中直接放大数组,但只有在所有空间属性都相同的情况下,这才有效。在

它可以用Numpy完成,比如:

image2_250m = np.kron(image2_500m, np.ones((2,2)))

在两个维度上都放大了2倍。如果你也有一个包含波段的第三维度,你想使用np.ones((1,2,2)),它将把波段/光谱维度缩放为1(例如什么都不做)。它仍然是最近邻插值的一种形式

例如:

^{pr2}$

相关问题 更多 >

    热门问题