<< Chapter < Page | Chapter >> Page > |
Our implementation uses three pieces of Matlab code: shrinkPR, filtersinc, and backproject.
The original projection data was greatly over-sampled, taking over 20,000 samples in 400 picoseconds foreach of the 360 angles. In order to reduce computation time, we uniformly reduced the number of samples and the number of angles.Our shrinkPR code takes the original PR matrix, a matrix whose columns are the projections, and outputs a smaller PR matrix withfewer samples and angles. It also creates a column vector, theta, which contains the angles of the corresponding projections.
This code takes in the PR matrix and outputs the filtered PR matrix.
It creates the ramp filter |ω| and multiplies it with the FFT of each projection. It then takes the IFFT of eachfiltered projection.
Backproject implements the discrete approximation of :
This code backprojects each of the filtered projections over the image plane and sums them together to producethe final reconstructed image. In order to implement the continuous function given discrete data points, the “round” function was used,effectively interpolating the data.
The following are reconstructed images:
1500 samples per projection and 360 angles:
From this image you can easily see the original object.
1100 samples per projection and 360 angles:
This image is not as clear since fewer samples were used.
1500 samples and angles 1-180.
From this image you can see the left half of the object since we used the first half of the projections.
Notification Switch
Would you like to follow the 'Elec 301 projects fall 2005' conversation and receive update notifications?