Title: IMAGE RECONSTRUCTION
1IMAGE RECONSTRUCTION
- A brief background
- By DINESHBABU V DINAKARABABU
- 15th October 2007
2What is Digital Image Processing?
- Can any one of you come up with a simple
definition?
3What is Digital Image Processing?
- Processing of a 2-D picture by a digital
computer. - In a broader context, it is the digital
processing of a 2D-data. - Digital image is an array of real or complex
numbers represented by a finite number of bits.
Remote Sensing
Robotics
Medical Imaging
Radar
4Classes of problems
- Many applications but lots of problems
associated with image processing - 1. Image representation and modeling
- 2. Image Enhancement
- 3. Image restoration
- 4. Image Analysis
- 5. Image Reconstruction
- 6.Image Data Compression
-
-
-
-
Image Analysis
Image Data Compression
Image Reconstruction
5Image reconstruction from projections
- Special class of image restoration problems
- 2 or higher dimensional object is reconstructed
from several 1-D projections - Projection obtained by projecting X-ray beam
through object - Important in medical imaging ( CT Scanners ),
astronomy, radar imaging, geological exploration
and non-destructive testing of assemblies - We focus on the medical imaging applications.
- Lots of algorithms available.
- This problem can be set up mathematically in the
framework of Radon transform theory ( We will
deal with it in a short while )
6What is projection?
- Shadowgram obtained by illuminating an object by
penetrating radiation - Each pixel on the projected image represents the
total absorption of the X-ray along its path from
source to detector - Rotate the source-detector assembly around the
object projection views for several different
angles can be obtained. - Reconstructing a cross-section of an object from
several images of its transaxial projections an
important problem to be addressed in image
processing - Goal of image reconstruction is to obtain an
image of a cross-section of the object from these
projections.
7CT Scanners
- Imaging systems that generate such slice views
are called computerized tomography scanners - Resolution lost along path of X-rays while
obtaining projections - CT restores this resolution by using information
from multiple projections. - Special case of image restoration
8Imaging Techniques
- Transmission Tomography
- Reflection Tomography
- Emission Tomography
- Magnetic Resonance Imaging
- Projection-based image processing
9Radon Transform
- Provides mathematical framework for going back
and forth between the spatial coordinates (x,y)
and projection-space coordinates (s,?) - Radon transform of f(x,y) is g(s,?)
- Line integral along a line inclined at an angle ?
from the y-axis and at a distance s from the
origin. - Mathematical expression
-
10Radon Transform
- Rotated coordinate system (s,u)
-
- G(s,?) is called ray-sum
- Represents summation of f(x,y) along a ray at a
distance s and at an angle ? - Each point in (s,?) domain corresponds to a line
in (x,y) domain - (s,?) Not polar coordinates
11The Back Projection Operator
- Defined by the mathematical expression
-
- b(x,y) called the back-projection of g(s,?)
- Can be written in polar co-ordinates as
- Represents the accumulation of the ray sums of
all of the rays that pass through (x,y) or (r,F)
12Parallel-Beam Backprojection An FPGA
ImplementationOptimized for Medical Imaging
- Radon Transform and Back-Projection Operator
- Mathematical Frameworks needed for Image
Reconstruction - Lets proceed to the Reconstruction Algorithm and
the FPGA implementation
13What the authors present?
- FPGA implementation of the parallel-beam
backprojection algorithm - Explore a number of quantization issues
- Minimizing error while maximizing efficiency
- Reference
- Parallel-Beam Backprojection An FPGA
Implementation Optimized for Medical Imaging - by Srdjan Coric, Miriam Leeser, Eric Miller
- Department of Electrical and Computer
Engineering - Northeastern University
- Boston, MA 02115
14Filtered Backprojection
- Called Filtered Backprojection (FBP) as we are
filtering the projections using a high-pass
filter before the actual backprojection. - Most commonly used approach for image
reconstruction - Dense projection data
- Parallel-beam and fan-beam variations depends
on x-ray beam - we focus on parallel-beam Backprojection
- Computationally intensive process
- Highly parallelizable process
15Challenges facing FBP
- Computationally intensive process
- - an image of size n n complexity is O(n3)
- - upto order n2log2 n
- Difficulty in producing high resolution images
- - density of each projection
- - total number of projections be large
- High precision reconstructions difficult
- - analyze the effects of quantization
- - fixed-point implementation with properly
chosen bit-widths - - bit reduction of intermediate results for
different rounding schemes
16Parallel-Beam Backprojection
- Finds widespread application in medical imaging
- Computationally intensive algorithms requiring
the rapid - processing of large amounts of data
- Can benefit greatly from hardware acceleration
- Reconfigurable hardware has not been applied to
this important area - Efficient implementation and maximum speedup -
fixed-point implementations are required - Associated quantization errors must be carefully
balanced against the requirements - Visual quality of image not compromised.
17PARALLEL-BEAM FILTEREDBACKPROJECTION
- Parallel-beam CT scanning system
- an array of equally spaced unidirectional sources
of focused X-ray beams - radiation reaches a collinear array of detectors
- Spatial variation of the absorbed energy in the
two-dimensional plane through the object is
expressed by the attenuation coefficient µ(x, y). - set of values given by all detectors comprises a
one-dimensional projection of the attenuation
coefficient, P(t, ?) - t is the detector distance from the origin
- ? is the angle at which the measurement is taken
18Radon and Inverse Radon Transform
- Io is the source intensity
- Id is the detected intensity
- d() is the Dirac delta function
- Radon transform represents an operator that maps
an image µ(x, y) to a sinogram P(t, ?) - Inverse mapping-Inverse Radon transform which
when applied to a sinogram gives an image - FBP algorithm uses this mapping
19Discrete formulation of Backprojection and the
algorithm
- ??(t) is a filtered projection at angle ?
- K is the number of projections taken during CT
scanning at angles ?i over a 180 - Algorithmically, this equation is implemented as
a triple nested for loop - Outermost loop is over projection angle, ?
- For each ?, we update every pixel in the image in
raster-scan order starting in the upper left
corner and looping first over columns, c, and
next over rows, r. - the pixel at location (r,c) is incremented by the
value of ??(t) where t is a function of r and c
20Linear Interpolation
- The issue here is that the X-ray going through
the currently reconstructed pixel, in general,
intersects the detector array between detectors. - So, use linear interpolation.
- point of intersection is calculated as an address
corresponding to detectors numbered from 0 to
1023 (i) - fractional part of this address is the
interpolation factor - interpolation can be performed beforehand in
software or it can be a part of the
backprojection hardware itself - Implementation in hardware done
- - reduces the amount of data that must be
transmitted to the reconfigurable board - - interpolation in hardware is much faster
- equation that performs linear interpolation is
given by
21Illustration of the coordinate system used in
parallel-beam backprojection
22Geometrical explanation of the incremental
spatial address calculation
23Quantization
- Quantization here indicates the conversion of
floating point variables to fixed point variables
of proper bit-width. - Quantize all our data and calculations to
increase the speed and decrease the resources
required for implementation. - Determining allowable quantization is based on a
software simulation of the tomographic process. - Quantization error compare a fixed-point image
reconstruction with a floating a fixed-point
image reconstruction with a floating-point one. - Quantization should not result in loss of
numerical accuracy and hence a change in the
visual quality of the image. - Possibilities for bit reduction on the outputs of
certain functional units
24Representation of fixed point variables
- V is an arbitrary real number
- Va is its fixed-point approximation
- Q is an integer that encodes V
- S is the slope
- B is the bias
- Fixed-point versions of the sinogram and the
filtered sinogram use slope/bias scaling where
the slope and bias are calculated to give maximal
precision
25Quantization of two variables
- ws is the word size in bits of integer Q
- Round represents rounding to nearest
- min(V) min(Q) B 0 for unsigned numbers
- For a given sinogram, S and B are constants and
they do not show up in the hardware only the
quantization value Q is a part of the hardware
implementation - Interpolation factor is an unsigned fractional
number - uses radix point-only scaling
26Relative Error
- N is the total number of pixels
- xi and yiFP are the values of the i-th pixel in
the quantized and floating-point reconstructions
27Simulation steps for quantization
- Reproject Generates a sinogram of 1024
projections and 1024 samples per projection. - Filter Sinogram data convolved with the impulse
response of the ramp filter generating a filtered
sinogram. - Backproject Backprojecting the filtered
sinogram to give a reconstructed image.
28Detailed flowchart of the simulation process
- Different quantization steps possible are shown
in the figure above - Each path represents a separate simulation cycle.
29Hardware Organization
- Hardware acceleration in reconfigurable hardware
- parallel processing - Two basic sources of parallelism
- Pixel parallelism - image can be divided into
subsections which can be reconstructed
simultaneously - Projection parallelism simultaneously
processing individual projections - Pixel parallelism limited by available memory
bandwidth - We concentrate on projection parallelism.
30Data flow of backprojection hardware
- Three flows of data going on simultaneously
- - Pipeline flow
- - Sinogram data flow
- - Accumulation data flow
31Datapath implementation of the non-parallel
backprojection hardware
32Datapath of the implemented 4-way parallel
backprojection hardware
33Image comparison grayscale range mapped to a
part of the pixel value range
34RESULTS AND PERFORMANCE
35CONCLUSION
- FPGA implementation of parallel-beam
backprojection algorithm - Analysis of quantization effects caused by finite
bit-widths - Paid special attention not to compromise the high
precision requirements - 20 times speed-up over a similar software
implementation - Worst case relative error of 0.015 compared to a
floating-point implementation - Real time image reconstruction is easily
attainable by exploiting parallelism. - Hardware architecture presented can easily be
modified to different bit-widths for different
sensors and applications