[Insight-users] Marching Cubes itkReadITKImage3DSegmentShowVTK

Luis Ibanez luis.ibanez at kitware.com
Thu Apr 24 11:09:40 EDT 2008


Hi Prabhat,

The surface extraction in this example is performed by the VTK filter

                     vtkContourFilter
http://www.vtk.org/doc/nightly/html/classvtkContourFilter.html


you will find the relevant code in lines 185-196


     // Draw contours around the segmented regions
     vtkContourFilter * contour = vtkContourFilter::New();
     contour->SetInput( vtkImporter2->GetOutput() );
     contour->SetValue(0, 128);

     polyMapper->SetInput( contour->GetOutput() );



"Marching Cubes" is one among several other algorithms that this filter
can execute. If you look at the collaboration diagram in the HTML
Doxxygen-generated documentation (above), you will find the filters:


            vtkGridSynchronizedTemplates3D
            vtkSynchronizedTemplates3D
            vtkGridSynchronizedTemplates2D
            vtkSynchronizedTemplates2D


as the potential delegates for implementing this task.
Note that "Marching Cubes" is not in the list.



One of the reasons why alternative implementations to Marching Cubes
are available, is the GE patented Marching Cube algorithms, and in this
way deprived the larger community from using it.  This intellectual
monopolization resulted in the creation of alternative algorithms.



One interesting counter-example of how patents promote progress....  :-)

       This time by forcing people to invent new
       methods *different* from the patented ones   :-)


BTW:

    The Marching Cubes patent has now expired, and the algorithm,
    after 20 years of monopoly has entered the public domain.




    Luis



-------------------
prabhat246 wrote:
> I wanted to run marching cubes on my Dicom image set.
> I was told to refer example
> 
> InsightApplications-3.4.0\Auxiliary\vtk\ itkReadITKImage3DSegmentShowVTK
> 
> I can successfully run this example. 
> but I could not find where the actual Marching cube algorithm is being
> called?
> also How can I change the parameters of Marching cube algorithm?
> (If I want output mesh to be coarse or dense)
> 
> Thanks a lot.
> Prabhat


More information about the Insight-users mailing list