[vtkusers] marching cubes issues..

Bill Lorensen wlorens1 at nycap.rr.com
Thu Aug 9 20:15:31 EDT 2001


You should use vtkMarchngCubes. Your pipeline looks fine. Try displaying the output of MarchingCubes.

What version of vtk are you using?

Bill

At 05:41 PM 8/9/01 -0400, Maneesh Yadav wrote:
>Hi all (again),
>I've got things running now with my data (I eventually had to convert my
>tiffs to pnms becuase of LZW issues)
>Now I have  segmented data (if anyone is interested in the mouse atlas
>paper, it is in a recent Developmental Biology, give me a mail if you
>need/want to find it) and when I visualize the volumes things are
>fine, and when I use thresholding things are still ok (if I pick the value
>for the spine, and use vtkImageThreshold, I get a nice spine), however
>when I try to contour the data, none of the filters complain about
>anything, but the poly file that I write out with vtkPolyDataWriter seems
>like junk (I have to scale out light years, and it just seems like a
>really long triangle).  The pipeline is the one described in
>Bill Lorensen's tutorial at:
>
>http://users.info.unicaen.fr/~karczma/docs/vtkhtml/applications/segment/segmented16.html
>
>(the parameters I use are default values that in the above URL)
>
>I am little confused as to use vtkMarchingCubes, vtkImageMarchingCubes, or
>vtkMarchingContourFilter
>
>Here's the main part of the code:
>------------------------------------------------------------------------------------
>
>tissueValues[tissue]=206
>
>threshold.SetInput(reader.GetOutput())
>  threshold.ThresholdBetween(tissueValues[tissue], tissueValues[tissue])
>  threshold.SetInValue(255)
>  threshold.SetOutValue(0)
>  threshold.GetOutput().ReleaseDataFlagOn()
>
>  shrinker.SetInput(threshold.GetOutput())
>  shrinker.SetShrinkFactors(options['SAMPLE RATE'][0],options['SAMPLE
>RATE'][1],options['SAMPLE RATE'][2])
>  shrinker.GetOutput().ReleaseDataFlagOn()
>
>  smoothedTissueData.SetInput(shrinker.GetOutput())
>  smoothedTissueData.SetDimensionality(3)
>  smoothedTissueData.SetStandardDeviation(options['GAUSSIAN STDDEV'])
>  smoothedTissueData.ReleaseDataFlagOn()
>
>#EVERYTHING UP TILL HERE SEEMS OK
>
>  mcubes.SetInput(smoothedTissueData.GetOutput())
>  mcubes.ComputeScalarsOff()
>  mcubes.ComputeGradientsOff()
>  mcubes.ComputeNormalsOff()
>  mcubes.SetValue(0,128)
>  mcubes.GetOutput().ReleaseDataFlagOn()
>
>  decimator.SetInput(mcubes.GetOutput())
>  decimator.SetInitialFeatureAngle(options['DECIMATE ANGLE'])
>  decimator.SetMaximumIterations(options['DECIMATE ITERATIONS'])
>  decimator.SetMaximumSubIterations(0)
>  decimator.PreserveEdgesOn()
>  decimator.SetMaximumError(1)
>  decimator.SetTargetReduction(options['DECIMATE REDUCTION'])
>  decimator.SetInitialError(options['DECIMATE ERROR'])
>  decimator.SetErrorIncrement(options['DECIMATE ERROR INC'])
>  decimator.GetOutput().ReleaseDataFlagOn()
>
>  smoother.SetInput(decimator.GetOutput())
>  smoother.SetNumberOfIterations(options['SMOOTH ITERATIONS'])
>  smoother.SetRelaxationFactor(options['SMOOTH ITERATIONS'])
>  smoother.SetFeatureAngle(options['SMOOTH ANGLE'])
>  smoother.FeatureEdgeSmoothingOff()
>  smoother.BoundarySmoothingOff()
>  smoother.SetConvergence(0)
>  smoother.GetOutput().ReleaseDataFlagOn()
>
>  normals.SetInput(smoother.GetOutput())
>  normals.SetFeatureAngle(options['FEATURE ANGLE'])
>  normals.GetOutput().ReleaseDataFlagOn()
>
>  stripper.SetInput(normals.GetOutput())
>  stripper.GetOutput().ReleaseDataFlagOn()
>
>  writer.SetInput(stripper.GetOutput())
>  writer.SetFileName(tissue + '.vtk' )
>  writer.SetFileType(2)
>
>  writer.Write()
>----------------------------------------------------------------------
>
>
>I don't think the issue is the decimator or the smoother...
>
>
>_______________________________________________
>This is the private VTK discussion list. 
>Please keep messages on-topic. Check the FAQ at: <http://public.kitware.com/cgi-bin/vtkfaq>
>Follow this link to subscribe/unsubscribe:
>http://public.kitware.com/mailman/listinfo/vtkusers 






More information about the vtkusers mailing list