Open Topology: A Toolkit for Brain Isosurface Correction Sylvain JAUME (1) , Patrice RONDAO (2) , Benoit MACQ (2) (1)  Kit...
Visualization of the Brain <ul><li>Speech, vision, etc. lie in the  outer layer . </li></ul><ul><li>surface visualization ...
Visualization of the Brain 3D Image Segmentation Marching Cubes Smoothing Mesh
Visualization of the Brain 3D Image Segmentation Marching Cubes Smoothing Mesh
Visualization of the Brain 3D Image Segmentation Marching Cubes Smoothing Mesh
Visualization of the Brain 3D Image Segmentation Marching Cubes Smoothing Mesh with  Handles
Visualization of the Brain 3D Image Segmentation Marching Cubes Smoothing Mesh with  Handles
Visualization of the Brain 3D Image Segmentation Marching Cubes Smoothing Mesh with  Handles
Visualization of the Brain 3D Image Segmentation Marching Cubes Smoothing Mesh with  Handles
Visualization of the Brain 3D Image Segmentation Marching Cubes Smoothing Mesh with  Handles
Visualization of the Brain <ul><li>Where do handles come from ? </li></ul><ul><ul><li>Limited resolution </li></ul></ul><u...
Visualization of the Brain <ul><li>Does it really matter ??? </li></ul><ul><ul><li>For 3D visualization </li></ul></ul><ul...
State of the Art <ul><li>Image methods </li></ul><ul><ul><li>Malandain 93, Shattuck 01, Kriegeskorte 01 </li></ul></ul><ul...
Contributions <ul><li>No region is left out </li></ul><ul><li>Fast (less than  2 min ) </li></ul><ul><li>Open Source </li>...
Algorithm Overview Marching Cubes Handle Detection Handle Correction 3D Image Triangle Mesh Corrected 3D Image Contours
Algorithm Overview Marching Cubes Handle Detection Handle Correction 3D Image Triangle Mesh Contours Corrected 3D Image
Algorithm Overview Marching Cubes Handle Detection Handle Correction 3D Image Triangle Mesh Contours Corrected 3D Image
Algorithm Overview Marching Cubes Handle Detection Handle Correction 3D Image Triangle Mesh Polylines Corrected 3D Image
Algorithm Overview Marching Cubes Handle Detection Handle Correction 3D Image Triangle Mesh Contours Corrected 3D Image
Algorithm Overview Marching Cubes Handle Detection Handle Correction 3D Image Triangle Mesh Contours Corrected 3D Image
Algorithm Overview Marching Cubes Handle Detection Handle Correction 3D Image Triangle Mesh Contours Corrected 3D Image
Algorithm Overview Marching Cubes Handle Detection Handle Correction 3D Image Triangle Mesh Contours Marching Cubes Correc...
Algorithm Overview Marching Cubes Handle Detection Handle Correction 3D Image Triangle Mesh Contours Marching Cubes Correc...
Key Points 1. Embracing the Handle 2. Holding it Tight 3. Filling the Handle
1. Embracing the Handle
1. Embracing the Handle <ul><li>Init </li></ul>
1. Embracing the Handle <ul><li>Init </li></ul>
1. Embracing the Handle <ul><li>Init </li></ul>
1. Embracing the Handle <ul><li>Init </li></ul>
1. Embracing the Handle <ul><li>Split </li></ul>
1. Embracing the Handle <ul><li>Split </li></ul>
1. Embracing the Handle <ul><li>Split </li></ul>
1. Embracing the Handle <ul><li>Merge </li></ul>
1. Embracing the Handle <ul><li>Merge </li></ul>
1. Embracing the Handle <ul><li>Merge </li></ul>
1. Embracing the Handle <ul><li>Merge </li></ul>
1. Embracing the Handle <ul><li>Merge </li></ul>
1. Embracing the Handle <ul><li>Merge </li></ul>
1. Embracing the Handle <ul><li>Finalize </li></ul>
1. Embracing the Handle <ul><li>Finalize </li></ul>
1. Embracing the Handle <ul><li>Finalize </li></ul>
2. Holding it Tight <ul><li>Distance </li></ul>
2. Holding it Tight <ul><li>Distance </li></ul>
2. Holding it Tight <ul><li>Distance </li></ul>
2. Holding it Tight <ul><li>Distance </li></ul>
2. Holding it Tight <ul><li>Distance </li></ul>
2. Holding it Tight <ul><li>Distance </li></ul>
2. Holding it Tight <ul><li>Distance </li></ul>
2. Holding it Tight <ul><li>Distance </li></ul>
2. Holding it Tight <ul><li>Distance </li></ul>
3. Filling the Handle  <ul><li>New pixel intensity inside the loop </li></ul>
Putting it Together <ul><li>Handle Detection </li></ul><ul><ul><li>Embracing the handle </li></ul></ul><ul><li>Handle Loca...
Performance <ul><li>g: genus, i.e. number of handles </li></ul><ul><li>V: number of vertices </li></ul><ul><li>E: number o...
Data Structures vtkCellLinks vtkCellArray vtkPoints
Data Structures <ul><li>Edge to Start Point </li></ul><ul><li>Edge to End Point </li></ul><ul><li>Edge to Polygon </li></u...
Data Structures <ul><li>Edge to Reverse Edge </li></ul><ul><li>Edge to Parent Edge </li></ul>Detection Localization Half-E...
Data Structures <ul><li>Edge to Contour </li></ul><ul><li>Edge to Distance </li></ul>Detection Localization Half-Edge vtkC...
Data Structures <ul><li>Extended Half-Edge Structure: </li></ul><ul><ul><li>Edge to Polygon </li></ul></ul><ul><ul><li>Edg...
Code <ul><li>vtkHandleDetection </li></ul><ul><ul><li>Half-edge structure </li></ul></ul><ul><ul><li>Area growing </li></u...
Goal <ul><li>Correct  EVERY  handle  FAST! </li></ul>
Perspectives <ul><li>Visualization, measurements, source localization </li></ul><ul><li>Benchmarking with other methods </...
MICCAI Open Source Workshop <ul><li>&quot; Open Topology: A Toolkit for Brain Isosurface Correction &quot;, Jaume, Rondao,...
www.OpenTopology.org <ul><li>Algorithm </li></ul><ul><li>Source code </li></ul><ul><li>Documentation </li></ul><ul><li>Dat...
Acknowledgements <ul><li>Special thanks to </li></ul><ul><ul><li>M. Ferrant, S.K. Warfield, A.H. Barr, and many others at ...
References I <ul><li>Segonne, Florent and Grimson, W. Eric L and Fischl, Bruce, A Genetic Algorithm for the Topology Corre...
References II <ul><li>Fischl, B. and Liu, A. and Dale, A. M., Automated Manifold Surgery: Constructing Geometrically Accur...
References III <ul><li>Bischoff, Stephan and Kobbelt, Leif, Topologically Correct Extraction of the Cortical Surface of a ...
State of the Art <ul><li>Image methods </li></ul><ul><ul><li>Can miss large regions </li></ul></ul><ul><li>Mesh methods </...
Upcoming SlideShare
Loading in...5
×

Open Topology: A Toolkit for Brain Isosurface Correction-776

1,235

Published on

http://hdl.handle.net/1926/50

Published in: Technology
0 Comments
1 Like
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total Views
1,235
On Slideshare
0
From Embeds
0
Number of Embeds
0
Actions
Shares
0
Downloads
10
Comments
0
Likes
1
Embeds 0
No embeds

No notes for slide

Open Topology: A Toolkit for Brain Isosurface Correction-776

  1. 1. Open Topology: A Toolkit for Brain Isosurface Correction Sylvain JAUME (1) , Patrice RONDAO (2) , Benoit MACQ (2) (1) Kitware Inc., (2) University of Louvain
  2. 2. Visualization of the Brain <ul><li>Speech, vision, etc. lie in the outer layer . </li></ul><ul><li>surface visualization </li></ul>
  3. 3. Visualization of the Brain 3D Image Segmentation Marching Cubes Smoothing Mesh
  4. 4. Visualization of the Brain 3D Image Segmentation Marching Cubes Smoothing Mesh
  5. 5. Visualization of the Brain 3D Image Segmentation Marching Cubes Smoothing Mesh
  6. 6. Visualization of the Brain 3D Image Segmentation Marching Cubes Smoothing Mesh with Handles
  7. 7. Visualization of the Brain 3D Image Segmentation Marching Cubes Smoothing Mesh with Handles
  8. 8. Visualization of the Brain 3D Image Segmentation Marching Cubes Smoothing Mesh with Handles
  9. 9. Visualization of the Brain 3D Image Segmentation Marching Cubes Smoothing Mesh with Handles
  10. 10. Visualization of the Brain 3D Image Segmentation Marching Cubes Smoothing Mesh with Handles
  11. 11. Visualization of the Brain <ul><li>Where do handles come from ? </li></ul><ul><ul><li>Limited resolution </li></ul></ul><ul><ul><li>Scanner artifacts </li></ul></ul><ul><ul><li>Segmentation errors </li></ul></ul>
  12. 12. Visualization of the Brain <ul><li>Does it really matter ??? </li></ul><ul><ul><li>For 3D visualization </li></ul></ul><ul><ul><li>For distance measurements </li></ul></ul><ul><ul><li>For EEG source localization </li></ul></ul>
  13. 13. State of the Art <ul><li>Image methods </li></ul><ul><ul><li>Malandain 93, Shattuck 01, Kriegeskorte 01 </li></ul></ul><ul><li>Mesh methods </li></ul><ul><ul><li>Fischl 01, Guskov 01, Wood 04, Segonne 05 </li></ul></ul><ul><li>Graph methods </li></ul><ul><ul><li>Han 02, Segonne 03 </li></ul></ul><ul><li>Level-Set methods </li></ul><ul><ul><li>Han 01, Bischoff 02 </li></ul></ul>
  14. 14. Contributions <ul><li>No region is left out </li></ul><ul><li>Fast (less than 2 min ) </li></ul><ul><li>Open Source </li></ul>
  15. 15. Algorithm Overview Marching Cubes Handle Detection Handle Correction 3D Image Triangle Mesh Corrected 3D Image Contours
  16. 16. Algorithm Overview Marching Cubes Handle Detection Handle Correction 3D Image Triangle Mesh Contours Corrected 3D Image
  17. 17. Algorithm Overview Marching Cubes Handle Detection Handle Correction 3D Image Triangle Mesh Contours Corrected 3D Image
  18. 18. Algorithm Overview Marching Cubes Handle Detection Handle Correction 3D Image Triangle Mesh Polylines Corrected 3D Image
  19. 19. Algorithm Overview Marching Cubes Handle Detection Handle Correction 3D Image Triangle Mesh Contours Corrected 3D Image
  20. 20. Algorithm Overview Marching Cubes Handle Detection Handle Correction 3D Image Triangle Mesh Contours Corrected 3D Image
  21. 21. Algorithm Overview Marching Cubes Handle Detection Handle Correction 3D Image Triangle Mesh Contours Corrected 3D Image
  22. 22. Algorithm Overview Marching Cubes Handle Detection Handle Correction 3D Image Triangle Mesh Contours Marching Cubes Corrected Mesh Corrected 3D Image
  23. 23. Algorithm Overview Marching Cubes Handle Detection Handle Correction 3D Image Triangle Mesh Contours Marching Cubes Corrected Mesh Corrected 3D Image
  24. 24. Key Points 1. Embracing the Handle 2. Holding it Tight 3. Filling the Handle
  25. 25. 1. Embracing the Handle
  26. 26. 1. Embracing the Handle <ul><li>Init </li></ul>
  27. 27. 1. Embracing the Handle <ul><li>Init </li></ul>
  28. 28. 1. Embracing the Handle <ul><li>Init </li></ul>
  29. 29. 1. Embracing the Handle <ul><li>Init </li></ul>
  30. 30. 1. Embracing the Handle <ul><li>Split </li></ul>
  31. 31. 1. Embracing the Handle <ul><li>Split </li></ul>
  32. 32. 1. Embracing the Handle <ul><li>Split </li></ul>
  33. 33. 1. Embracing the Handle <ul><li>Merge </li></ul>
  34. 34. 1. Embracing the Handle <ul><li>Merge </li></ul>
  35. 35. 1. Embracing the Handle <ul><li>Merge </li></ul>
  36. 36. 1. Embracing the Handle <ul><li>Merge </li></ul>
  37. 37. 1. Embracing the Handle <ul><li>Merge </li></ul>
  38. 38. 1. Embracing the Handle <ul><li>Merge </li></ul>
  39. 39. 1. Embracing the Handle <ul><li>Finalize </li></ul>
  40. 40. 1. Embracing the Handle <ul><li>Finalize </li></ul>
  41. 41. 1. Embracing the Handle <ul><li>Finalize </li></ul>
  42. 42. 2. Holding it Tight <ul><li>Distance </li></ul>
  43. 43. 2. Holding it Tight <ul><li>Distance </li></ul>
  44. 44. 2. Holding it Tight <ul><li>Distance </li></ul>
  45. 45. 2. Holding it Tight <ul><li>Distance </li></ul>
  46. 46. 2. Holding it Tight <ul><li>Distance </li></ul>
  47. 47. 2. Holding it Tight <ul><li>Distance </li></ul>
  48. 48. 2. Holding it Tight <ul><li>Distance </li></ul>
  49. 49. 2. Holding it Tight <ul><li>Distance </li></ul>
  50. 50. 2. Holding it Tight <ul><li>Distance </li></ul>
  51. 51. 3. Filling the Handle <ul><li>New pixel intensity inside the loop </li></ul>
  52. 52. Putting it Together <ul><li>Handle Detection </li></ul><ul><ul><li>Embracing the handle </li></ul></ul><ul><li>Handle Localization </li></ul><ul><ul><li>Holding it tight </li></ul></ul><ul><li>Handle Correction </li></ul><ul><ul><li>Filling the handle </li></ul></ul>
  53. 53. Performance <ul><li>g: genus, i.e. number of handles </li></ul><ul><li>V: number of vertices </li></ul><ul><li>E: number of edges </li></ul><ul><li>F: number of faces </li></ul><ul><li>C: number of connected components </li></ul>Euler Characteristic
  54. 54. Data Structures vtkCellLinks vtkCellArray vtkPoints
  55. 55. Data Structures <ul><li>Edge to Start Point </li></ul><ul><li>Edge to End Point </li></ul><ul><li>Edge to Polygon </li></ul>Half-Edge vtkCellArray vtkPoints
  56. 56. Data Structures <ul><li>Edge to Reverse Edge </li></ul><ul><li>Edge to Parent Edge </li></ul>Detection Localization Half-Edge vtkCellArray vtkPoints
  57. 57. Data Structures <ul><li>Edge to Contour </li></ul><ul><li>Edge to Distance </li></ul>Detection Localization Half-Edge vtkCellArray vtkPoints
  58. 58. Data Structures <ul><li>Extended Half-Edge Structure: </li></ul><ul><ul><li>Edge to Polygon </li></ul></ul><ul><ul><li>Edge to Start Point </li></ul></ul><ul><ul><li>Edge to End Point </li></ul></ul><ul><ul><li>Edge to Reverse Edge </li></ul></ul><ul><ul><li>Edge to Parent Edge </li></ul></ul><ul><ul><li>Edge to Contour </li></ul></ul><ul><ul><li>Edge to Distance </li></ul></ul>
  59. 59. Code <ul><li>vtkHandleDetection </li></ul><ul><ul><li>Half-edge structure </li></ul></ul><ul><ul><li>Area growing </li></ul></ul><ul><ul><li>Shortest loop </li></ul></ul><ul><li>vtkHandleCorrection </li></ul><ul><ul><li>Loop to image </li></ul></ul><ul><ul><li>Water-tight region </li></ul></ul>
  60. 60. Goal <ul><li>Correct EVERY handle FAST! </li></ul>
  61. 61. Perspectives <ul><li>Visualization, measurements, source localization </li></ul><ul><li>Benchmarking with other methods </li></ul><ul><li>Half-Edge algorithms </li></ul><ul><li>Integration into CARET Software </li></ul>
  62. 62. MICCAI Open Source Workshop <ul><li>&quot; Open Topology: A Toolkit for Brain Isosurface Correction &quot;, Jaume, Rondao, Macq, MICCAI WS 2005 . </li></ul><ul><li>Article </li></ul><ul><li>Code </li></ul><ul><li>Data </li></ul><ul><li>Demo </li></ul>
  63. 63. www.OpenTopology.org <ul><li>Algorithm </li></ul><ul><li>Source code </li></ul><ul><li>Documentation </li></ul><ul><li>Data </li></ul><ul><li>Updates </li></ul>
  64. 64. Acknowledgements <ul><li>Special thanks to </li></ul><ul><ul><li>M. Ferrant, S.K. Warfield, A.H. Barr, and many others at UCL-Belgium, CalTech, SPL, MIT, INRIA and VTK mailing list. </li></ul></ul><ul><li>Thank you for your interest! </li></ul>
  65. 65. References I <ul><li>Segonne, Florent and Grimson, W. Eric L and Fischl, Bruce, A Genetic Algorithm for the Topology Correction of Cortical Surfaces, IPMI 2005. </li></ul><ul><li>Bischoff, Stefan and Kobbelt, Leif, Sub-Voxel Topology Control for Level-Set Surfaces},Computer Graphics Forum 2003. </li></ul><ul><li>Stephan Bischoff, Leif Kobbelt, Parameterization-free active contour models with topology control, The Visual Computer 2004. </li></ul><ul><li>Aktouf, Zouina and Bertrand, Gilles and Perroton, Laurent, A three-dimensional holes closing algorithm, Pattern Recognition Letters 2002. </li></ul><ul><li>Bertrand, Gilles, Simple Points, topological numbers and geodesic neighborhood in cubic grids, Pattern Recognition Letters 1994. </li></ul><ul><li>Bertrand, Gilles, A boolean characterization of three-dimensional simple points, Pattern Recognition Letters 1996. </li></ul><ul><li>G. Bertrand and G. Malandain, A New Characterization of Three-Dimensional Simple Points, Pattern Recognition Letters 1994 </li></ul>
  66. 66. References II <ul><li>Fischl, B. and Liu, A. and Dale, A. M., Automated Manifold Surgery: Constructing Geometrically Accurate and Topologically Correct Models of the Human Cerebral Cortex, IEEE Transactions on Medical Imaging. </li></ul><ul><li>Han, X., Xu, C., Braga-Neto, U., Prince, J., Topology Correction in Brain Cortex Segmentation Using a Multiscale Graph-based Algorithm, IEEE Transactions on Medical Imaging 2002. </li></ul><ul><li>X. Han, C. Xu, D. Tosun, and J. L. Prince, Cortical Surface Reconstruction Using a Topology Preserving Geometric Deformable Model, MMBIA 2001. </li></ul><ul><li>Kriegeskorte, N. and Goebel, R., An Efficient Algorithm for Topologically Correct Segmentation of the Cortical Sheet in Anatomical MR Volumes, NeuroImage, 2001. </li></ul><ul><li>Shattuck, D. W. and Leahy, R. M., Automated Graph-based Analysis and Correction of Cortical Volume Topology, IEEE Transactions on Medical Imaging, 2001. </li></ul><ul><li>Bischoff, S. and Kobbelt, L., Isosurface Reconstruction with Topology Control, Pacific Graphics Proceedings, 2002. </li></ul>
  67. 67. References III <ul><li>Bischoff, Stephan and Kobbelt, Leif, Topologically Correct Extraction of the Cortical Surface of a Brain Using Level-Set Methods, Bildverarbeitung fuer die Medizin, 2004. </li></ul><ul><li>Malandain, Grégoire and Bertrand, Gilles and Ayache, Nicholas, Topological Segmentation of Discrete Surfaces, International Journal of Computer Vision, 1993. </li></ul><ul><li>Zeng, X. and Staib, L. H. and Schultz, R. T. and Duncan, J. S., Segmentation and Measurement of the Cortex from 3D MR Images Using Coupled Surfaces Propagation, IEEE Transactions on Medical Imaging, 1999. </li></ul><ul><li>Ségonne, F. and Fischl, B. and Grimson, E., Topology correction of Subcortical Structures, Medical Image Computing and Computer-Assisted Intervention (MICCAI) 2003. </li></ul><ul><li>Guskov, I. and Wood, Z., Topological Noise Removal, Graphics Interface, 2001. </li></ul><ul><li>Wood, Z. J. and Hoppe, H. and Desbrun, M. and Schröder, P., Removing Excess Topology from Isosurfaces, ACM Transactions on Graphics, 2004. </li></ul>
  68. 68. State of the Art <ul><li>Image methods </li></ul><ul><ul><li>Can miss large regions </li></ul></ul><ul><li>Mesh methods </li></ul><ul><ul><li>Self-intersections </li></ul></ul><ul><li>Graph methods </li></ul><ul><ul><li>Computationally intensive </li></ul></ul><ul><li>Level-Set methods </li></ul><ul><ul><li>Controlled with heuristics </li></ul></ul>
  1. A particular slide catching your eye?

    Clipping is a handy way to collect important slides you want to go back to later.

×