volumetric image visualization
play

Volumetric Image Visualization Alexandre Xavier Falc ao LIDS - - PowerPoint PPT Presentation

Volumetric Image Visualization Alexandre Xavier Falc ao LIDS - Institute of Computing - UNICAMP afalcao@ic.unicamp.br Alexandre Xavier Falc ao MO815 - Volumetric Image Visualization Planar cuts, reslicing, and interpolation In the


  1. Volumetric Image Visualization Alexandre Xavier Falc˜ ao LIDS - Institute of Computing - UNICAMP afalcao@ic.unicamp.br Alexandre Xavier Falc˜ ao MO815 - Volumetric Image Visualization

  2. Planar cuts, reslicing, and interpolation In the previous lecture, we learned that for a set P of points p k , k ∈ [1 , n ], in the scene region, the intensities I ( p k ) must be obtained by interpolation. Alexandre Xavier Falc˜ ao MO815 - Volumetric Image Visualization

  3. Planar cuts, reslicing, and interpolation In the previous lecture, we learned that for a set P of points p k , k ∈ [1 , n ], in the scene region, the intensities I ( p k ) must be obtained by interpolation. Today, we will learn how to create sequences of cuts (new slices) in the scene for a given viewing direction and orientation n ′ , which also requires interpolation. Alexandre Xavier Falc˜ ao MO815 - Volumetric Image Visualization

  4. Planar cuts, reslicing, and interpolation In the previous lecture, we learned that for a set P of points p k , k ∈ [1 , n ], in the scene region, the intensities I ( p k ) must be obtained by interpolation. Today, we will learn how to create sequences of cuts (new slices) in the scene for a given viewing direction and orientation n ′ , which also requires interpolation. We will then learn how to estimate the intensity at any point inside the scene region from the intensities of the nearby spels — i.e., the interpolation operation. Alexandre Xavier Falc˜ ao MO815 - Volumetric Image Visualization

  5. Planar cuts and reslicing In order to obtain a planar cut (slice) at a point p 0 inside the scene, such that n ′ is the ortogonal vector to the cut, one needs to apply the following transformations: Translate the viewing (cut) plane (i.e., center of ˆ J ) to the origin of the ( x , y , z ) coordinate system. Align the n vector to the desired viewing vector n ′ — this is the inverse of the transformation that aligns an arbitrary vector to the z-axis. Translate the rotated viewing plane to the desired location p 0 . Alexandre Xavier Falc˜ ao MO815 - Volumetric Image Visualization

  6. Planar cuts and reslicing In order to obtain a planar cut (slice) at a point p 0 inside the scene, such that n ′ is the ortogonal vector to the cut, one needs to apply the following transformations: Translate the viewing (cut) plane (i.e., center of ˆ J ) to the origin of the ( x , y , z ) coordinate system. Align the n vector to the desired viewing vector n ′ — this is the inverse of the transformation that aligns an arbitrary vector to the z-axis. Translate the rotated viewing plane to the desired location p 0 . Alexandre Xavier Falc˜ ao MO815 - Volumetric Image Visualization

  7. Planar cuts and reslicing In order to obtain a planar cut (slice) at a point p 0 inside the scene, such that n ′ is the ortogonal vector to the cut, one needs to apply the following transformations: Translate the viewing (cut) plane (i.e., center of ˆ J ) to the origin of the ( x , y , z ) coordinate system. Align the n vector to the desired viewing vector n ′ — this is the inverse of the transformation that aligns an arbitrary vector to the z-axis. Translate the rotated viewing plane to the desired location p 0 . Alexandre Xavier Falc˜ ao MO815 - Volumetric Image Visualization

  8. Planar cuts and reslicing In order to obtain a planar cut (slice) at a point p 0 inside the scene, such that n ′ is the ortogonal vector to the cut, one needs to apply the following transformations: Translate the viewing (cut) plane (i.e., center of ˆ J ) to the origin of the ( x , y , z ) coordinate system. Align the n vector to the desired viewing vector n ′ — this is the inverse of the transformation that aligns an arbitrary vector to the z-axis. Translate the rotated viewing plane to the desired location p 0 . Alexandre Xavier Falc˜ ao MO815 - Volumetric Image Visualization

  9. Planar cuts and reslicing Therefore, for every p ∈ D J , we must apply the transformation Ψ below, being Ψ r = R x ( − α ) R y ( β ) the alignment of n with n ′ :    u p  x p ′ T (+ x p 0 , + y p 0 , + z p 0 )Ψ r T ( − d 2 , − d 2 , d y p ′ v p     = 2 )    − d  z p ′     2 1 1 The coordinates p ′ = ( x p ′ , y p ′ , z p ′ ) may not be integers, which requires interpolation to assign J ( p ) ← I ( p ′ ). For reslicing a scene from p 0 with spacement λ > 0 between slices, one can move the cut plane to p k = p k − 1 + λ n ′ , k = 1 , 2 , . . . , n − 1. Alexandre Xavier Falc˜ ao MO815 - Volumetric Image Visualization

  10. Algorithm to get a slice given p 0 and n ′ Input: Scene ˆ I = ( D I , I ), p 0 , and n ′ . Output: Image ˆ J = ( D J , J ) of the slice. 1 Compute Ψ and Ψ r from p 0 , n = (0 , 0 , 1 , 0), and n ′ . 2 For each p ∈ D J do p ′ ← Ψ( p ). 3 4 If ( ⌈ x p ′ ⌉ , ⌈ y p ′ ⌉ , ⌈ z p ′ ⌉ ) ∈ D I then J ( p ) ← I ( p ′ ) using interpolation. 5 Alexandre Xavier Falc˜ ao MO815 - Volumetric Image Visualization

  11. Reslicing algorithm Input: Scene ˆ I = ( D I , I ), p 0 , n ′ , λ , and number n of slices. Output: Scene ˆ J = ( D J , J ), with axial slices J 0 , J 1 , . . . , J n − 1 . 1 J 0 ← GetSlice (ˆ I , p 0 , n ′ ). 2 For k = 1 to n − 1 do 3 p k ← p k − 1 + λ n ′ . J k ← GetSlice (ˆ 4 I , p k , n ′ ) Alexandre Xavier Falc˜ ao MO815 - Volumetric Image Visualization

  12. Interpolation Interpolation estimates the intensity I ( p ′ ) at a point p ′ = ( x p ′ , y p ′ , z p ′ ) with real coordinates inside a scene by using the spel values I ( q k ), k = 1 , 2 , . . . , |A ( p ′ ) | , where q k ∈ A ( p ′ ) ⊂ D I and A ( p ′ ) is a set of nearby spels of p ′ . Interpolation is required when geometric transformations Φ on spels of an image ˆ I = ( D I , I ) create an image ˆ J = ( D J , J ). In order to avoid holes (i.e., unfilled spels in ˆ J ), one must apply Φ − 1 on each spel p ∈ D J to obtain p ′ = Φ − 1 ( p ), with real coordinates for interpolation J ( p ) ← I ( p ′ ). Alexandre Xavier Falc˜ ao MO815 - Volumetric Image Visualization

  13. Interpolation Interpolation estimates the intensity I ( p ′ ) at a point p ′ = ( x p ′ , y p ′ , z p ′ ) with real coordinates inside a scene by using the spel values I ( q k ), k = 1 , 2 , . . . , |A ( p ′ ) | , where q k ∈ A ( p ′ ) ⊂ D I and A ( p ′ ) is a set of nearby spels of p ′ . Interpolation is required when geometric transformations Φ on spels of an image ˆ I = ( D I , I ) create an image ˆ J = ( D J , J ). In order to avoid holes (i.e., unfilled spels in ˆ J ), one must apply Φ − 1 on each spel p ∈ D J to obtain p ′ = Φ − 1 ( p ), with real coordinates for interpolation J ( p ) ← I ( p ′ ). Alexandre Xavier Falc˜ ao MO815 - Volumetric Image Visualization

  14. Bilinear interpolation In 2D, the nearby spels q k ∈ A ( p ′ ) ⊂ D I , k = 1 , 2 , 3 , 4, may be obtained as q 1 = ( ⌊ x p ′ ⌋ , ⌊ y p ′ ⌋ ), q 2 = ( ⌊ x p ′ ⌋ + 1 , ⌊ y p ′ ⌋ ), q 3 = ( ⌊ x p ′ ⌋ , ⌊ y p ′ ⌋ + 1), and q 4 = ( ⌊ x p ′ ⌋ + 1 , ⌊ y p ′ ⌋ + 1). I ( p ′ ) ( y p ′ − y q 12 ) I ( q 34 ) + ( y q 34 − y p ′ ) I ( q 12 ) = I ( q 12 ) = ( x p ′ − x q 1 ) I ( q 2 ) + ( x q 2 − x p ′ ) I ( q 1 ) ( x p ′ − x q 3 ) I ( q 4 ) + ( x q 4 − x p ′ ) I ( q 3 ) I ( q 34 ) = Alexandre Xavier Falc˜ ao MO815 - Volumetric Image Visualization

  15. Bilinear interpolation Scaling and rotation around the center of the image and axis z . Alexandre Xavier Falc˜ ao MO815 - Volumetric Image Visualization

  16. Trilinear interpolation In 3D, the nearby spels q k ∈ A ( p ′ ) ⊂ D I , k = 1 , 2 , . . . , 8, are obtained similarly, based on the floor operations on the x p ′ , y p ′ , and z p ′ real coordinates of p ′ . I ( p ′ ) ( x p ′ − x q 1357 ) I ( q 2468 ) + ( x q 2468 − x p ′ ) I ( q 1357 ) = I ( q 2468 ) = ( z p ′ − z q 24 ) I ( q 68 ) + ( z q 68 − z p ′ ) I ( q 24 ) ( z p ′ − z q 13 ) I ( q 57 ) + ( z q 57 − z p ′ ) I ( q 13 ) I ( q 1357 ) = Alexandre Xavier Falc˜ ao MO815 - Volumetric Image Visualization

  17. Trilinear interpolation I ( q 24 ) = ( y p ′ − y q 4 ) I ( q 2 ) + ( y q 2 − y p ′ ) I ( q 4 ) ( y p ′ − y q 8 ) I ( q 6 ) + ( y q 6 − y p ′ ) I ( q 8 ) I ( q 68 ) = I ( q 13 ) = ( y p ′ − y q 3 ) I ( q 1 ) + ( y q 1 − y p ′ ) I ( q 3 ) ( y p ′ − y q 7 ) I ( q 5 ) + ( y q 5 − y p ′ ) I ( q 7 ) I ( q 57 ) = Alexandre Xavier Falc˜ ao MO815 - Volumetric Image Visualization

  18. Reformatting a scene Therefore, a scene ˆ I = ( D I , I ) with spels sizes ( d x , d y , d z ) can be reformatted into a scene ˆ J = ( D I , J ) with spels sizes ( d ′ x , d ′ y , d ′ z ) by x , s y = d y scaling D J , with factors s x = d x y , and s z = d z z , and d ′ d ′ d ′ determining the intensities J ( p ) via 3D interpolation in ˆ I = ( D I , I ). Alexandre Xavier Falc˜ ao MO815 - Volumetric Image Visualization

Recommend


More recommend