[Insight-users] Marching Cubes itkReadITKImage3DSegmentShowVTK

Luis Ibanez luis.ibanez at kitware.com
Thu Apr 24 14:09:30 EDT 2008


mm,
This is embarrassing in the highest degree   :-/


      I'm now printing my email,
      and will go and hide in a cave
      to slowly chew it to pieces while reading:


        "Against Intellectual Monopoly"
        "Economic and Game Theory"
        by Michele Boldrin and David K. Levine
  http://www.dklevine.com/general/intellectual/against.htm



Now I know why cicadas hide for 17 years underground...



       Luis


----------------------
Bill Lorensen wrote:
> Luis,
> 
> A minor addition (or correction) to your comments on vtkMarchingCubes.
> The SynchronizedTemplates code you mentioned also resided in the vtk
> Patented directory. I'm pretty sure those algrotihms never eceived a
> US patent. Your employer can clarify this. While they resided in the
> Patented directory, the ST code did have the comments:
>  	  	  	 THIS CLASS IS PATENT PENDING.
>  	  	  	
>  	  	  	Application of this software for commercial purposes requires
>  	  	  	a license grant from Kitware. Contact:
>  	  	  	Ken Martin
>  	  	  	Kitware
>                         28 Corporate Drive Suite 204,
>                         Clifton Park, NY 12065
>       	  	  	Phone:1-518-371-3971
>          	  	for more information.
> 
> The vtkMarchingContourFilter uses Marching Cubes if the data set is appropriate.
> 
> Bill
> 
> On Thu, Apr 24, 2008 at 11:09 AM, Luis Ibanez <luis.ibanez at kitware.com> wrote:
> 
>> 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
>>>
>>
>> _______________________________________________
>> Insight-users mailing list
>> Insight-users at itk.org
>> http://www.itk.org/mailman/listinfo/insight-users
>>
> 
> 


More information about the Insight-users mailing list