Skip to main content

Paquete para leer archivos .dat de Siemens y realizar reconstrucciones de imágenes.

Project description

SIEMENSFile

SIEMENSFile es un paquete para previsualizar, leer y procesar archivos .dat de Siemens y realizar reconstrucciones de imagenes de resonancia magnetica (MRI). Este paquete facilita la extraccion de datos del rawdata y el metadata y su reconstruccion preliminar en imagenes utilizando transformadas rapidas de Fourier (FFT). La unica reconstruccion implementada es la cartesiana; proximamente se implementara la reconstruccion no cartesiana.

Instalacion

Puedes instalar el paquete directamente desde PyPI con el siguiente comando:

pip install siemensfile

Importar la funcion siemensfile desde el paquete

from siemensfile import siemensfile

Usar la funcion siemensfile para procesar un archivo .dat

[metadata, rawdata] = siemensfile(r'test/siemens_file_test_cartesian_sample.dat', reconstruccion="Cartesiana")

Resultados

Los resultados se guardaran en la misma ubicacion donde se encuentra el archivo .dat, dentro de una carpeta llamada output. En esta carpeta, encontraras un archivo DICOM (.dcm), el Metada en formato .Json, junto con las imagenes reconstruidas y el espacio K en formato .png.

Usar la funcion para mostrar la estructura de rawdata

rawdata.shape

Usar la funcion para guardar la metadata en un archivo .json

import json
import os

def guardar_metadata_en_json(metadata, nombre_archivo):
    """
    Funcion para guardar el contenido de metadata en un archivo .json.

    Parameters:
    - metadata: Lista de diccionarios que contiene los metadatos.
    - nombre_archivo: Nombre del archivo .json donde se guardara la informacion.
    """
    # Asegurarse de que el archivo tiene la extension .json
    if not nombre_archivo.endswith('.json'):
        nombre_archivo += '.json'

    # Guardar metadata en un archivo .json
    try:
        with open(nombre_archivo, 'w') as file:
            json.dump(metadata, file, indent=4)
        print(f"Metadata guardada exitosamente en {nombre_archivo}")
    except Exception as e:
        print(f"Error al guardar metadata en el archivo .json: {str(e)}")


guardar_metadata_en_json(metadata, "metadatos_scan")

Creditos y Reconocimientos

Este proyecto utiliza como base el paquete twixtools, desarrollado por Philipp Ehses. twixtools proporciona la funcionalidad central para la lectura de archivos .dat de Siemens, y este proyecto expande sus capacidades para incluir reconstrucciones de imagenes.

Agradecemos enormemente a los autores y colaboradores de twixtools por su trabajo, que ha permitido el desarrollo de este paquete.

Si estas buscando una solucion mas completa para leer y escribir archivos .dat de Siemens, te recomendamos que tambien consultes twixtools directamente. https://github.com/pehses/twixtools

Project details


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.30.tar.gz (692.5 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.30-py3-none-any.whl (90.2 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: siemensfile-0.1.30.tar.gz
  • Upload date:
  • Size: 692.5 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.1.1 CPython/3.12.4

File hashes

Hashes for siemensfile-0.1.30.tar.gz
Algorithm Hash digest
SHA256 ee82723620471361258ae54a2b298b12d2c2005f288e2f93867957cef8fc1d49
MD5 db2a8f1ed16a2994f9f6278bb3d8135b
BLAKE2b-256 7b8e9a96a3496a2d4c344595d08a7fa873d87aaa8bd47397edd049cd78a9d110

See more details on using hashes here.

File details

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

File metadata

  • Download URL: siemensfile-0.1.30-py3-none-any.whl
  • Upload date:
  • Size: 90.2 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.1.1 CPython/3.12.4

File hashes

Hashes for siemensfile-0.1.30-py3-none-any.whl
Algorithm Hash digest
SHA256 b8ec21210c81a8fcc7a8b3d1d9583dc77e87913d05a93cfa01a66e83aa59674c
MD5 f3a6c4a451afa5eee64a6f2fc53559b4
BLAKE2b-256 35e9a2c0ddfba9893348b43a12d4caf4f86f0330831e979be7f2f66c2c9d5259

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page