Skip to content

alfonsodg/dicom_relay

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

5 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

#DICOM Relay

##Descripción Scripts que permiten generar un PACS Relay o Proxy, capaz de recibir archivos DICOM, procesarlos (modificando metadata) y re-enviándolos a otro PACS.

##Por qué cambiar la metadata DICOM? En varios casos ciertos proveedores o centros de salud construyen sus soluciones de imagenología sobre la base de códigos diversos que no permiten identificar claramente a los pacientes, en este caso es válido re-procesar estos objetos DICOM antes de centralizarlos o indexarlos.

##Cómo funciona? Es un proceso de 2 fases:

  • Activar el relay mediante el script relay_init.sh

    Inicializa un repositorio DICOM empleando el AETITLE (DICOMRELAY) en el puerto 11112 que guardará los objetos DICOM en /srv/dicom_repo (puede modificar el nombre)

  • Activar el revisor de sistema de archivos relay_process.sh

    Revisa el directorio /srv/dicom_repo y procesa el contenido de este archivo por archivo enviándolos al PACS destino y eliminándolos una vez terminado.

##Manipulación de los atributos DICOM Las líneas que permiten esto son:

export patient_id=$(xmllint --xpath '//DicomAttribute[@keyword="EthnicGroup"]/Value/text()' /tmp/$file.xml)
xmlstarlet ed -P -u '//DicomAttribute[@keyword="PatientID"]/Value' -v $patient_id /tmp/$file.xml > /tmp/$file-temp.xml

En este caso, la primera busca el atributo DICOM EthnicGroup (00102160) y extrae el valor

La segunda modifica el valor del atributo DICOM PatientID reemplazándolo por lo extraído de EthnicGroup

##Arquitectura

##Instalación

###Revisar la instalación de las dependencias Considerar que el dcm4che-toolkit debe instalarse como /opt/dcm4che-toolkit/

###Copiar / clonar en /srv

git clone https://alfonsodg@bitbucket.org/controlradiologico/dicom_relay.git

###Crear directorio dicom_repo

mkdir /srv/dicom_repo

###Copiar las plantillas de servicios contenidas en /srv/dicom_relay/extras

cp /srv/dicom_relay/extras/* /etc/systemd/system/

###Modificar los scripts relay_init.sh o relay_process.sh según sus requerimientos

/opt/dcm4che-toolkit/bin/storescu -c AETITLE@IP-ADDRESS:PORT /srv/dicom_repo/out-$file

###Activar los servicios

systemctl start relay_init
systemctl enable relay_init
systemctl start relay_process
systemctl enable relay_process

##Verificar PACS Relay Empleando el mismo dmc4che-toolkit se prueba el RELAY, modificar los valores según sea el caso, considerando además que se envía todo el contenido de un DIRECTORIO_DICOM

/opt/dcm4che-toolkit/bin/storescu -c AETITLE@IP-ADDRESS:PORT /DIRECTORIO_DICOM


##Licencia
Este software es entregado bajo licencia GPL v3, excepto en las librerías que no sean compatibles con esta licencia.  Revisar el archivo **gplv3.md
** para los detalles y alcances del mismo

About

No description or website provided.

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages