Saltar al contenido

Crear un archivo nifti a partir de un numpy array

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 Nifti2Imageque 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

¡Haz clic para puntuar esta entrada!
(Votos: 0 Promedio: 0)


Tags :

Utiliza Nuestro Buscador

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *