01.01.2013 Views

et al.

et al.

et al.

SHOW MORE
SHOW LESS

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

Theor<strong>et</strong>ic<strong>al</strong>ly-exact CT-reconstruction<br />

from experiment<strong>al</strong> data<br />

T Varslot, A Kingston, G Myers, A Sheppard<br />

Dept. Applied Mathematics<br />

Research School of Physics and Engineering<br />

Austr<strong>al</strong>ian Nation<strong>al</strong> University


Can we reconstruct an object from X-ray<br />

projections?


Can we reconstruct an object from X-ray<br />

• In 2D: reconstruction of a function<br />

from collection of 1D line<br />

integr<strong>al</strong>s. [J. Radon, 1918]<br />

projections?


Can we reconstruct an object from X-ray<br />

• In 2D: reconstruction of a function<br />

from collection of 1D line<br />

integr<strong>al</strong>s. [J. Radon, 1918]<br />

projections?


Can we reconstruct an object from X-ray<br />

• In 2D: reconstruction of a function<br />

from collection of 1D line<br />

integr<strong>al</strong>s. [J. Radon, 1918]<br />

projections?


Can we reconstruct an object from X-ray<br />

• In 2D: reconstruction of a function<br />

from collection of 1D line<br />

integr<strong>al</strong>s. [J. Radon, 1918]<br />

projections?


Can we reconstruct an object from X-ray<br />

• In 2D: reconstruction of a function<br />

from collection of 1D line<br />

integr<strong>al</strong>s. [J. Radon, 1918]<br />

• In 3D: Radon and X-ray<br />

transforms are different<br />

• 3D Radon transform: 1D<br />

projection data resulting from<br />

2D integr<strong>al</strong>s<br />

• 3D X-ray transform: 2D<br />

projection data resulting from<br />

1D line integr<strong>al</strong>s.<br />

projections?


Can we reconstruct a 3D object from 2D<br />

• Tuy 1983, Kirillow 1961<br />

• condition for trajectory to facilitate exact<br />

reconstruction from cone-beam projections<br />

• Feldkamp <strong>et</strong> <strong>al</strong>., 1984<br />

• extension of 2D filtered backprojection with<br />

circle trajectory to 3D (cone-beam)<br />

• works well in many practic<strong>al</strong> applications<br />

• artefacts for high cone-angle<br />

• Danielsson <strong>et</strong> <strong>al</strong>., 1997<br />

• Each object point lies on a unique PI-line<br />

(helix trajectory)<br />

X-ray projections?<br />

“ ... To accurately reconstruct an image for a ROI, <strong>al</strong>l the<br />

planes passing through the ROI should intersect the<br />

source trajectory at least once in a nontangenti<strong>al</strong> and<br />

nonended way. ... “<br />

Tuy, “An inverse formula for cone-beam reconstruction,” SIAM J Appl. Math., 1983.


Can we reconstruct a 3D object from 2D<br />

• Tuy 1983, Kirillow 1961<br />

• condition for trajectory to facilitate exact<br />

reconstruction from cone-beam projections<br />

• Feldkamp <strong>et</strong> <strong>al</strong>., 1984<br />

• extension of 2D filtered backprojection with<br />

circle trajectory to 3D (cone-beam)<br />

• works well in many practic<strong>al</strong> applications<br />

• artefacts for high cone-angle<br />

• Danielsson <strong>et</strong> <strong>al</strong>., 1997<br />

• Each object point lies on a unique PI-line<br />

(helix trajectory)<br />

X-ray projections?


Why helic<strong>al</strong> micro-CT?<br />

• Image long objects<br />

• multiple circular scans<br />

• one helic<strong>al</strong> scan<br />

• Acquisition time<br />

• b<strong>et</strong>ter use of X-ray flux<br />

• improved SNR, faster imaging<br />

• Imaging artefacts<br />

• circular micro-CT: 10 degrees<br />

• our helic<strong>al</strong> micro-CT: 50 degrees


Why helic<strong>al</strong> micro-CT?<br />

• Image long objects<br />

• multiple circular scans<br />

• one helic<strong>al</strong> scan<br />

• Acquisition time<br />

• b<strong>et</strong>ter use of X-ray flux<br />

• improved SNR, faster imaging<br />

• Imaging artefacts<br />

• circular micro-CT: 10 degrees<br />

• our helic<strong>al</strong> micro-CT: 50 degrees<br />

R<br />

R<br />

L<br />

Cone<br />

angle<br />

L<br />

Cone<br />

angle


Why helic<strong>al</strong> micro-CT?<br />

• Image long objects<br />

• multiple circular scans<br />

• one helic<strong>al</strong> scan<br />

• Acquisition time<br />

• b<strong>et</strong>ter use of X-ray flux<br />

• improved SNR, faster imaging<br />

• Imaging artefacts<br />

• circular micro-CT: 10 degrees<br />

• our helic<strong>al</strong> micro-CT: 50 degrees


Why helic<strong>al</strong> micro-CT?<br />

• Image long objects<br />

• multiple circular scans<br />

• one helic<strong>al</strong> scan<br />

• Acquisition time<br />

• b<strong>et</strong>ter use of X-ray flux<br />

• improved SNR, faster imaging<br />

• Imaging artefacts<br />

• circular micro-CT: 10 degrees<br />

• our helic<strong>al</strong> micro-CT: 50 degrees<br />

Artefacts from sampling, not geom<strong>et</strong>ry!


P<br />

• Varian Paxscan flat panel<br />

• 2048 x 1536 pixels<br />

• ~ 400mm x 300mm<br />

• Rail-mounted sample stage<br />

• Phoenix nano-focused source<br />

Source<br />

rotation/translation axis<br />

R<br />

L<br />

Hardware<br />

D<strong>et</strong>ector<br />

v<br />

u


Reservoir<br />

carbonate<br />

• 556mm camera length<br />

• 60mm sample distance<br />

• 30 micron voxel size


But the results are not great ...<br />

Berea sandstone ~2.8 micron voxel size


•<br />

•<br />

•<br />

discr<strong>et</strong>e implementation<br />

noise in the data<br />

hardware <strong>al</strong>ignment<br />

• 9 param<strong>et</strong>ers for geom<strong>et</strong>ric<br />

<strong>al</strong>ignment<br />

• consistent sensitivity an<strong>al</strong>ysis<br />

Awful results: why?<br />

P<br />

Source<br />

rotation/translation axis<br />

R<br />

L<br />

D<strong>et</strong>ector<br />

W<br />

v<br />

u<br />

H


1.0ou change in <strong>al</strong>ignment param<strong>et</strong>er<br />

changes backprojected rays through the<br />

volume of the order of 1 d<strong>et</strong>ector pixel.<br />

For example:<br />

1.0ou<br />

L =<br />

leads to for horizont<strong>al</strong> offs<strong>et</strong><br />

1.0ou =<br />

W/N<br />

L +(W/2) cos αf<br />

W/N<br />

1+(W/2L) cos αf<br />

Optim<strong>al</strong> units<br />

= W/N<br />

1 + sin αf<br />

P<br />

Source<br />

rotation/translation axis<br />

R<br />

L<br />

D<strong>et</strong>ector<br />

W<br />

v<br />

u<br />

H


1.0ou change in <strong>al</strong>ignment param<strong>et</strong>er<br />

changes backprojected rays through the<br />

volume of the order of 1 d<strong>et</strong>ector pixel.<br />

L=330mm, W=400mm, H=300mm, M=2048, N=1536<br />

Optim<strong>al</strong> units<br />

P<br />

Source<br />

rotation/translation axis<br />

R<br />

L<br />

D<strong>et</strong>ector<br />

Require precision to within 0.5<br />

d<strong>et</strong>ector pixel<br />

Hardware not sufficiently accurate<br />

W<br />

v<br />

u<br />

H


Sample distance mis<strong>al</strong>ignment


D<strong>et</strong>ector offs<strong>et</strong> mis<strong>al</strong>ignment


Optimisation-based<br />

reconstruction<br />

Image sharpness:<br />

sh(f) :=||∇f||2


Optimisation-based<br />

reconstruction<br />

Image sharpness:<br />

sharpness<br />

1.4<br />

1.2<br />

1<br />

0.8<br />

8<br />

sh(f) :=||∇f||2<br />

6<br />

R [mm]<br />

4<br />

−10<br />

0<br />

10<br />

D W [mm]<br />

20


Fast Filtered Backprojection<br />

• “Feldkamp with a twist”<br />

• Horizont<strong>al</strong> ramp filter<br />

• Backproject entire projection without weighting<br />

factors<br />

• Correct geom<strong>et</strong>ry backprojects<br />

edges to correct location<br />

• Maxim<strong>al</strong> inconsistency when<br />

geom<strong>et</strong>ry is incorrect<br />

v [mm]<br />

−150<br />

−100<br />

−50<br />

0<br />

50<br />

100<br />

150<br />

−200 −150 −100 −50 0<br />

u [mm]<br />

50 100 150 200


Katsevich<br />

FFBP<br />

Horizont<strong>al</strong> d<strong>et</strong>ector offs<strong>et</strong>


Optimisation-based<br />

reconstruction<br />

Image sharpness:<br />

Norm<strong>al</strong>ised sharpness<br />

Norm<strong>al</strong>ised sharpness<br />

1.4<br />

1.2<br />

1<br />

0.8<br />

8<br />

1.4<br />

1.2<br />

1<br />

0.8<br />

0.6<br />

0.4<br />

0.2<br />

sh(f) :=||∇f||2<br />

6<br />

R [mm]<br />

4<br />

−10<br />

0<br />

10<br />

D W [mm]<br />

0<br />

4 5 6<br />

Sample distance [mm]<br />

7 8<br />

20<br />

Norm<strong>al</strong>ised sharpness<br />

Norm<strong>al</strong>ised sharpness<br />

1<br />

0.5<br />

8 0<br />

1<br />

0.8<br />

0.6<br />

0.4<br />

0.2<br />

6<br />

R [mm]<br />

4<br />

−10<br />

0<br />

10<br />

D W [mm]<br />

0<br />

−5 0 5 10 15 20<br />

Horizont<strong>al</strong> d<strong>et</strong>ector offs<strong>et</strong> [mm]<br />

20


Optimisation-based<br />

reconstruction<br />

Image sharpness:<br />

sh(f) :=||∇f||2<br />

• use FFBP to reconstruct image<br />

• structured search<br />

• “sequenti<strong>al</strong>ly decoupled” param<strong>et</strong>ers<br />

• slice-based reconstruction<br />

• computation O(N 4 ) becomes O(kN 3 )<br />

• full projection s<strong>et</strong> needed<br />

• loc<strong>al</strong> cache reduces MPI overhead<br />

• multi-resolution optimization:<br />

• computation O(kN 3 ) becomes O(k[N/q] 3 )<br />

• memory requirement O(N 3 ) becomes O([N/q] 3 )<br />

• trivi<strong>al</strong>ly par<strong>al</strong>lel at lowest level


•<br />

•<br />

Auto-focus <strong>al</strong>ignment<br />

post-processing of projection data<br />

reconstruct without exact geom<strong>et</strong>ry


•<br />

•<br />

Auto-focus <strong>al</strong>ignment<br />

post-processing of projection data<br />

reconstruct without exact geom<strong>et</strong>ry


Sample distance<br />

• 556mm camera length<br />

• 8mm sample distance<br />

• 2.8 micron voxel size


Sample distance<br />

• 556mm camera length<br />

• 8mm sample distance<br />

• 2.8 micron voxel size


Sample distance<br />

• 556mm camera length<br />

• 8mm sample distance<br />

• 2.8 micron voxel size


Sample distance<br />

• 556mm camera length<br />

• 8mm sample distance<br />

• 2.8 micron voxel size


Comparison<br />

old vs. new system<br />

old: 60mm@190mm. New: 400mm@382mm, 11h acc.


Comparison<br />

old vs. new system<br />

old: 60mm@190mm. New: 400mm@382mm, 11h acc.


Carbonate sample<br />

• 20mm by 5 mm sample<br />

• 4 revolutions of data<br />

• 1760 x 1760 x 6000 voxels<br />

• 3.5 micron voxel size<br />

• 400mm wide d<strong>et</strong>ector<br />

• 330mm camera length<br />

• >10x speed-up<br />

Circular scan with same camera length


Summary<br />

• b<strong>et</strong>ter SNR at high cone angle<br />

• good tomogram with 2048 3 from 4<br />

hours acquisition<br />

• routine imaging of long objects<br />

• successfully reconstructed tomogram:<br />

2048 x 2048 x 8192<br />

• limited by<br />

• acquisition time<br />

• disk space<br />

• computer memory<br />

• 100mm vertic<strong>al</strong> travel<br />

• currently ~1.5 micron resolution

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!