Skip to main content

SIEMENSFile

SIEMENSFile es un paquete para previsualizar, leer y procesar archivos .dat de Siemens y realizar reconstrucciones de imágenes de resonancia magnética (MRI). Extrae rawdata y metadata y reconstruye imágenes mediante IFFT centrada. La reconstrucción cartesiana soporta adquisiciones 2D multi-slice, 2D multi-stack (p. ej. localizer sag+cor+tra) y 3D (p. ej. MPRAGE), con manejo de Partial Fourier. La reconstrucción no cartesiana (radial/espiral con NUFFT) está planificada.

Instalación

Opción recomendada con conda:

conda create -n siemensfile python=3.12 -y --override-channels -c conda-forge
conda activate siemensfile
pip install -r requirements.txt
pip install .

O desde PyPI (versión básica):

pip install siemensfile

Uso

from siemensfile import siemensfile

[metadata, kspace] = siemensfile(r'tests/datatest/siemens_file_test_cartesian_sample.dat', reconstruccion="Cartesiana")
kspace.shape  # [line, channel, column, slice]

reconstruccion="NoCartesiana" aún no está implementada (lanza NotImplementedError).

Resultados

Los resultados se guardan en una carpeta output junto al archivo .dat (se limpia en cada ejecución):

  • {nombre}_kspace.png — vista del espacio k (escala logarítmica).
  • {nombre}_reconstruction.png — mosaico con la reconstrucción de todos los slices.
  • {nombre}_slice_NNN.dcm — reconstrucción en DICOM MR (MRImageStorage, un archivo por slice).
  • {nombre}_metadata.json — metadatos del protocolo (headers twix aplanados).

Qué maneja la reconstrucción cartesiana

  • 3D (particiones): las particiones (cPar) se tratan como slices individuales; cada volumen 3D produce N imágenes axiales (o de la orientación del slab).
  • Multi-stack: stacks con contadores de slice repetidos se separan por posición espacial y contadores del header.
  • Partial Fourier 6/8 (banda inferior): las líneas se mapean a la matriz completa usando CenterLin; las líneas no adquiridas quedan en cero (reconstrucción zero-filled).
  • Partial Fourier 1/2 (entrelazado): las líneas impares se interpolan desde las pares para eliminar el fantasma de Nyquist.
  • Centrado de lectura: el eco (DC) se centra según CenterCol mediante roll circular.
  • Combinación de canales: RMS (root-sum-of-squares) sobre los coils.

Limitaciones conocidas (ver documentación): sin corrección de intensidad por coil (las imágenes sum-of-squares muestran señal superficial más brillante que la referencia Siemens), sin homodyne para PF 6/8, sin soporte GRAPPA/R o no cartesiano.

Tests

pytest tests/

Créditos y reconocimientos

Este proyecto utiliza como base el paquete twixtools de Philipp Ehses (incluido en src/twixtools), que provee la lectura de archivos .dat de Siemens. Este proyecto expande sus capacidades con reconstrucciones de imágenes.

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

siemensfile-0.1.32.tar.gz (49.8 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

siemensfile-0.1.32-py3-none-any.whl (51.6 kB view details)

Uploaded Python 3

File details

Details for the file siemensfile-0.1.32.tar.gz.

File metadata

  • Download URL: siemensfile-0.1.32.tar.gz
  • Upload date:
  • Size: 49.8 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/7.0.0 CPython/3.12.14

File hashes

Hashes for siemensfile-0.1.32.tar.gz
Algorithm Hash digest
SHA256 12fcb98a35a6bb48b98bb4bf118610ec5e64d7ea54bb5415869d074927d578be
MD5 5cf0ad46c1618460b66a311ab59e2c62
BLAKE2b-256 1f3c612a24ec470ce0c9c6be67026a05f68f359f5a2ca281a06eef0d9014da6d

See more details on using hashes here.

File details

Details for the file siemensfile-0.1.32-py3-none-any.whl.

File metadata

  • Download URL: siemensfile-0.1.32-py3-none-any.whl
  • Upload date:
  • Size: 51.6 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/7.0.0 CPython/3.12.14

File hashes

Hashes for siemensfile-0.1.32-py3-none-any.whl
Algorithm Hash digest
SHA256 1b7cea15853b6804d90ddfd964ddbf09b24cd5d7af2e8cda6d7e6b0ee85a9379
MD5 bef8c52780e1a60b8a9ffeadddb4b45f
BLAKE2b-256 3fdf1a9e3ace32be78019837fa41826f6c96962ac7cec6d47204f3079245f16d

See more details on using hashes here.

Release history Release notifications | RSS feed

0.3.1

2 files

0.3.0

2 files

0.2.0

2 files

0.1.33

2 files

This release

0.1.32 This release

2 files

0.1.30

2 files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page