Compute the Fourier, Sine, Cosine, and Hartley, forward and inverse tranforms of images, image Stacks, 3D images, and plots.
Compute Fourier correlation, convolution and deconvolution
Easy to use: Clone this project and add your own plugins using the IJJT_fft wrapper class to hide the conversions between ImageJ data formats and JTransforms sequenced format.
Examples:
//instantiate the wrapper class and custom return class
IJJT_fft ijft = new IJJT_fft();
ComplexArr cpa = ijft.new ComplexArr();
//2D fft of current slice of an image stack
Object sliceData = imp.getStack().getProcessor(curSlice).getPixels();
cpa= ijft.realForward_2D(sliceData,width,height,centered,magPhase);
reImp.getProcessor().setPixels(cpa.re);
imImp.getProcessor().setPixels(cpa.im);
//2D convolution of the current slice of a target stack
//with the current slice of a kernel stack
int targSlice = targImp.getCurrentSlice();
int kernSlice = kernImp.getCurrentSlice();
Object oTarg = targImp.getStack().getProcessor(targSlice).getPixels();
Object oKern = kernImp.getStack().getProcessor(kernSlice).getPixels();
cpa = ijft.fourierOperation_2D("convolve", oTarg, oKern, targWidth, targHeight);
corrImp = IJ.createImage(newTitle,targWidth, targHeight, 1, 32);
corrImp.getProcessor().setPixels(cpa.re);