Vuelva a muestrear datos de imágenes 3D en un objeto vtkImageData utilizando la clase vtkImageReslice

Suponiendo que tengamos un vtkImageDataobjeto con el nombre de imageeste, así es como haríamos para volver a muestrear los datos de la imagen con un factor de 2. Aquí asumimos que imagetiene un espaciado de 1.0mm en todos los ejes

resliceFilter = vtk.vtkImageReslice()
resliceFilter
.SetInput(image)
resliceFilter
.SetOutputSpacing(0.5, 0.5, 0.5)
resliceFilter
.SetInterpolationModeToCubic()
resliceFilter
.Update()
imageResampled
= resliceFilter.GetOutput()

El vtkImageDataobjeto muestreado se almacena debajo imageResampled. Tenga en cuenta que el remuestreo se logra estableciendo el espaciado de salida en 0.5mm a través del SetOutputSpacingmétodo.

Si bien el fragmento anterior utiliza interpolación cúbica, también vtkImageResliceofrece interpolación lineal y de vecino más cercano. Todo lo que necesita es reemplazar SetInterpolationModeToCubiccon SetInterpolationModeToNearestNeighboroSetInterpolationModeToLinear