Te damos la bienvenida a nuestro sitio, ahora vas a encontrar la resolución que buscas.
La función de reemplazo en el paquete NiBabel más nuevo se llamaría Nifty1Image
. Sin embargo, debe pasar la transformación afín que define la posición de esa imagen con respecto a algún marco de referencia.
En su forma más simple, se vería así:
import nibabel as nib
import numpy as np
data = np.arange(4*4*3).reshape(4,4,3)
new_image = nib.Nifti1Image(data, affine=np.eye(4))
También puede escribir en un formato de archivo NIfTI-2 usando Nifti2Image
que también requiere la transformación afín.
La respuesta aceptada es suficiente. Estoy agregando algunas líneas de explicación detallada para el mismo.
import nibabel as nib
import numpy as np
data = np.arange(4*4*3).reshape(4,4,3)
new_image = nib.Nifti1Image(data, affine=np.eye(4))
La función np.eye(n)
devuelve una matriz identidad por n.
Aquí esto np.eye(4)
se utiliza para generar una matriz de 4 por 4, ya que Nifti procesa el formato de archivo de 4 por 4. Entonces, su matriz de 3 por 3 se convierte en 4 por 4 mediante la multiplicación con una matriz de identidad de 4 por 4.
Entonces, siempre affine = np.eye(4)
trabajará.
Lo mismo es aplicable a ambos Nifti1Image
y Nifti2Image