18
Implementing the Probability Matrix Technique for Positron Emission Tomography By: Chris Markson Student Adviser: Dr. Kaufman

Implementing the Probability Matrix Technique for Positron Emission Tomography By: Chris Markson Student Adviser: Dr. Kaufman

Embed Size (px)

Citation preview

Page 1: Implementing the Probability Matrix Technique for Positron Emission Tomography By: Chris Markson Student Adviser: Dr. Kaufman

Implementing the Probability Matrix Technique for Positron

Emission Tomography

By: Chris MarksonStudent Adviser: Dr. Kaufman

Page 2: Implementing the Probability Matrix Technique for Positron Emission Tomography By: Chris Markson Student Adviser: Dr. Kaufman

Introduction

● PET vs. CAT– PET ~ metabolic– CAT ~ anatomical

● The Process– Tagged chemical compound– Positrons in compound meet electrons in

the body~ annihilation– Photons produced at 180°– Detection– Problem: Reconstruct the image using the

tube data

Page 3: Implementing the Probability Matrix Technique for Positron Emission Tomography By: Chris Markson Student Adviser: Dr. Kaufman

● Put grid over organ of interest– 2 dimensions - pixels– 3 dimensions - voxels

● Finer grid, more detail● Finer grid, more computation

Grids

time and space

Page 4: Implementing the Probability Matrix Technique for Positron Emission Tomography By: Chris Markson Student Adviser: Dr. Kaufman

● C(tubes,pixels) = probability that events in a pixel will be detected by a tube

● If 128 detectors, 128 pixels on a side,125 million elements

● About 1% nonzero● Want to find the emissions x to approximate tube

data y such that C x ~ y and x>=0● Sum of the elements in x should equal the sum of

the elements in y so all annihilations are accounted for

● Use iterative approaches that only require matrix vector multiplication

Probability Matrix Approach

Page 5: Implementing the Probability Matrix Technique for Positron Emission Tomography By: Chris Markson Student Adviser: Dr. Kaufman

● Translate from FORTRAN into C++ and speed up code that generates the C matrix and does matrix by vector multiplication

– Take out redundant code for successive subroutine calls

– FORTRAN was very unstructured● Because have more memory, do not have to use

circular symmetry – does this lead to faster code?● If one uses structures and linked lists – does this

help?● Prior research suggested that EM algorithm for

maximum likelihood works better from uniform starting guess rather than random

– Does starting with solution from coarser grid help?– Should you smooth coarser grid solution?

My Responsibilities

Page 6: Implementing the Probability Matrix Technique for Positron Emission Tomography By: Chris Markson Student Adviser: Dr. Kaufman

● One iteration:– Set s = CTx

– Set z = y(t)/st for t = 1, 2, . . . , T.

– Set w = Cz

– Set xbnew = xbwb for b = 1, 2, . . . , B.

EM Algorithm

Page 7: Implementing the Probability Matrix Technique for Positron Emission Tomography By: Chris Markson Student Adviser: Dr. Kaufman

● Images Studied– 10 million vs. 1 million probabilities

● Uniform guess – total tube count divided by number of pixels

● Block expansion– Start with 64x64 data, EM Algorithm, expand to

128x128(1 pixel becomes 4 pixels), old solution becomes initial guess for 2nd EM run

● Smoothed expansion– Same procedure, (1 pixel becomes 4 pixels)

averaging middle pixels after expansion– Best image produced with tumors standing out

Image Output

Page 8: Implementing the Probability Matrix Technique for Positron Emission Tomography By: Chris Markson Student Adviser: Dr. Kaufman

Tube Data

20 40 60 80 100 120

20

40

60

80

100

120

10 20 30 40 50 60

10

20

30

40

50

60

128x128 ~ 1m

64x64 ~ 1m smoothed

20 40 60 80 100 120

20

40

60

80

100

120

128x128 ~ 10m

Page 9: Implementing the Probability Matrix Technique for Positron Emission Tomography By: Chris Markson Student Adviser: Dr. Kaufman

uniform10mNo expansion, uniform

initial guess.

20 40 60 80 100 120

20

40

60

80

100

120

20 40 60 80 100 120

20

40

60

80

100

120

20 40 60 80 100 120

20

40

60

80

100

120

block10m64x64 initial guess into EM, block expansion.

wexpand10m64x64 initial guess into

EM, smoothed expansion.

**Best result**

Page 10: Implementing the Probability Matrix Technique for Positron Emission Tomography By: Chris Markson Student Adviser: Dr. Kaufman

uniform1mNo expansion, uniform initial

guess.

20 40 60 80 100 120

20

40

60

80

100

120

20 40 60 80 100 120

20

40

60

80

100

120

block1m64x64 initial guess into EM, block expansion.

20 40 60 80 100 120

20

40

60

80

100

120

wexpand1m64x64 initial guess into EM,

smoothed expansion.

Page 11: Implementing the Probability Matrix Technique for Positron Emission Tomography By: Chris Markson Student Adviser: Dr. Kaufman

smuniform1mSmoothed first. No expansion, uniform initial

guess.

20 40 60 80 100 120

20

40

60

80

100

120

20 40 60 80 100 120

20

40

60

80

100

120

smwblockexpand1m

Smoothed first. 64x64 initial guess

into EM, block expansion.

20 40 60 80 100 120

20

40

60

80

100

120

smwexpand1mSmoothed first. 64x64 initial guess into EM, smoothed expansion.

Page 12: Implementing the Probability Matrix Technique for Positron Emission Tomography By: Chris Markson Student Adviser: Dr. Kaufman

diffexbl1mDifference between smoothed expansion and block expansion

20 40 60 80 100 120

20

40

60

80

100

120

smdiffexbl1mSmoothed tube data. Difference between

smoothed expansion and block expansion

20 40 60 80 100 120

20

40

60

80

100

120

20 40 60 80 100 120

20

40

60

80

100

120

smdiffunex1mSmoothed tube data.

Difference between uniform and smoothed expansion.

Page 13: Implementing the Probability Matrix Technique for Positron Emission Tomography By: Chris Markson Student Adviser: Dr. Kaufman

EM Iteration Analysis

Page 14: Implementing the Probability Matrix Technique for Positron Emission Tomography By: Chris Markson Student Adviser: Dr. Kaufman

Full Square Code● Removal of repeating triangle code● Entire code much slower when

compared to the repeating triangle code

● EM algorithm faster– Removal of encode, decode, a1, a2

functions. Easier matrix by vector multiplication

● Creating C matrix takes longer

Page 15: Implementing the Probability Matrix Technique for Positron Emission Tomography By: Chris Markson Student Adviser: Dr. Kaufman

Times

Creating C EM 16 It TotalFull Square 3474 ms 1221 ms 4695 msTriangle 222 ms 891 ms 1113 ms

All timings performed on Intel 1.4 GHz Centrino Chip, 512 MB RAM

Page 16: Implementing the Probability Matrix Technique for Positron Emission Tomography By: Chris Markson Student Adviser: Dr. Kaufman

Linked List● Theory: Having pointers to first element

in each array save on offset calculations used in arrays.

● EM() (16 iterations)– No LL

● Avg processing time: 1214.7ms– With LL

● Avg processing time: 6906.7ms– Difference: With LL 5692.0ms slower

Page 17: Implementing the Probability Matrix Technique for Positron Emission Tomography By: Chris Markson Student Adviser: Dr. Kaufman

Linked List Times (continued)● Program Times:

– No LL:● Avg processing time: 4743.0ms

– With LL● Avg processing time: 12778.0ms

– Difference: With LL 8035.0ms slower

Page 18: Implementing the Probability Matrix Technique for Positron Emission Tomography By: Chris Markson Student Adviser: Dr. Kaufman

● Original Code ~ FORTRAN● Translated and manipulated ~ C++● Image manipulation and analysis ~

MATLAB

Tools Used