/
pifftChannelData.m
26 lines (24 loc) · 1 KB
/
pifftChannelData.m
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
function im_data = pifftChannelData(raw_frames)
% TRANSFORMCHANNELDATA applies 2D IDFT to raw_frames
% IM_DATA = TRANSFORMCHANNELDATA(RAW_FRAMES) transforms raw images
% in 3-dimensional image vector RAW_FRAMES with 2-D IDFT.
% The image data is
% returned in 3-D vector FILTERED_DATA
%
% Author: Josh Marso - transformChannelData (original)
% Fred J. Frigo - modified to call homodyne function pifft
%
im_data = zeros(size(raw_frames));
partial_data = zeros(size(raw_frames));
[yres, xres, chan] = size(raw_frames);
start_data = 1;
end_data = (yres*0.5) + 16; % use 16 overscans
for i=1:chan
% im_data(:,:,i) = ifft2(raw_frames(:,:,i));
partial_data(start_data:end_data,:,i) = raw_frames(start_data:end_data,:,i);
homodyne_image = pifft(partial_data(:,:,i));
im_data(:,:,i) = homodyne_image(:,:);
end
% display the k-space magnitude
displayMagnitude(partial_data, 'K-space log-magnitude', 1);
end