I'm working on finding the center of rotation of a set of test tomographic projections in order to perform 2D reconstruction. I'm trying to implement the algorithm to find center of rotation as described in Vo et al. 2014, which involves Fourier transforming the sinogram and searching frequency space outside the "bow tie" double-wedge region for minimum artifacts that result from wrong center of rotation. However, when I Fourier transformed a sample sinogram generated from Shepp-Logan model, the resulting frequency space has lots of artifacts outside the double-wedge region even when center of rotation is correct. Through visual inspection I've also noticed that the amount of artifacts are sensitive to number of projections in the sinogram.
Below: FT of sinogram with 200 projections, from 0 degree to 180 degree
Below: FT of sinogram with 180 projections, from 0 degree to 180 degree
The FFT'ed sinogram in the paper shows distinct zero regions outside the double wedge area, which is mathematically true as it is proven here. However, I'm not sure why my FFT'ed sinograms do not show similar zero regions as in the paper.
This is my first time posting here, so please let me know what other information is needed for others to help me. Thank you.
Below is my code
P=phantom(256); angs=linspace(0,179,200); pjs=radon(P,angs); pjs=rot90(pjs,3); pjs_inv=fliplr(pjs); pjshift_inv=circshift(pjs_inv,[0 0]); sinogram=[pjs; pjshift_inv]; figure(1),imagesc(sinogram);axis image,colormap gray ft=real(fftshift(fft2(sinogram))); figure(2), imshow(ft),colormap gray,axis image,axis on