Как реализовать тихоновский фильтр для обратной проекции 4pi?

Я пытаюсь реализовать регуляризацию Тихонова в отфильтрованной обратной проекции для сканера 4pi, но код, который я написал, не изменяет окончательное изображение вообще. Я использовал произвольные значения для лямбды и k для этой попытки, чтобы увидеть, как работает фильтр, но пока без кубиков.

В Python я попробовал:

theta = np.linspace(latra[0], latra[1],  min(image.shape)-1)#, endpoint=True)
print len(theta)

sinogram = radon(image, theta=theta, circle=False)

im_fft = fft2(sinogram)

L = 4.5e-2
k = L/5

nX = im_fft.shape[0]
kxMax = k*nX/2
nY = im_fft.shape[1]
kyMax = k*nY/2

x = np.arange(-kxMax,kxMax,nX)
y = np.arange(-kyMax,kyMax,nY)
xx, yy = np.meshgrid(x,y)

tkF = np.sqrt(xx**2 + yy**2)/(1 + L**4*np.sqrt(xx**2+yy**2)**4)

Fk = np.conv2d(im_fft,tkF)
result = ifft2(Fk)

где image моя простая обратная проекция с данными о радиации с использованием 4pi тепловизора. Проблема в том, что фильтр практически не меняет изображение с простой обратной проекции.

0 ответов

Другие вопросы по тегам