Faça uma nova amostra dos dados da imagem 3D em um objeto vtkImageData usando a classe vtkImageReslice

Assumindo que temos um vtkImageDataobjeto com o nome imagethis é como faríamos para reamostrar os dados da imagem com um fator de 2. Aqui assumimos que imagetem um espaçamento de 1.0mm em todos os eixos

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

O vtkImageDataobjeto reamostrado é armazenado em imageResampled. Observe que a reamostragem é obtida definindo o espaçamento de saída em 0.5mm através do SetOutputSpacingmétodo.

Enquanto o snippet acima usa interpolação cúbica, vtkImageResliceoferece vizinho mais próximo e interpolação linear também. Basta substituir SetInterpolationModeToCubicpor SetInterpolationModeToNearestNeighborouSetInterpolationModeToLinear