У меня есть 3D-матрица M = M (i, j, k), в основном сканирование КТ, и я хочу деконволюцию известной функции отклика, которая имеет сферическую симметрию y = f (r). Функция отклика - это, в основном, эффект размытия, который получает машина, поэтому я его параметризовал.
Я знаю, что могу деконволюцию с помощью FFT, но все пакеты запрашивают матричное ядро. Теоретически я могу получить матричное ядро из функции отклика, но это совсем не хорошо, так как я теряю разрешение, и окончательное изображение становится еще более размытым, чем оригинал.
Есть ли способ применить функцию ответа напрямую? ИЛИ ЖЕ
Есть ли способ применить более решительное ядро к матрице 3D?
Имеет ли этот последний вопрос какой-либо смысл?
from astropy.convolution import convolve_fft
kernel = self.build_kernel(res=[9,9,9]) # converts the response function in a kernel for FFT convolution
new_arr = convolve_fft(array=conv_arr, kernel=kernel, normalize_kernel=False)
Проблема в том, что для получения ядра в том же разрешении, что и исходное изображение, я теряю его основные характеристики. Полученное изображение еще более размытое, чем оригинал.