Lo standard DICOM per le immagini...
Transcript of Lo standard DICOM per le immagini...
Lo standard DICOM per le
immagini medicali
Stephane Chauvie
Santa Croce e Carle Hospital, Cuneo
Torino, 25 Maggio 2012
Sommario
Storia del DICOM
Rationale dello standard
Vocabolario DICOM
Esercizio pratico di utilizzo header DICOM
Da dove arriva il DICOM?
La genealogia:ACR (American College of Radiology)NEMA (Agfa, Boston Scientific, Camtronics, Carl Zeiss Meditec, Dejarnette, Dynamic Imaging, Eastman Kodak, ETIAM, Fuji, GE, Hologic, IBM, Konica, Matrixview, McKesson, MEDIS, Merge, Philips, RadPharm, R2, Sectra, Siemens, Sony, 3DHISTECH, Toshiba)
La cronologia:1983 primo comitato1985 primo standard pubblicato1988 standard 2.01993 standard 3.o (ultima rinnovata ogni anno ma sempre 3.0)
Cosa fa il DICOM?
…achieve compatibility and improve workflow efficiency…
5 aree funzionali:
Trasmissione e persistenza degli oggetti
Query and retrieve degli oggetti
Performance di tali azioni
Worflow management (worklist, storage commitment…)
Qualita’ e consistenza di un’immagine (display & print)
Cosa fa il DICOM?
Cosa fa
Definisce gli oggetti
CT, DX, NM, …
Definisce i servizi
Trasmissione, archiviazione, …
Cosa non fa
Non defiinisce l’architettura
ethernet, satellite, vpn, piccioni viaggiatori, …
Non definisce la funzionalita’
Flusso delle immagini, modalita’ di visualizzazione, …
Cosa e’ il linguaggio DICOM?
Oggetti (IOD) = Parole
Information Object Definition: ricette di quali ingredienti servono a definire un istanza di un oggetto:
Immagine CT, DX, MR,…
Basic film session
Scheduled procedure
Oggetti IOD
Gli attributi degli oggetti sono raggruppati in Moduli
Patient module
Name, ID, Birthdate…
Study module
Date and time, ID, Accession number…
Serie module
Date and time, ID, Number of images,
Image module
Pixel spacing, pixel location, slice thickness…
PS 3.5-2009 Section 7 The Data Set
Le lettere dell’alfabeto DICOM
Data Element Tag
An ordered pair of 16-bit unsigned integers representing the Group Number followed by Group Element
Value Representation (VR)
A two-byte character string containing the VR of the Data Element. The VR for a given Data Element Tag shall be as defined by the Data Dictionary as specified in PS 3.6. The two character VR shall be encoded using characters from the DICOM default character
Le lettere dell’alfabeto DICOM
Value Length (VR)
a 16 or 32-bit (dependent on VR and whether VR is explicit or implicit) unsigned integer containing the Explicit Length of the Value Field as the number of bytes (even) that make up the Value.
a 32-bit Length Field set to Undefined Length (FFFFFFFFH). Undefined Lengths may be used for Data Elements having the Value Representation (VR) Sequence of Items (SQ) and Unknown (UN).
Value Field
An even number of bytes containing the Value(s) of the Data Element. The data type of Value(s) stored in this field is specified by the Data Element's VR.
Transfer Syntax UID UI 1
Byte Ordering: Little vs Big Endian
Implicit Little Endian
1.2.840.10008.1.2 & 1.2.840.10008.1.2.1
Explicit Big Endian
1.2.840.10008.1.2.2
Explicit Little Endian
1.2.840..10008.1.2.1
Es. Implicit VR
//patient's name
groupN = 0x0010;
fwrite(&groupN,2,1,fileOut);
elementN = 0x0010;
fwrite(&elementN,2,1,fileOut);
strcpy(value,dcmObject->getPatient_name());
VL = strlen(value);
fwrite(&VL,4,1,fileOut);
fwrite(&value,VL,1,fileOut);
Command
Patient Name
Patient ID
Rows
Columns
Bits Stored
…
Network Transfer
Data Set=
+
Meta Data +Media Transfer
Data Set=
Group 0
( Describes Service: C-Store)
Group 2 ( Describes Data Set)
D I C O M [ . . . . . . . F I L E . . . . . . . . . . ]
D I C O M [ . . . . . M E S S A G E . . . . . . . ]
Header
Image
DICOM Transfer over Network & Media
File binario
File binario
File binario
File meta elements
Study information
Study information
Acquisition group
Relationship Group
Study information
La sintassi del DICOM
I verbi del linguaggio DICOM
I verbi sono i Services che specificano unI verbi sono i Services che specificano un’’azione da fare con e azione da fare con e sugli sugli oggetti sugli sugli oggetti ““ServiceService--objectobject--pairpair”” or SOPor SOP
Sono implementati in un client/serverSono implementati in un client/server
Service Class User eService Class User e’’ il servizio che usa il servizioil servizio che usa il servizio
Service Class Provider eService Class Provider e’’ il servizio che fornisce il servizioil servizio che fornisce il servizio
Esempio n.1: Stampa da una TAC. Print Esempio n.1: Stampa da una TAC. Print èè la SOP. La TAC ha la la SOP. La TAC ha la SCU e la stampante DICOM ha il SCPSCU e la stampante DICOM ha il SCP
Esempio n.2: Send di esame da DX a Workstation. CT storage Esempio n.2: Send di esame da DX a Workstation. CT storage èè la la SOP. La TAC ha la SCU e la workstation ha il SCP. Da conf: SOP. La TAC ha la SCU e la workstation ha il SCP. Da conf: TCP/IP address, Port number e AE title.TCP/IP address, Port number e AE title.
ServiziServizi
DICOM verification: pingDICOM verification: ping
DICOM storageDICOM storage
Storage commitmentStorage commitment
PrintPrint
Query/retrieveQuery/retrieve
26
Comunicare con il DICOM
ID: CT_AE1
IP: 10.3.253.8
Port: 104
ID: WK_AE1
IP: 10.3.253.9
Port: 4006
IP Addr AE Title Port #
10.3.253.1 Fusion 104
10.3.253.9 WK_AE1 4006
IP Addr AE Title Port #
10.3.253.1 Fusion 104
10.3.253.8 CT_AE1 104
Association / Association /
NegotiationNegotiation
CT Config FileCT Config File Wkstn Config FileWkstn Config File
Node Level Node Level
SecuritySecurity
Typical Network FlowDICOM AE DICOM AE ““AA”” DICOM AE DICOM AE ““BB””AA--ASSOCIATEASSOCIATE--RQRQ
AA--ASSOCIATEASSOCIATE--ACAC
AA--RELEASERELEASE--RSPRSP
AA--RELEASERELEASE--RQRQ
oror
AA--ASSOCIATEASSOCIATE--RJRJ
DICOM MessagesDICOM Messages
oror
AA--ABORTABORT
Either AEEither AE
Handshake Requirements
DICOM Network RolesSuccessful communication - products must play “opposite roles”
Receive images = Service Class Provider (SCP)
Send images = Service Class User (SCU)
Network roles are defined for all DICOM Network roles are defined for all DICOM Network roles are defined for all DICOM Network roles are defined for all DICOM FunctionsFunctionsFunctionsFunctions
Network roles are defined for all DICOM Network roles are defined for all DICOM Network roles are defined for all DICOM Network roles are defined for all DICOM Network roles are defined for all DICOM Network roles are defined for all DICOM Network roles are defined for all DICOM Network roles are defined for all DICOM FunctionsFunctionsFunctionsFunctionsFunctionsFunctionsFunctionsFunctions
Image SendImage SendImage Send
CT Image StorageSOP Class (SCU)CT Image StorageCT Image StorageSOP Class (SCU)SOP Class (SCU)
CT Image StorageSOP Class (SCP)CT Image StorageCT Image StorageSOP Class (SCP)SOP Class (SCP)
DICOM Conformance Statement
It is Required!
It is a Public Document
It Conveys a Product’s DICOM Functionality
It is Based on DICOM Vocabulary
Abstract Syntaxes (SOP Classes), Transfer Syntaxes, SCU/SCP…..
It is Used to Compare Connectivity
It is most Often on the Web @ Vendor Site
It Does Not Address All of an Application’s Capabilities, but should Address All of the Application’s DICOM ones
Ok, you say its DICOM, Ok, you say its DICOM,
prove it!prove it!
A Major Step Towards InteroperabilityA Major Step Towards Interoperability
Grazie per l’attenzione
DICOM WG-28 Physics
1° riunione nel Febbraio 2012
DICOM Standards Committee:
Co-chairs: Donald Peck, AAPM & Annalisa Trianni, EFOMP
Secretariat: Lynne Fairobent, AAPM & Alberto Torresin, EFOMP
Scopi:
Correction Proposal (CP)
Includere dati “da fisici medici”