1990 Parallel Implementation of the Convolution Method in Image Reconstruction

Embed Size (px)

Citation preview

  • 8/20/2019 1990 Parallel Implementation of the Convolution Method in Image Reconstruction

    1/10

    P A R A L L E L I M P L E M E N T A T I O N O F TH E C O N V O L U T I O N M E T H O D

    I N I M A G E R E C O N S T R U C T I O N

    W i e s l a w L u c j a n N o w i n s k i

    I n s t i t u t e o f C o m p u t e r S c i e nc e , P o l i s h A c a d e m y o f S c i e n c e s

    P . O. B o x 22 , P K i N, P L 0 0 - 9 0 1 W a r s a w , P o l a n d

    i . I N T R O D U C T I O N

    I m a g e r e c o n s t r u c t i o n f r o m p r o j e c t i o n s a l l o w s i m a g i n g t h e i n t e r n a l

    s t r u c t u r e o f a n i n v e s t i g a t e d o b j e c t f r o m a p p r o p r i a t e m e a s u r e m e n t s . A

    d e s c r i p t i o n o f i m a g e r e c o n s t r u c t i o n m e t h od s , t h e i r m a t h e m a t i c a l b a si s ,

    a n d i m p l e m e n t a t i o n a l p r o b l e m s a r e t o b e fo u n d, e . g . , i n [ 1, 2 , 3 , 4 ] . T h e

    g r e a t e s t a p p l i c a t i o n o f i m a g e r e c o n s t r u c t i o n i s c o m p u t e r i z e d

    t o m o g r a p h y ( CT ). C T i s c o m p u t e r - a s s i s t e d r e c o n s t r u c t i o n o f s o m e

    f u n c t i o n c a l l e d d e n s i t y f r o m m e a s u r e m e n t s o f e m a n a t i o n s t h a t h a v e

    p a s s e d t h r o u g h a n i n v e s t i g a t e d o b j e ct . T h e d e n s i t y r e p r e s e n t s t h e

    s p a t i a l d i s t r i b u t i o n o f s o m e p h y s i c a l p r o p e r t y o f t h e o b j e ct , w h e r e a s

    t h e e m a n a t i o n i s a n y p h y s i c a l p r o c e s s b e i n g u s e d t o s t u d y t h e o b j e ct .

    T h e m o s t w i d e l y u s e d i m a g e r e c o n s t r u c t i o n m e t h o d i s t h e c o n v o l u t i o n

    m e t h o d ( c a l l ed a l s o t h e c o n v o l u t i o n b a c k p r o j e c t i o n m e t h o d ) . I t

    r e c o n s t r u c t s a n i m a g e i n t w o s t ep s : c o n v o l u t i o n o f t h e p r o j e c t i o n d a t a

    w i t h a g i v e n c o n v o l v i n g f u n c t i o n ( f i lt r a t io n ) , a n d b a c k p r o j e c t i o n o f

    t h e c o n v o l v e d p r o j e c t i o n d a t a .

    I n m a n y m e d i c a l a n d i n d u s t r i a l s i t u a t i o n s a c o n v e n t i o n a l C T s c a n n i n g

    i s u n s u i t a b l e t o c o l l e c t t h e p r o j e c t i o n d a t a d ue t o r a p i d t r a n s l a t i o n

    o r d e f o r m a t i o n o f a n i n v e s t i g a t e d o b j e c t. T h e r e f o r e, f o r h i g h s p e e d

    t o m o g r a p h y n e w s c a n n e r s h a v e b e e n d e v e l o p e d w h i c h a r e c a p a b l e o f

    g e n e r a t i n g f a s t s c an s . T h e s e s c a n n e r s p r o d u c e a l ot of m e a s u r e m e n t

    d a ta , s o h i g h s p e e d t o m o g r a p h y d e m a n d s p a r a l l e l p r o c e s s i n g .

    T h e p a p e r i s c o n c e r n e d w i t h p a r a l l e l i s m i n t h e c o n v o l u t i o n m e t h o d . T o

    d e s c r i b e p a r a l l e l i s m t h e o c c a m l a n g u a g e i s u s e d [6]. T h e f o r m s o f

    p a r a l l e l i s m s p e c i f i c t o i m a g e r e c o n s t r u c t i o n h a v e b e e n r e v i e w ed .

    M o r e o v e r , s o m e f o r m u l a t i o n s o f t h e p a r a l l e l c o n v o l u t i o n m e t h o d h a v e

    b e e n pr e s e n t e d . A s i m u l t a n e o u s a c c e s s e i t h e r t o t h e p r o j e c t i o n m e m o r y

    o r t o t h e i m a g e m e m o r y h a s b e e n d i s c u ss e d . F i n al l y , t w o a r c h i t e c t u r e s

    f o r t h e p a r a l l e l c o n v o l u t i o n m e t h o d h a v e b e e n p r o p o s e d.

  • 8/20/2019 1990 Parallel Implementation of the Convolution Method in Image Reconstruction

    2/10

      56

    2. D E F I N I T I O N S O F T H E P A R A L L E L I S M F O R M S

    I m a g e r e c o n s t r u c t i o n i s o p e n t o v a r i o u s f o r m s o f p a r a l l e l i s m . I t

    r e s u l t s f r o m t he d a t a s t r u c t u r e r e g u l a r i t i e s b o t h i n t h e p r o j e c t i o n

    a n d i m a g e sp a c es . A f o r m of p a r a l l e l i s m d e t e r m i n e s a w a y o f

    d e c o m p o s i n g a g i v e n p ar en t) p r o c e s s i n t o c o n c u r r e n t c o m p o n e n t

    p r o c e s s e s .

    I n [ 5] t h e f o l l o w i n g b a s i c f o r m s o f p a r a l l e l i s m i n i m ag e

    r e c o n s t r u c t i o n h a v e b e e n d e f i n ed : p i x e l v ox el ) p a ra l l e l i s m ,

    p r o j e c t i o n p a r a l l e l i s m , r a y p a r a l l e l i s m , a n d o p e r a t i o n p a r a l l e l i s m .

    B e l ow , w e w i l l r e v i e w t h e m b r i e f l y .

    P i x el v ox el ) p a r a l l e l i s m e x p l o i t s t h e r e g u l a r i t y o f d a t a i n t h e

    d i s c r e t i z e d i m a g e s p ac e . L e t u s a s s i g n a c o m p o n e n t p r o c e s s t o a p i x e l

    v ox el ), a n d l e t t h e f u n c t i o n o f t h e c o m p o n e n t p r o c e s s b e t h e

    c a l c u l a t i o n o f t h e d e n s i t y of t h i s p i x e l v o x el ) . B y u s i n g a

    r e p l i c a t e d P A R p i x e l v ox el ) p a r a l l e l i s m ha s b e e n d e f i n e d a s f o l l o w s

    P A R j = 0 F O R J

    p r o c e s s . f o r . p i x e l j )

    w h e r e J d e n o t e s t h e n u m b e r o f p i x e l s v o xe l s) , a n d

    p r o c e s s . f o r . p i x e l j ) c a l c u l a t e s t h e d e n s i t y o f t h e j - t h p i x e l v ox el ).

    P r o j e c t i o n p a r a l l e l i s m m a k e s u s e o f t h e d a t a s t r u c t u r e r e g u l a r i t y i n

    t h e d i s c r e t i z e d p r o j e c t i o n s p a c e t a k i n g i n t o a c c o u n t t h a t t he

    m e a s u r e m e n t d a t a f o r m a n a r r a y o f p r o j e c t i o n s . L e t u s a s s i g n a

    c o m p o n e n t p r o c e s s t o a p r o j e c t i o n , a n d l e t t h e f u n c t i o n o f t h e

    c o m p o n e n t p r o c e s s b e p r o j e c t i o n p r o c e s s i n g . S u p p o s e M d e n o t e s t h e

    n u m b e r o f p r o j e c t i o n s , a n d p r o c e s s . f o r . p r o j e c t i o n m ) p r o c e s s e s t h e

    m - t h p r o j e c t i o n . I f t h e g e o m e t r y o f d a t a c o l l e c t i o n i s c o n s t a n t

    t h r o u g h o u t t h e m e a s u r e m e n t p r o ce s s , p r o j e c t i o n p a r a l l e l i s m i s d e f i n e d

    i n t h e f o l l o w i n g w a y

    P A R m = 0 F O R M

    p r o c e s s . f o r . p r o j e c t i o n m )

    O t h e r w i s e t h e a b o v e d e f i n i t i o n c a n b e r e w r i t t e n a s

    P A R

    { p r o c e s s . f o r . p r o j e c t i o n }

    R a y p a r a l l e l i s m e x p l o i t s t h e r e g u l a r i t y o f d a t a i n t h e d i s c r e t i z e d

    p r o j e c t i o n s p a c e t a k i n g i n t o a c c o u n t t h a t t h e m e a s u r e m e n t d a t a f o r m a n

    a r r a y o f r a y s u ms . I n t h i s c a s e a c o m p o n e n t p r o c e s s i s a s s i g n e d t o a

    r a y to c a l c u l a t e t h e i n f l u e n c e o f t h e r a y s u m o n t h e d e n s i t y

    a c t u a l i z a t i o n o f t h e p i x e l s t h r o u g h w h i c h t h e r a y pa s s e s . H e n c e, t h e

  • 8/20/2019 1990 Parallel Implementation of the Convolution Method in Image Reconstruction

    3/10

      57

    f o r m h a s b e e n d e f i n e d a s f o l l o w s

    P A R i = 0 F O R I

    p r o c e s s , f o r . r a y i)

    w h e r e I d e n o t e s t h e n u m b e r o f ra y s, a n d p r o c e s s . f o r . r a y i ) a c t u a l i z e s

    t h e d e n s i t i e s o f t h o s e p i x e l s t h r o u g h w h i c h t h e i - t h r a y p a s s e s .

    O p e r a t i o n p a r a l l e l i s m r e f e r s t o a ll f o r ms o f c o n c u r r e n c y f or

    o p e r a t i o n s . I n g e n e r a l , i t c a n b e d e s c r i b e d b y K v a r i o u s p r o c e s s e s ,

    e a c h p e r f o r m i n g d i f f e r e n t f u n c t i o n s

    P A R

    p r o c e s s . 1

    p r o c e s s . 2

    p r o c e s s . K

    B a s e d o n t h e i n t r o d u c e d f o rm s , m a n y p a r a l l e l i m a g e r e c o n s t r u c t i o n

    a l g o r i t h m s h a v e b e e n f o r m u l a t e d . M o r e o v e r , t h e g a i n i n s p e e d

    a t t a i n a b l e o v e r s e q u e n t i a l p r o c e s s i n g b y u s i n g t h e s e f o r m s ha s b e e n

    d e t e r m i n e d i n [5 ].

    3. P A R A L L E L C O N V O L U T I O N M E T H O D

    T h e c o n v o l u t i o n m e t h o d c o n t a i n s t w o o p e r a t i o n s : f i l t r a t i o n of

    p r o j e c t i o n s a n d b a c k p r o j e c t i o n . I n o r d e r to p e r f o r m f i l t r a t i o n o f

    p r o j e c t i o n s p r o j e c t i o n p a r a l l e l i s m m a y b e e xp l o i te d , w h e r e a s

    b a c k p r o j e c t i o n c a n m a k e u s e o f p i x el , p r o j e c t i o n , o r o p e r a t i o n

    p a r a l l e l i s m s .

    T h e c o n v o l u t i o n m e t h o d i n w h i c h b a c k p r o j e c t i o n i s p a r a l l e l i z e d b y

    p i x e l p a r a l l e l i s m c a n b e e x p r e s s e d a s f o l l o w s

    P R O C c o n v o l u t i o n . m e t h o d . p i x e l . p a r a l l e l i s m V AL I N T M, J)

    INT m, j :

    S E Q

    P A R m = 0 F O R M

    p r o j e c t i o n . f i l t r a t i o n m )

    P A R j = 0 F O R J

    b a c k p r o j e c t i o n , o p e r a t i o n j)

    E x p l o i t i n g p r o j e c t i o n p a r a l l e l i s m i n o r d e r to p e r f o r m b a c k p r oj e c t i o n ,

    t h e c o n v o l u t i o n m e t h o d c a n b e f o r m u l a t e d a s

    P R O C c o n v o l u t i o n . m e t h o d . p r o j e c t i o n . p a r a l l e l i s m V AL I N T M, J)

    INT m, j :

    S E Q

    P A R m = 0 F O R M

  • 8/20/2019 1990 Parallel Implementation of the Convolution Method in Image Reconstruction

    4/10

      5 8

    p r o j e c t i o n . f i l t r a t i o n ( m )

    P A R m = 0 F O R M

    S E Q j = 0 F O R J

    a c t u a l i z e . d e n s i t y ( m , j )

    T h e a c t u a l i z e . d en s i t y ( m , j ) p r o c e d u r e c a l c u l a t e s f o r t h e m - t h

    p r o j e c t i o n t h e d e n s i t y a c t u a l i z a t i o n o f t h e j - t h p i x e l . T h i s a p p r o a c h

    i s p o s s i b l e d u e t o s u p e r p o s i t i o n .

    I n a d d i t i on , t h e d i s c r e t i z e d b a c k p r o j e c t i o n o p e r a t o r c a n b e d e c o m p o s e d

    b y u s i n g o p e r a t i o n p a r a l l e l i s m , a s e a c h c o m p o n e n t o f t h i s o p e r a t o r c a n

    b e c a l c u l a t e d i n p a r a l l e l .

    T h e a b o v e f o r m u l a t i o n s o f t h e c o n v o l u t i o n m e t h o d a r e p o s s i b l e p r o v i d e d

    t h a t th e c o m p l e t e m e a s u r e m e n t v e c t o r i s k n o w n b e f o r e a r e c o n s t r u c t i o n

    p r o c e s s s t a r t s . H o w e v e r , i n m a n y c a s e s ( e .g . , i n c o m m e r c i a l s c a n n e r s )

    p r o j e c t i o n s a r e c o l l e c t e d t h r o u g h o u t t h e d u r a t i o n o f a r e c o n s t r u c t i o n

    p r o c e s s, s o p r o j e c t i o n p a r a l l e l i s m d o e s n o t e x i st . I n t h i s c a s e

    f i l t r a t i o n o f p r o j e c t i o n s h a s t o b e p e r f o r m e d s e q u e n t i a l l y

    P R O C c o n v o l u t i o n . m e t h o d . s e q u e n t i a l . p r o j e c t i o n s ( V AL I N T M , J)

    I N T m , j :

    S E Q m = 0 F O R M

    S E Q

    p r o j e c t i o n . f i l t r a t i o n ( m )

    P A R j = 0 F O R J

    b a c k p r o j e c t i o n . o p e r a t i o n . s i n g l e . p r o j e c t i o n ( m , j )

    T h e b a c k p r o j e c t i o n . o p e r a t i o n . s i n g l e . p r o j e c t i o n ( m , j ) p r o c e d u r e

    a c t u a l i z e s t h e j - t h p i x e l s d e n s i t y c o n t r i b u t e d b y t h e m - t h

    p r o j e ct i o n . N o t e th a t t h e b a c k p r o j e c t i o n . o p e r a t i o n . s i n g l e . p r o j e c t i o n ( )

    a n d a c t u a l i z e . d e n s i t y ( ) p r o c e d u r e s p e r f o r m th e s a m e c a l c u l a t i o n s . T h e y

    d i f f e r o n l y i n th e w a y of a c c e s s i n g t h e i m a g e a r r ay . I n t h e f o r m e r

    p r o c e d u r e t h e d e n s i t y a c t u a l i z a t i o n m a y b e a s s i g n e d t o a g i v e n

    l o c a t i o n i n t h e i m a g e m e m o r y , w h e r e a s i n t h e l a t t e r i t i s f o r b i d d e n

    d u e t o a s i m u l t a n e o u s a c c e s s t o t h i s l o c a t i o n b y m a n y p r o c e s s e s .

    4. C O N F L I C T F R E E M E M O R Y A C C E S S

    I n t h e p r e v i o u s s e c t i o n s o m e p r o c e d u r e s o f t h e p a r a l l e l c o n v o l u t i o n

    m e t h o d h a v e b e e n f o r m u l at e d . I n t h e s e p r o c e d u r e s c o m p o n e n t p r o c e s s e s

    f o r m t h e a r r a y s o f s i m i l a r p r o c e s s e s . T h e s e p r o c e s s e s , h o w e v e r , c a n n o t

  • 8/20/2019 1990 Parallel Implementation of the Convolution Method in Image Reconstruction

    5/10

      59

    b e c o n s i d e r e d t o b e sy n c h r o n o u s , a s a s y n c h r o n i s m i s i n t r o d u c e d b y a

    s i m u l t a n e o u s a c c e s s e i t h e r t o t h e p r o j e c t i o n o r i m a g e m e m o r y. I n t h i s

    s e c t i o n w e w i l l d i s c u s s t h i s p r o b l e m a n d r e f o r m u l a t e a b o v e p r o c e d u r e s

    s o as t o o b t a i n a c o n f l i c f r e e m e m o r y a c c e ss .

    T o a v o i d a s i m u l t a n e o u s m e m o r y a c c e s s p a r a l l e l m e m o r i e s s h o u l d b e

    u s ed . A p a r a l l e l m e m o r y c o n s i s t s o f s e v e r a l m e m o r y m o d u l e s , e a c h o f

    w h i c h c a n b e a c c e s s e d i n d e p e n d e n t l y . A s s u m e t h a t t h e m e m o r y c o n s i s t s

    o f B m e m o r y m o d u l e s ( b l o c ks ) , e a c h h a v i n g t h e l e n g t h A . L e t b = 0 . . B - I

    d e n o t e t h e m o d u l e i n d e x , a n d a = 0 . . A - I t h e a d d r e s s w i t h i n a m o d u l e .

    T h e n , a r r a y i n d i c e s ( u s e d i n t h e p r o c e d u r e s f o r m u l a t e d a b o v e ) s h o u l d

    b e r e p l a c e d b y m o d u l e i n d i c e s a n d a dd r e s s e s . I t r e q u i r e s t o d e t e r m i n e

    a f o l l o w i n g m e m o r y - a r r a y m a p p i n g

    ( m o d u l e i n de x , a d d r e s s ) - > a r r a y i n d e x .

    C o n s i d e r p i x e l p a r a l l e l i s m . I t d e m a n d s a s i m u l t a n e o u s a c c e s s t o t h e

    w h o l e i m a g e m e m o r y , h o w e v e r , e a c h c o m p o n e n t p r o c e s s w r i t e s t o j u s t o n e

    l o c a t i on . T h e r e f o r e , w e w i l l r e d e f i n e p i x e l p a r a l l e l i s m s o a s t o g e t a

    c o n f l i c t f r e e a c c e s s t o t h e i m a g e m e m o r y . I t c a n b e d o n e b y

    r e s t r i c t i n g t h e d e g r e e o f p i x e l p a r a l l e l i s m t o t h e n u m b e r o f m e m o r y

    m o d u l e s

    S E Q a = 0 F O R A

    P A R b = 0 F O R B

    p r o c e s s . f o r . p i x e l ( a + ( b * A ) )

    O f c o u r s e , a h i g h e r v a l u e o f B r e s u l t s i n a h i g h e r d e g r e e o f

    p a r a l l e l i s m . H e n ce , t h e c o n v o l u t i o n . m e t h o d . p i x e l . p a r a l l e l i s m ( )

    p r o c e d u r e w i t h n o s i m u l t a n e o u s i m a g e m e m o r y a c c e s s c a n b e r e w r i t t e n a s

    P R O C c o n v o l u t i o n . p i x e l . c o n f l i c t . f r e e . i m a g e . m e m o r y . a c c e s s ( V A L I NT M ,A ,B )

    IN T m, a, b :

    S E Q

    P A R m = 0 F O R M

    p r o j e c t i o n . f i l t r a t i o n ( m )

    S E Q a = 0 F O R A

    P A R b = 0 F O R B

    b a c k p r o j e c t i o n . o p e r a t i o n ( a + ( b * A ) )

    C o n s i d e r p r o j e c t i o n p a r a l l e l i s m . I n t h i s ca s e M p r o c e s s e s

    s i m u l t a n e o u s l y r e q u i r e a n a c c e s s t o a g i v e n l o c a t i o n i n t h e i m a ge

    m e m o r y . A s s u m e t h a t t h e i m a g e m e m o r y c o n s i s t s o f M m e m o r y m o d u l es ,

    i . e. , J = M A. F u r t h e r m o r e , s u p p o s e m s = 0 . . M - I d e n o t e s t h e m o d u l e

    i n d ex . H e n c e , t h e i m a g e m e m o r y - i m a g e a r r a y m a p p i n g i s: j = a + m A o

    s

    L e t Jm d e n o t e t h e i m a g e a r r a y i n d e x f o r t h e m - t h c o m p o n e n t p r o c e ss . T o

    a t t a i n a c o n f l i c t f r e e i m a g e m e m o r y a c c e s s t h e i n d i c e s J m m = O . . M - I ,

    s h o u l d b e s h i f t e d s o a s t o r e s t r i c t a n a c c e s s o f a n y p r o c e s s t o j u s t

  • 8/20/2019 1990 Parallel Implementation of the Convolution Method in Image Reconstruction

    6/10

    36

    o n e m e m o r y m o d u l e a t t h e s a m e t im e . I t c a n b e a c h i e v e d b y d e f i n i n g t h e

    i m a g e m e m o r y - i m a g e a r r a y m a p p i n g f o r t h e m - t h c o m p o n e n t p r o c e s s a s

    J m = [ m A + a + m s A ] m o d J = [ a + m + m s ) A ] m o d J .

    T h u s , t h e c o n v o l u t i o n p r o c e d u r e m a k i n g u s e o f p r o j e c t i o n p a r a l l e l i s m

    c a n b e r e w r i t t e n a s f o l l o w s

    P R O C c o n v o l u t i o n . p r o j e c t i o n . c o n f l i c t . f r e e . i m a g e . m e m o r y . *

    * a c c e s s V A L I N T M, A)

    I N T m , m s , a :

    S E Q

    P A R m = 0 F O R M

    p r o j e c t i o n . f i l t r a t i o n m )

    P A R m = 0 F O R M

    S E Q m = 0 F O R M

    S E Q S a = 0 F O R A

    b a c k p r o j e c t i o n . o p e r a t i o n . s i n g l e . p r o j e c t i o n m ,

    a + m + m s ) * A ) R E M A , M) )

    N o t e t h a t i n t h i s c a s e i n s t e a d o f t h e a c t u a l i z e . d e n s i t y ) p r o c e d u r e

    t h e b a c k p r o j e c t i o n . o p e r a t i o n . s i n g l e . p r o j e c t i o n ) p r o c e d u r e m a y b e

    u s e d .

    L e t u s c o n s i d e r a s i m u l t a n e o u s p r o j e c t i o n m e m o r y a c c e s s . T h i s m e m o r y

    i s u s e d to p e r f o r m e i t h e r f i l t r a t i o n o f p r o j e c t i o n s o r b a c k p r o j e c t i o n .

    N o t e t h a t it i s e a s y to a v o i d a s i m u l t a n e o u s p r o j e c t i o n m e m o r y a c c e s s

    w i t h r e s p e c t t o f i l t r a t i o n b y s t o r i n g e a c h p r o j e c t i o n i n a s e p a r a t e

    m e m o r y m o d u l e .

    C o n s i d e r b a c k p r o j e c t i o n p a r a l l e l i z e d b y p i x e l p a r a l l e l i s m . I n m o s t

    c a s e s J > M a n d t h e n a s i m u l t a n e o u s p r o j e c t i o n m e m o r y a c c e s s c a n n o t b e

    a v o i d e d . H o w e v e r , m a k i n g u s e o f r e s t r i c t e d p i x e l p a r a l l e l i s m w i t h

    B = M w e c a n o b t a i n a c o n f l i c t f r e e p r o j e c t i o n m e m o r y a c c e s s . T h e n w e

    h a v e

    P R O C c o n v o l u t i o n . p i x e l . c o n f l i c t . f r e e . m e m o r y . a c c e s s V A L I N T M , A)

    I N T m , a :

    S E Q

    P A R m = 0 F O R M

    p r o j e c t i o n . f i l t r a t i o n m )

    S E Q a = 0 F O R A

    P A R m = 0 F O R M

    b a c k p r o j e c t i o n . c o n f l i c t . f r e e . p r o j e c t i o n . m e m o r y . a c c e s s a , m )

    I n t h e b a c k p r o j e c t i o n o p e r a t i o n w e m u s t a s s u r e t h a t a t t h e s a m e t i m e

    t h e v a l u e s o f t h e s u m m a t i o n i n d e x i . e. , t h e v a l u e s o f m o d u l e i n d i c e s)

    a r e d i f f e r e n t f o r a l l c o n c u r r e n t l y p r o c e s s e d p i x e l s .

    I n t h e c o n v o l u t i o n m e t h o d p a r a l l e l i z e d b y o p e r a t i o n p a r a l l e l i s m t h e r e

    i s n o s i m u l t a n e o u s i m a g e m e m o r y a c c e s s , a s a l l p i x e l s a r e p r o c e s s e d

  • 8/20/2019 1990 Parallel Implementation of the Convolution Method in Image Reconstruction

    7/10

    36

    s e q u e n t i a l l y . A s i m u l t a n e o u s p r o j e c t i o n m e m o r y a c ce s s , o n t h e o t h e r

    h a n d, c a n e a s i l y b e a v o i d e d b y s t o r i n g p r o j e c t i o n s i n s e p a r a t e m e m o r y

    m o d u l e s .

    L e t u s c o n s i d e r t h e c o n v o l u t i o n m e t h o d i n w h i c h b a c k p r o j e c t i o n i s

    p a r a l l e l i z e d b y p r o j e c t i o n p a r a l l e l i s m . T h en , i t i s w o r t h n o t i n g t h e

    f a ct t h a t b o t h f i l t r a t i o n a n d b a c k p r o j e c t i o n a r e p a r a l l e l i z e d

    b y t h e s a m e f o r m o f p a r a l l e l i s m . M o r e o v e r , t h e

    b a c k p r o j e c t i o n . o p e r a t i o n . s i n g l e . p r o j e c t i o n ) p r o c e d u r e d e m a n d s j u st a

    s i n g l e p r o j e c t i o n . T h e r e f o r e , t h e c o n v o l u t i o n m e t h o d c a n b e f o r m u l a t e d

    a s f o l l o w s

    P R O C c o n v o l u t i o n . p r o j e c t i o n . c o n f l i c t . f r e e . m e m o r y . a c c e s s V AL I N T M, A)

    IN T ms, m, a :

    P A R m = 0 F O R M

    S E Q

    p r o j e c t i o n . f i l t r a t i o n m )

    S E Q m = 0 F O R M

    S E Q ~ a = 0 F O R A

    b a c k p r o j e c t io n . o p e r a t i on . s i n g l e . p r oj e c t i o n m ,

    a + m + m s ) * A ) R E M A , M) )

    T h i s f o r m u l a t i o n o f t h e c o n v o l u t i o n m e t h o d h a s a v e r y c l e a r s t r u c tu r e .

    N a m e l y , i t c o n s i s t s o f a n a r r a y of s i m i l a r p r o c e s s e s . I n ad d i t i o n,

    t h e r e i s a s i m u l t a n e o u s a c c e s s n e i t h e r t o t he p r o j e c t i o n m e m o r y n o r t o

    t h e i m a g e m e m o r y . T h e r e f o r e , t h e c o m p o n e n t p r o c e s s e s a r e s y n c h r o n o u s

    a n d th e m e t h o d m a y b e i m p l e m e n t e d o n a S I M D a r c h i t e c t u r e .

    5. A R C H I T E C T U R E S F O R T H E P A R A L L E L C O N V O L U T I O N M E T H O D

    B a s e d o n t h e a b o v e c o n s i d e r a t i o n s w e w i l l p r o p o s e t w o a r c h i t e c t u r e s

    s u i t a b l e f o r t h e p a r a l l e l c o n v o l u t i o n m et h o d .

    L e t u s c o n s i d e r t h e c o n v o l u t i o n m e t h o d i n w h i c h b a c k p r o j e c t i o n i s

    p a r a l l e l i z e d b y p r o j e c t i o n p a r a l l e l i s m. T h e f in a l f o r m u l a t i o n o f th e

    m e t h o d c o n s i s t s o f a n a r r a y o f s i m i l a r p r o c e s s e s . A s s i g n a c o m p o n e n t

    p r o c e s s t o a p r o c e s s o r . T h us , t h e p r o c e s s o r s e x e c u t e s y n c h r o n o u s l y i n

    a S I M D m o d e t h e s a m e p r o g r a m o n d i f f e r e n t d a ta . F o r th e m - t h p r o c e s s o r

    t h e p r o g r a m c o n s i s t s o f t h e f o l l o w i n g s e q u e n c e o f i n s t r u ct i o n s :

  • 8/20/2019 1990 Parallel Implementation of the Convolution Method in Image Reconstruction

    8/10

    36

    p r o j e c t i o n . f i l t r a t i o n ( m )

    S E Q m = 0 F O R M

    S E Q S a = 0 F O R A

    b a c k p r o j e c t i o n . o p e r a t i o n . s i n g l e . p r o j e c t i o n ( m ,

    ( a + ( m + m s ) * A ) R E M ( A , M ) )

    N o t e t h a t e a c h p r o c e s s o r d e m a n d s a n a c c e s s j u s t t o o n e m o d u l e o f t h e

    p r o j e c t i o n m e m o r y. T h e r e f o r e , w e c a n p r o v i d e t h e p r o c e s s o r s w i t h l o c a l

    m e m o r i e s s o t h a t t h e m - t h p r o j e c t i o n m e m o r y m o d u l e P M i s c o n n e c t e d t o

    t h e m - t h p r o c e s s o r P m T h i s w a y a m e a s u r e m e n t v e c t o r i s d i s t r i b u t e d

    a m o n g l o c a l m e m o r i e s . A r e c o n s t r u c t e d i m a ge , o n t h e o t h e r h a n d , h a s t o

    b e k ep t i n g l o b a l m e m o r y , a s e a c h p r o c e s s o r r e q u i r e s a n a c c e s s t o t h e

    w h o l e i m a g e m e mo r y . T h e r e f o r e , t h e i m a g e m e m o r y m o d u l e s I Mm ,

    m = O . . M -I , h a v e t o b e a c c e s s e d b y p r o c e s s o r s v i a a s w i t c h i n g n e t w o r k .

    T h e c o m p l e t e r e c o n s t r u c t e d i m a g e i s w r i t t e n t o t h e i m a g e m e m o r y i n M

    i t e r a t io n s . I n t h e l - t h i t e r a t i o n t h e s w i t c h i n g n e t w o r k l i n k s t h e m - t h

    p r o c e s s o r w i t h t h e (m + i) m o d M i m a g e m e m o r y m o d u l e . A n a r c h i t e c t u r e

    f o r t h e p a r a l l e l c o n v o l u t i o n m e t h o d e x p l o i t i n g p r o j e c t i o n p a r a l l e l i s m

    i s p r e s e n t e d i n F ig . i.

    I P M o l.... [ . . . . p M 1

    I I

    s w i t c h i n g n e t w o r k

    l , I M M I

    F i g u r e i. A n a r c h i t e c t u r e f o r t h e p a r a l l e l c o n v o l u t i o n

    m e t h o d e x p l o i t i n g p r o j e c t i o n p a r a l l e l i s m

  • 8/20/2019 1990 Parallel Implementation of the Convolution Method in Image Reconstruction

    9/10

    3 6 3

    L e t u s c o n s i d e r t h e c a s e o p p o s i t e t o t h e p r e v i o u s o n e . N a m e l y , a s s u m e

    t h a t a m e a s u r e m e n t v e c t o r i s k e p t i n g l o b a l m e m o ry , w h e r e a s a

    r e c o n s t r u c t e d i m a g e i s d i s t r i b u t e d a m o n g l o c a l m e m o r i e s . N o t e t h a t

    t h i s s i t u a t i o n o c c u r s i n t h e c o n v o l u t i o n m e t h o d i n w h i c h

    b a c k p r o j e c t i o n i s p a r a l l e l i z e d b y p i x e l p a r a l l e l i s m . T h u s, t h e m - t h

    p r o c e s s o r e x e c u t e s t h e f o l l o w i n g p r o g r a m

    p r o j e c t i o n . f i l t r a t i o n m )

    S E Q a = 0 F O R A

    b a c k p r o j e c t i o n . c o n f l ic t . f r e e . p r o j e c t i o n . m e m or y . a c c e s s a , m )

    T h e p r o j e c t i o n d a t a a r e r e a d i n M i t e r a t i o n s. I n t h e l - t h i t e r a t i o n

    t h e s w i t c h i n g n e t w o r k l i n k s t h e m - t h p r o c e s s o r w i t h t h e m + i) m o d M

    p r o j e c t i o n m e m o r y m o d u l e . A n a r c h i t e c t u r e f o r t h e p a r a l l e l c o n v o l u t i o n

    m e t h o d m a k i n g u s e o f p i x e l p a r a l l e l i s m i s p r e s e n t e d i n F ig . 2.

    P M

    P M 1

    s w itc h i n g n e t w o r k

    IM ° 1 IM I

    I M M - t

    P M M I I

    F i g u r e 2 . A n a r c h i t e c t u r e f o r t h e p a r a l l e l c o n v o l u t i o n

    m e t h o d m a k i n g u s e o f p i x e l p a r a l l e l i s m

    B o t h a r c h i t e c t u r e s p r e s e n t e d a b o v e h a v e t h e s a m e c o m p o n e n t s , i .e .,

    t h e y c o n t a i n M p r o c e s s o r s , M p r o j e c t i o n m e m o r y m o du l e s , M i m a g e m e m o r y

  • 8/20/2019 1990 Parallel Implementation of the Convolution Method in Image Reconstruction

    10/10

      64

    m o d u l e s , a n d t h e s w i t c h i n g n e t w o r k. F u r t h e r m o r e , t h e p r o c e s s o r s

    p e r f o r m t h e sa m e f u n c ti o n s , i .e . , f i l t r a t i o n o f p r o j e c t i o n s a n d

    c a l c u l a t i o n o f t h e d e n s i t y f o r a l l p i x el s . N o t e t h a t t h e a r c h i t e c t u r e s

    a l l o w t o a t t a i n t h e s a m e s p e e d u p M p r o v i d e d t h a t t h e m e m o r y a c c e s s

    t i m e s f o r s e q u e n t i a l a n d p a r a l l e l p r o c e s s i n g a r e e q ua l . I n s p i t e o f

    t h e s e c o m m o n f e a t u r es , t h e r e e x is t s a n e s s e n t i a l d i f f e r e n c e b e t w e e n

    t h e s e a r c h i t e c t u r e s . T h e a r c h i t e c t u r e e x p l o i t i n g p r o j e c t i o n

    p a r a l l e l i s m s u m s t h e c o n t r i b u t i o n s o f t h e p r o j e c t i o n s t o t h e i m a g e

    d e n si t y, w h e r e a s t h e a r c h i t e c t u r e m a k i n g u s e o f p i x e l p a r a l l e l i s m

    c a l c u l a t e s t h e c o m p l e t e d e n s i t y . T h e r e f o r e , t h e f o r m e r a r c h i t e c t u r e

    r e q u i r e s M t i me s m o r e a c c e s s e s t o t h e i m a g e m e m o r y t h a n t h e l a t t e r

    a nd , c o n s e q u e n t l y , r e s u l t s i n s l o w e r r e c o n s t r u c t i o n .

    R E F E R E N C E S

    [i] H E R M A N , G . T. e d .) : I m a g e R e c o n s t r u c t i o n f r o m P r o j e c t i o n s .

    I m p l e m e n t a t i o n a n d A p p l i c a t i o n s . S p r i n g e r - V e r l a g , B e r l i n 1 97 9 .

    [2] H E R M A N , G . T .: I m a g e R e c o n s t r u c t i o n f r o m P r o j e c t i o n s . T h e

    F u n d a m e n t a l s o f C o m p u t e r i z e d T o m o g r a p h y . A c a d e m i c P r e s s, N e w Y o r k

    1980.

    [3] N A T T E R E R , F .: T h e M a t h e m a t i c s o f C o m p u t e r i z e d T o m o g r a p h y . W i l l e y ,

    N e w Y o r k 1 9 86 .

    [4] N O W I N S K I, W . L o : I m a g e r e c o n s t r u c t i o n m e t h o d s a n d a t o o l f o r t h e i r

    i n v e s t i g a t i o n . J o u r n a l o f N e w G e n e r a t i o n C o m p u t e r S y st e m s , V o l . i ,

    No. 4, 1988, 327-352.

    [5] N O W I ~ SK I , W . L . : S o m e n o t e s o n p a r a l l e l i s m i n i m a g e r e c o n s t r u c t i o n .

    I n s t i t u t e o f C o m p u t e r S c i e n c e o f P o l i s h A c a d e m y o f S c i e n c e s

    R e p o r t s , 6 5 2 , 1 9 8 9 , 1 - 5 2 .

    [6J P O U T A I N , D. : A t u t o r i a l i n t r o d u c t i o n t o o c c a m p r o g r a m m i n g . I n m o s

    Ltd., 1987.