Commit fe53df6d69047b7462a10fcab8c91d125cce1d6c
1 parent
da748282
Exists in
master
and in
67 other branches
ENH: The value to generate the surface was hardcoded
Showing
1 changed file
with
35 additions
and
33 deletions
Show diff stats
invesalius/data/surface_process.py
| ... | ... | @@ -57,46 +57,48 @@ class SurfaceProcess(multiprocessing.Process): |
| 57 | 57 | # Create vtkPolyData from vtkImageData |
| 58 | 58 | #print "Generating Polydata" |
| 59 | 59 | #if self.mode == "CONTOUR": |
| 60 | - #print "Contour" | |
| 61 | - #contour = vtk.vtkContourFilter() | |
| 62 | - #contour.SetInput(image) | |
| 63 | - #contour.SetValue(0, 127.5) # initial threshold | |
| 64 | - #contour.ComputeScalarsOn() | |
| 65 | - #contour.ComputeGradientsOn() | |
| 66 | - #contour.ComputeNormalsOn() | |
| 67 | - #polydata = contour.GetOutput() | |
| 60 | + #print "Contour" | |
| 61 | + #contour = vtk.vtkContourFilter() | |
| 62 | + #contour.SetInput(image) | |
| 63 | + #contour.SetValue(0, self.min_value) # initial threshold | |
| 64 | + #contour.SetValue(1, self.max_value) # final threshold | |
| 65 | + #contour.ComputeScalarsOn() | |
| 66 | + #contour.ComputeGradientsOn() | |
| 67 | + #contour.ComputeNormalsOn() | |
| 68 | + #polydata = contour.GetOutput() | |
| 68 | 69 | #else: #mode == "GRAYSCALE": |
| 69 | - mcubes = vtk.vtkDiscreteMarchingCubes() | |
| 70 | + mcubes = vtk.vtkMarchingCubes() | |
| 70 | 71 | mcubes.SetInput(image) |
| 71 | - mcubes.SetValue(0, 255) | |
| 72 | + mcubes.SetValue(0, self.min_value) | |
| 73 | + mcubes.SetValue(1, self.max_value) | |
| 72 | 74 | mcubes.ComputeScalarsOn() |
| 73 | 75 | mcubes.ComputeGradientsOn() |
| 74 | 76 | mcubes.ComputeNormalsOn() |
| 75 | 77 | polydata = mcubes.GetOutput() |
| 76 | 78 | |
| 77 | - print "Decimating" | |
| 78 | - if not self.decimate_reduction: | |
| 79 | - decimation = vtk.vtkDecimatePro() | |
| 80 | - decimation.SetInput(polydata) | |
| 81 | - decimation.SetTargetReduction(self.decimate_reduction) | |
| 82 | - decimation.PreserveTopologyOn() | |
| 83 | - decimation.SplittingOff() | |
| 84 | - polydata = decimation.GetOutput() | |
| 85 | - | |
| 86 | - if self.smooth_iterations and self.smooth_relaxation_factor: | |
| 87 | - print "Smoothing" | |
| 88 | - smoother = vtk.vtkWindowedSincPolyDataFilter() | |
| 89 | - smoother.SetInput(polydata) | |
| 90 | - smoother.SetNumberOfIterations(self.smooth_iterations) | |
| 91 | - smoother.SetFeatureAngle(120) | |
| 92 | - smoother.SetNumberOfIterations(30) | |
| 93 | - smoother.BoundarySmoothingOn() | |
| 94 | - smoother.SetPassBand(0.1) | |
| 95 | - smoother.FeatureEdgeSmoothingOn() | |
| 96 | - smoother.NonManifoldSmoothingOn() | |
| 97 | - smoother.NormalizeCoordinatesOn() | |
| 98 | - smoother.Update() | |
| 99 | - polydata = smoother.GetOutput() | |
| 79 | + #print "Decimating" | |
| 80 | + #if self.decimate_reduction: | |
| 81 | + #decimation = vtk.vtkDecimatePro() | |
| 82 | + #decimation.SetInput(polydata) | |
| 83 | + #decimation.SetTargetReduction(0) | |
| 84 | + #decimation.PreserveTopologyOn() | |
| 85 | + #decimation.SplittingOff() | |
| 86 | + #polydata = decimation.GetOutput() | |
| 87 | + | |
| 88 | + #if self.smooth_iterations and self.smooth_relaxation_factor: | |
| 89 | + #print "Smoothing" | |
| 90 | + #smoother = vtk.vtkWindowedSincPolyDataFilter() | |
| 91 | + #smoother.SetInput(polydata) | |
| 92 | + #smoother.SetNumberOfIterations(self.smooth_iterations) | |
| 93 | + #smoother.SetFeatureAngle(120) | |
| 94 | + #smoother.SetNumberOfIterations(30) | |
| 95 | + #smoother.BoundarySmoothingOn() | |
| 96 | + #smoother.SetPassBand(0.01) | |
| 97 | + #smoother.FeatureEdgeSmoothingOn() | |
| 98 | + #smoother.NonManifoldSmoothingOn() | |
| 99 | + #smoother.NormalizeCoordinatesOn() | |
| 100 | + #smoother.Update() | |
| 101 | + #polydata = smoother.GetOutput() | |
| 100 | 102 | |
| 101 | 103 | print "Saving" |
| 102 | 104 | filename = tempfile.mktemp(suffix='_%s.vtp' % (self.pid)) | ... | ... |