我正在尝试编写一个 python 函数来删除 2D 图像数据中的热像素。我正在尝试创建一个函数,该函数将获取 2D 数组中每个元素周围的邻居的平均值,并在其值超过其邻居的平均值特定数量(例如 3 sigma)时有条件地覆盖该元素。这就是我所在的位置:
def myFunction(values):
if np.mean(values) + 3*np.std(values) < origin:
return np.mean(values)
footprint = np.array([[1,1,1],
[1,0,1],
[1,1,1]])
correctedData = ndimage.generic_filter(data, myFunction, footprint = footprint)
上面代码中的“起源”是示范性的。我知道这是不正确的,我只是想展示我正在尝试做的事情。有没有办法将当前元素的值传递给 generic_function?
谢谢!