Я хочу найти функцию, которая применяет 2D-фильтр или 3D-фильтр в python. функция должна получить функцию фильтра и данные. Как и функции filter2
и imfilter
в Matlab, или как функция scipy.ndimage.gaussian_filter()
в python, которая может работать с N-измерениями, но только для фильтра Гаусса (и я хочу, чтобы фильтр был аргументом)
Я думаю, что могу написать функцию, которая применяет фильтр, используя многомерную свертку (scipy.ndimage.convolve()
), но мне не удалось выполнить 1d фильтры. Код, который я использовал для 1d-фильтрации: signal.convolve(signal, filter_, mode='same', method='auto')
, и он дал результат, отличный от функции signal.filtfilt(filter_, 1, signal, padlen=len(signal)-1)
.
Существует ли функция, которая применяет фильтры ND? и если нет, то как я могу использовать функцию свертки?
спасибо!