FFT from ITK Simple Filters (vs rest of Slicer)


I am trying to do some image processing with Slicer, and one of the things I wanted to try was a High Pass filter. I found no such filter ready-made, so I thought I might construct one using parts which are. The first step is FFT, and in “ITK Simple Filters” there is a “ForwardFFTImageFilter”, which looks like it can fit the bill.

Alas, FFT produces an image whose pixels are complex; and AFAICT, Slicer doesn’t really support this. So, I got a volume with these properties:

It’s a Scalar volume, so one can’t apply Vector-to-Scalar to extract the real and imaginary parts; and yet its scalar type is “2 doubles”, which nothing in Slicer seems to handle – including ITK Simple filters. E.g. when trying to extract the magnitude using ComplexToModulusImageFilter, we get:

I will manage to do what I want in Python, I suppose, but, unless I’m missing something, this appears to be broken.

Slicer 5.4.0 on Linux, in case that matters.

This might be not helpful: But I was able to do a frequency domain filtering using SimpleFilters on Slicer in the past. I don’t have any code though.

1 Like