landsat遥感影像处理

如果以某一个点为中心,计算该点周围3×3像元的平均值作为该点的像元值,应该怎么实现呢?希望可以得到回复,谢谢!

你可以使用 Python 图像处理库如 NumPy 和 OpenCV 实现该功能。以下是一种可能的实现方式:

import numpy as np
from scipy.signal import convolve2d

def avg_3x3(arr):
    kernel = np.ones((3,3))/9
    return convolve2d(arr, kernel, mode='same')

# 读取 Landsat 遥感影像,并转换为数组
landsat_array = ...

# 计算平均值
result = avg_3x3(landsat_array)

这个方法使用 convolve2d 函数将核心 (3x3 矩阵) 与输入数组 (Landsat 影像) 卷积,并返回一个数组。请注意,当使用 "same" 模式时,卷积结果的大小与输入数组的大小相同。