Marching Cubes

12
1 Challenge the future Marching Cubes A High Resolution 3D Surface Construction Algorithm

description

Computer Graphics and Animation course TU Delft

Transcript of Marching Cubes

  • 1. 1Challenge the futureMarching CubesA High Resolution 3D Surface ConstructionAlgorithm

2. 2Challenge the futureIntroduction Algorithm developed by William E. Lorensen and Harvey E.Cline and published in the 1987 SIGGRAPH proceedings. Aims to create 3D models from Medical data: X-ray computed tomography (CT) Magnetic resonance (MR) Single-photon emission computedtomography (SPECT) 3. 3Challenge the future3D Medical Algorithms & Related WorkWorkflow:1. Data acquisition: multiple 2D slices2. Image processing to find structures or filter data3. Surface construction4. DisplayApproaches: Contours of the surface on consecutive slicesconnected with triangles Creates surfaces from cuberilles Octree, etc. 4. 4Challenge the futureMarching Cubes Algorithm Locate surface to a user-specified value Create triangles Calculate normals to ensure the quality of the imageIdea 5. 5Challenge the futureMarching Cubes Algorithm Divide-and-conquer to locate surface in cube 2 adjacent slices 4 pixels used on both slices tocreate vertices of cubeLocate surface 6. 6Challenge the futureMarching Cubes Algorithm Cube vertices are assigned with binary values One for inside (or on) the surface Zero for outside the surface In 2D:Create triangles 7. 7Challenge the futureMarching Cubes Algorithm In 3D: 28= 256 casesCreate triangles 8. 8Challenge the futureMarching Cubes Algorithm Use symmetry and rotation toreduce 256 cases to 14 patterns Index of 8 bits to numberthe cases With linear interpolation the surfaceintersection is foundCreate triangles 9. 9Challenge the futureMarching Cubes Algorithm Final step to increase the quality of the image With central differences an unit normal can be calculated forevery cube vertex using 4 slices Interpolation of these normalsCalculate normals 10. 10Challenge the futureImprovements Efficiency increased by using pixel-to-pixel and line-to-linecoherence. 3 new edges are needed to interpolate Other 9 edges are obtained from previous slices, lines or pixels Reducing slice resolution by averaging four pixels into one Solid modeling using the three notions inside, outside,and on 11. 11Challenge the futureImplementation and ResultsImplementation Number of triangles is proportional to the area of the surface = A lot! Filtering is applied to reduce the resolution and number of trianglesResults CT MR SPECT 12. 12Challenge the futureConclusions Realism is achieved by the calculation of the normalized gradient Large number of triangles reduced by surface cutting andconnectivity The algorithm has some flaws: high amount of memory needed to store resulting surface Sign change in the 14 original patterns can lead to mistakes