17

我对 python 编程非常陌生,我仍在尝试解决所有问题,但是在尝试对图像进行高斯平滑或卷积时遇到了问题。这可能是一个简单的解决方法,但我花了很多时间试图弄清楚我开始发疯了。我有一组星系的 3d .fits 文件,并剪下某个星系并将其保存到带有 aplpy 的 png 中。基本上,它需要作为高斯平滑到更大的光束尺寸(即通过扩展 FWHM 但使输出变暗来使整个事物变大)。我知道我可以使用 scipy.ndimage.convolve 和 numpy 中的类似函数,但我很难将它翻译成有用的东西。如果有人可以帮我解决这个问题并为我指明正确的方向,那将是一个巨大的帮助。

4

1 回答 1

30

大概是这样的?

import numpy as np
import scipy.ndimage as ndimage
import matplotlib.pyplot as plt

img = ndimage.imread('galaxies.png')
plt.imshow(img, interpolation='nearest')
plt.show()
# Note the 0 sigma for the last axis, we don't wan't to blurr the color planes together!
img = ndimage.gaussian_filter(img, sigma=(5, 5, 0), order=0)
plt.imshow(img, interpolation='nearest')
plt.show()

在此处输入图像描述 在此处输入图像描述

(从这里拍摄的原始图像)

于 2013-07-11T17:47:17.647 回答