Curso de Imágenes Médicas - Laboratorio Núcleo de ingeniería biomédica. Facultades de medicina e ingeniería. Universidad de la República Oriental del Uruguay
Práctica 1
Manejo de archivos DICOM
1.
Objetivo
Crear, modificar, leer, mandar y recibir imágenes Dicom.
2.
Introducción
Las imágenes DICOM se almacenan dentro de archivos binarios conformes a una codificación compleja y
estrictamente definida de información. A mitad de camino
entre el archivo binario y la representación de las imágenes desde un visualizador especializado es posible
una representación xml de los elementos de información contenidos en el archivo DICOM. Esta
representación tiene la ventaja de ser textual, pues de facilitar la lectura del archivo.
Durante esta práctica trabajararemos en paralelo con estos tres niveles de representación (binario, xml,
visualizador especializado) con fin de entender la mecánica íntima del archivo DICOM
3.
Material necesario
(1)
Manejo básico de un terminal, sea DOS, sea bash u otro en plataforma UNIX, LINUX, MAC.
Capacidad de moverse dentro de la estructura del HD, de ver el contenido de un directorio, de
ejecutar un programa.
(2)
tener instalado la caja de herramientas de manejo de dicom mencionadas a continuación:
(3)
http://sourceforge.net/projects/dcm4che/files/dcm4che2/2.0.21/dcm4che-2.0.21-bin.zip/download
(4)
documentación http://www.dcm4che.org/confluence/display/d2/dcm4che2+DICOM+Toolkit
(5)
Tener un programa que permite ver comodamente contenidos binarios en hexadecimal
(6)
instalar un visualizador de imagen médica a elección desde la página http://www.idoimaging.com
(7)
bajar las partes 3 5 y 6 de la norma dicom edición 2008 desde
http://www.dclunie.com/dicom-status/status.html
(8)
Si el estudiante tiene computadora portatíl personal, vale realizar las instalaciones mencionada y
llevarla al curso
4.
Ejercicios
Ejercicio 1: no requiere computadora (salvo para leer la documentación)
A continuación se encuentran, la representación xml, el binario con reconocimiento ASCII y el binario
hexadecimal de un mismo fragmento de archivo DICOM. Analyzar el binario hexadecimal, recortándolo
en elementos significativos a describir como en el ejemplo. La correspondencia con las otras
representación ayuda...
<?xml version="1.0" encoding="UTF-8"?> <dicomfile> <filemetainfo> <preamble>73\73\42\0\252\18\66\1\70\1\50\0\176\155\116\26\0\8\0\0\58\6\0\0\252\18\66\1\4\0\0\0\243\81\20\0\101\70\88\65\0\0\0 \0\0\0\0\0\52\3\0\0\10\0\0\0\30\3\0\0\14\0\0\0\70\3\0\0\8\0\0\0\200\4\0\0\50\0\0\0\2\5\0\0\50\0\0\0\82\5\0\0\2\0\0\0\8\0\0\0\0\0\0\0\ 198\1\0\0\56\0\0\0\92\5\0\0\2\0\0\0\102\5\0\0\2\0\0\0</preamble><attr tag="00020000" vr="UL" pos="132" name="Group Length" vm="1" len="4">202</attr>
<attr tag="00020001" vr="OB" pos="144" name="File Meta Information Version" vm="1" len="2">0\1</attr> <attr tag="00020002" vr="UI" pos="158" name="Media Storage SOP Class UID" vm="1"
len="28">1.2.840.10008.5.1.4.1.1.12.1</attr>
<attr tag="00020003" vr="UI" pos="194" name="Media Storage SOP Instance UID" vm="1" len="56">1.3.46.670589.7.5.10.80008191025.20070731.155457.12.1.1</attr>
<attr tag="00020010" vr="UI" pos="258" name="Transfer Syntax UID" vm="1" len="20">1.2.840.10008.1.2.1</attr> <attr tag="00020012" vr="UI" pos="286" name="Implementation Class UID" vm="1"
len="28">1.2.276.0.7230010.3.0.3.5.4</attr>
</filemetainfo> <dataset>
<attr tag="00080005" vr="CS" pos="346" name="Specific Character Set" vm="1" len="10">ISO_IR 100</attr> <attr tag="00080008" vr="CS" pos="364" name="Image Type" vm="4" len="38">ORIGINAL\PRIMARY\SINGLE PLANE\SINGLE A</attr>
<attr tag="00080016" vr="UI" pos="410" name="SOP Class UID" vm="1" len="28">1.2.840.10008.5.1.4.1.1.12.1</attr> <attr tag="00080018" vr="UI" pos="446" name="SOP Instance UID" vm="1"
len="56">1.3.46.670589.7.5.10.80008191025.20070731.155457.12.1.1</attr>
<attr tag="00080020" vr="DA" pos="510" name="Study Date" vm="1" len="8">20070731</attr> <attr tag="00080021" vr="DA" pos="526" name="Series Date" vm="1" len="8">20070731</attr> <attr tag="00080022" vr="DA" pos="542" name="Acquisition Date" vm="1" len="8">20070731</attr> <attr tag="00080030" vr="TM" pos="558" name="Study Time" vm="1" len="12">143119.0000 </attr> <attr tag="00080031" vr="TM" pos="578" name="Series Time" vm="1" len="12">143119.0000 </attr> <attr tag="00080032" vr="TM" pos="598" name="Acquisition Time" vm="1" len="12">145932.0000 </attr> <attr tag="00080050" vr="SH" pos="618" name="Accession Number" vm="0" len="0"/>
<attr tag="00080060" vr="CS" pos="626" name="Modality" vm="1" len="2">XA</attr>
<attr tag="00080070" vr="LO" pos="636" name="Manufacturer" vm="1" len="38">Philips Medical Systems (Netherlands) </attr> <attr tag="00080080" vr="LO" pos="682" name="Institution Name" vm="1" len="14">HHHHH HOSPITAL</attr>
<attr tag="00080081" vr="ST" pos="704" name="Institution Address" vm="0" len="0"/> <attr tag="00080090" vr="PN" pos="712" name="Referring Physician's Name" vm="0" len="0"/> <attr tag="00081010" vr="SH" pos="720" name="Station Name" vm="1" len="6">VISUB </attr>
<attr tag="00081050" vr="PN" pos="734" name="Performing Physician's Name" vm="1" len="2">VP</attr> <attr tag="00081070" vr="PN" pos="744" name="Operator's Name" vm="1" len="2">VP</attr>
<attr tag="00081090" vr="LO" pos="754" name="Manufacturer's Model Name" vm="1" len="28">P H I L I P S INTEGRIS V</attr>
<attr tag="00100010" vr="PN" pos="790" name="Patient's Name" vm="1" len="14">DE XXXX^YYYYY </attr> <attr tag="00100020" vr="LO" pos="812" name="Patient ID" vm="1" len="10">7777777-1 </attr>
<attr tag="00100030" vr="DA" pos="830" name="Patient's Birth Date" vm="1" len="8">19360520</attr> <attr tag="00100040" vr="CS" pos="846" name="Patient's Sex" vm="1" len="2">F </attr>
<attr tag="00180060" vr="DS" pos="856" name="KVP" vm="1" len="2">83</attr>
<attr tag="00181020" vr="LO" pos="866" name="Software Version(s)" vm="3" len="18">7.7.2\5.3.1\3.3.1 </attr> <attr tag="00181030" vr="LO" pos="892" name="Protocol Name" vm="1" len="14">Cerebral (fr) </attr> <attr tag="00181065" vr="DS" pos="914" name="Frame Time Vector" vm="10"
len="40">0.0\320\320\320\320\320\320\320\320\240 </attr>
<attr tag="00181066" vr="DS" pos="962" name="Frame Delay" vm="1" len="4">320 </attr>
<attr tag="00181110" vr="DS" pos="974" name="Distance Source to Detector" vm="1" len="4">1094</attr> <attr tag="00181150" vr="IS" pos="986" name="Exposure Time" vm="1" len="4">150 </attr>
<attr tag="00181151" vr="IS" pos="998" name="X-ray Tube Current" vm="1" len="4">182 </attr> <attr tag="00181155" vr="CS" pos="1010" name="Radiation Setting" vm="1" len="2">GR</attr> <attr tag="00181162" vr="DS" pos="1020" name="Intensifier Size" vm="1" len="10">169.99998 </attr> <attr tag="00181500" vr="CS" pos="1038" name="Positioner Motion" vm="1" len="6">STATIC</attr>
<attr tag="00181510" vr="DS" pos="1052" name="Positioner Primary Angle" vm="1" len="12">-0.40000001 </attr> <attr tag="00181511" vr="DS" pos="1072" name="Positioner Secondary Angle" vm="1" len="12">-0.40000001 </attr> <attr tag="00190010" vr="LO" pos="1092" vm="1" len="16">CARDIO-D.R. 1.0 </attr>
<attr tag="00191000" vr="CS" pos="1116" vm="2" len="20">RECTANGULAR\CIRCULAR</attr> <attr tag="00191002" vr="IS" pos="1144" vm="1" len="2">1 </attr>
<attr tag="00191004" vr="IS" pos="1154" vm="1" len="4">1024</attr> <attr tag="00191006" vr="IS" pos="1166" vm="1" len="2">1 </attr> <attr tag="00191008" vr="IS" pos="1176" vm="1" len="4">1024</attr> <attr tag="00191010" vr="IS" pos="1188" vm="2" len="8">512\512 </attr>
<attr tag="00191012" vr="IS" pos="1204" vm="1" len="4">570 </attr><attr tag="0020000D" vr="UI" pos="1216" name="Study Instance UID" vm="1" len="50">1.3.46.670589.7.5.8.80008191025.20070731.143119.1</attr><attr tag="0020000E" vr="UI" pos="1274" name="Series Instance UID" vm="1" len="50">1.3.46.670589.7.5.7.80008191025.20070731.143119.1</attr> <attr tag="00200010" vr="SH" pos="1332" name="Study ID" vm="1" len="14">31072007143119</attr>
<attr tag="00200011" vr="IS" pos="1354" name="Series Number" vm="1" len="2">1 </attr> <attr tag="00200012" vr="IS" pos="1364" name="Acquisition Number" vm="1" len="2">12</attr> <attr tag="00200013" vr="IS" pos="1374" name="Instance Number" vm="1" len="2">12</attr> <attr tag="00200020" vr="CS" pos="1384" name="Patient Orientation" vm="0" len="0"/> <attr tag="00201002" vr="IS" pos="1392" name="Images in Acquisition" vm="1" len="2">1 </attr> <attr tag="00280002" vr="US" pos="1402" name="Samples per Pixel" vm="1" len="2">1</attr>