Rebinning - UCLA.edu
Download
Report
Transcript Rebinning - UCLA.edu
Click to edit Master title style
Progress Update
An FPGA Infrastructure for
Real-Time 3-D Tomographic Imaging
Henry Chen
August 26, 2011
Click to edit Master title style
Review
Computed Tomography
Tomography
Basis for CAT scan, MRI, PET, SPECT, etc.
Greek “tomos”: part or section
Cross-sectional imaging
technique using transmission
or reflection data from
multiple angles
Computed Tomography (CT)
A form of tomographic reconstruction on computers
Usually refers to X-ray CT
– Positron (PET)
– Gamma rays (SPECT)
Cross-Sections by X-Ray Projections
Project X-ray through biological tissue;
measure total absorption of ray by tissue
Projection Pθ(t) is the Radon
transform of object function
f(x,y):
P t
f x, y x cos y sin t dxdy
Total set of projections called
sinogram
X-Ray Projection Example
Phantom and Sinogram
Shepp-Logan Phantom
CT Reconstruction
Restore image from projection data
Inverse Radon transform
Most common algorithm is filtered backprojection
– “Smear” each projection over image plane
Backprojection Result
Need filtering (high-pass), interpolation
FBP Algorithm
Input: sinogram sino(θ, N)
Output: image img(x,y)
for each θ
filter sino(θ,*)
for each x
for each y
n = x cos θ + y sin θ
img(x,y) = sino(θ, n) + img(x,y)
O(N3) algorithm
– But highly parallelizable, given sufficient memory
bandwidth; not computationally intensive
Click to edit Master title style
Review
Single-Slice Rebinning Method
for Helical Cone-Beam CT
(Noo, et. al., 1999)
3-D Tomography
Construct 3-D image using sequence of
cross sectional images
Requires many passes of ionizing x-ray radiation
Helical Cone-Beam Scanner
Helical traversal reduces total number of passes;
increases scanning speed and reduces x-ray
exposure
However, need to convert
cone-beam data into stack
of fan-beam slice images
Rebinning
Maps projection data into fan-beam slices
Virtual fan source mapped to surface of cone source
Each slice requires CB projections from 1 revolution
centered on that slice (+/- 0.5P)
Rebinning
Fan-beam “projection” estimated from value of conebeam projection in same vertical plane
Use closest cone-beam source directly above or
below virtual fan-beam source
Use oblique ray passing through M
Rebinning Geometry
Rebinning Equation
Each fan-beam value is just weighted version of
cone-beam projection data
fan-beam projection length
fan sino
pz , u
u 2 D2
u v D
2
2
2
g u, v CB sino
cone-beam projection length
u 2 D2
v
z
RD
Click to edit Master title style
FPGA Implementation
Reconstruction Flow
Projections
Converts cone-beam helical
projections into sequence
of fan-beam slices
Rebin
Normalize
Map fan-beam data into
parallel-beam projections
F2P
FBP
Reconstruct 3-D image
Apply Parker weights
to remove fan-beam
redundant data
Z-Interpolate
Filtered backprojection
to recover 2-D image slices
Reconstruction Flow
Rebin
Filter
Backproject
Backprojection
Rebin
Filter
Backproject
BRAM
Buffer
Addressing
xcosθ+ysinθ
xy
Sinogram
Buffer
DP/QDR SRAM
Image
Accumulation
Buffer
Backprojection Memory
n = x cos θ + y sin θ
img(x,y) = sino(θ, n) + img(x,y)
BRAM buffers for filtered sinogram slice; small (~N)
but need low-latency random access
Dual-ported memory (BRAM, QDR SRAM) wellsuited for write-after-read operation in accumulation
If step sequentially through img(x,y), no write
hazards
Hardware Backprojection
200x200, 96 projection angles
Filtering
Rebin
Filter
Backproject
ROM
Filter
Coefficients
FFT
FFT
Frequency-Domain Filter
FFT
Coefficient Multiplication
IFFT
CASPER library biplex pipelined streaming FFT
Filter coefficients in ROM; can be runtime-loadable
HW Filter Imperfection
Need to tweak wordlength, binary point, downshift
Hardware Filtered Backprojection
200x200, 96 projection angles
FPGA Resource Utilization
Xilinx Virtex-5 SX95T DSP-optimized FPGA
Slice Registers:
Slice LUTs:
DSP48Es:
BlockRAMs:
21,416
17,549
60
100
out of
out of
out of
out of
58,880 (36%)
58,880 (29%)
640 (9%)
244 (40%)
256 kB off-chip SRAM (QDR) used for image accumulation
Fixed 18-bit filtering, 24-bit accumulation
– No fixed-point precision optimization performed yet
Rebinning
Rebin
Filter
Backproject
DRAM
Indices
SRAM
Rev0
Buffer
Rev1
Buffer
Rev2
Buffer
Weights
Rebinning Operation
Every 3 scan-revolutions can be used to rebin 32
image slices
– Implemented as circular buffer with correction factor
applied to rebinning index
Rebinning pattern period with every 32 image slices
Rebinning, Parker normalization just weighting;
fan-to-parallel conversion requires weight-and-sum
Rebinning Indexing
SW implementation assumed full data (sinos,
weights) accessibility not practical in HW
Normalize one ordering to another reduces
buffering from 2M to 64k
Fairly sequential
Locally sequential only
Rebinning Architecture
Weights,
Indices
BRAM
Latency Weight
Match
DRAM
BRAM
Circ.
Buffer
Map
Index
Fan-to-Parallel Folding
QDR
SRAM
Projection data
Z-2
Rebinning Memory
200x200 image from 288x192 scanner geometry
Indices: 2 × 32 × 192 × 200
– 2x 21-bit address space (2x 2M words → 16 MB?)
– Write-once, sequential read; DRAM
Weights: 2 × 32 × 192 × 200
– 2x 21-bit address space (2x 2M words → 16 MB?)
– Write-once, sequential read; DRAM
Projections: 3 × 192 × 288
– 18-bit address space (256k words → 1 MB)
– Sequential write, random read; ideally ZBT SRAM
Rebinning Data Access
Low duty cycles; bottleneck at backprojection
– Write 192 × 200 samples every 32 × 192 × 2002 cycles
– Read 200 samples every 2002 cycles
Still needs high-bandwidth bursts; provide all data
for a single image, then wait for FBP
Current Status
Backprojection: HW done, tested
Filtering: HW done, tested; needs optimization
Rebinning: HW done, debugging
– Indices, weights reading out of DRAM
– Circular buffer, weighting, folding still testing
Eventual Target
Expand geometries 4x
Parallelization
References
http://en.wikipedia.org/wiki/Tomography
http://en.wikipedia.org/wiki/Computed_tomography
Kak, A. C., Slaney, M., Principles of Computerized Tomographic Imaging,
IEEE Press, 1988
Noo, F., Defrise, M., Clackdoyle, R., “Single-Slice Rebinning Method for
Helical Cone-Beam CT,” Physics in Medicine and Biology, vol 44, 1999