12.01.2013 Views

DICOM3

DICOM3

DICOM3

SHOW MORE
SHOW LESS

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

Selvitys tiedostoformaatista<br />

<strong>DICOM3</strong><br />

versio 1.1<br />

TTKK Porin<br />

korkeakouluyksikkö<br />

Tekijä: Juha Lähteenmäki Tulostettu: 25.10.2003<br />

Jakelu: Prof. Pekka Loula<br />

Dokumentin tila: työversio Muokattu: 25.10.2003


TTKK(PKY) Selvitys <strong>DICOM3</strong> tiedostoformaatista Versio 1.1<br />

25.10.03 2/53


TTKK(PKY) Selvitys <strong>DICOM3</strong> tiedostoformaatista Versio 1.1<br />

VERSIOHISTORIA<br />

Versio Päiväys<br />

(valm. pv<br />

1.0<br />

lihavoitu)<br />

26.6 -18.7<br />

1.1<br />

31.7 - 21.8<br />

Tekijät Selite (muutokset, korjaukset...)<br />

Juha Lähteenmäki<br />

Juha Lähteenmäki<br />

Ensimmäinen kommentoitavaksi<br />

jaeltava versio<br />

Toinen korjattu versio<br />

Muutokset/korjaukset:<br />

Luku 1 (lisäyksiä ja päivityksiä)<br />

Luku 2 (kirjoitettu pääosin<br />

uudelleen)<br />

Luku3 (Ulkoasua ja järjestelyä<br />

parannettu. Paljon uusia osia)<br />

Luku4 (lähes ennallaan )<br />

Luku5 (lähes ennallaan)<br />

25.10.03 3/53


TTKK(PKY) Selvitys <strong>DICOM3</strong> tiedostoformaatista Versio 1.1<br />

SISÄLLYSLUETTELO<br />

1. JOHDANTO ..................................................................................................................................... 7<br />

1.1 TARKOITUS JA KATTAVUUS .......................................................................................................... 7<br />

1.1.1 Varoitus! :-) ........................................................................................................................ 7<br />

1.2 MÄÄRITELMÄT, TERMIT JA LYHENTEET ........................................................................................ 7<br />

1.3 VIITTEET..................................................................................................................................... 11<br />

1.4 DOKUMENTIN RAKENNE ............................................................................................................. 12<br />

1.5 YLEISKATSAUS DOKUMENTTIIN.................................................................................................. 12<br />

2. DICOM???...................................................................................................................................... 14<br />

2.1 MIKÄ DICOM ON?..................................................................................................................... 14<br />

2.2 DICOM:IIN LIITTYVIÄ VÄÄRINKÄSITYKSIÄ JA SELVITYKSEN ONGELMIA? ................................. 14<br />

2.2.1 Yleiset harhaluulot DICOM:sta......................................................................................... 14<br />

2.2.2 Epäselvyydet versionimissä ja osalukumäärissä... DICOM, DICOM Version 3, ACR-<br />

NEMA Version 2, "draft-versio"....????..................................................................................... 15<br />

2.2.3 Mitä DICOM sitten oikein takaa?...................................................................................... 15<br />

2.3 DICOM:N HISTORIA JA SEN KEHITYSVAIHEET ............................................................................ 16<br />

2.4 DICOM:N KOMMUNIKAATION MALLI......................................................................................... 18<br />

2.5 DICOM:N RAKENNE JA OSAT ..................................................................................................... 20<br />

2.5.1 Osa 1: Introduction and Overview [DICM/1] ................................................................... 21<br />

2.5.2 Osa 2: Conformance [DICM/2] ........................................................................................ 21<br />

2.5.3 Osa 3: Information Object Definitions (IODs) [DICM/3]................................................. 22<br />

2.5.4 Osa4: Service Class Specifications [DICM/4] .................................................................. 22<br />

2.5.5 Osa5: Data Structure and Semantics [DICM/5] ............................................................... 22<br />

2.5.6 Osa6: Data Dictionary [DICM/6] ..................................................................................... 22<br />

2.5.7 Osa 7: Message Exchange [DICM/7]................................................................................ 22<br />

2.5.8 Osa 8: Network Communication Support for Message Exchange [DICM/8] ................ 23<br />

2.5.9 Osa 9: Point to Point Communication Support for Message Exchange [DICM/9] ......... 23<br />

2.5.10 Osa 10: Media Storage and File Format for Media Interchange [DICM/10] .............. 23<br />

2.5.11 Osa 11: Media Storage Application Profiles [DICM/11] .............................................. 23<br />

2.5.12 Osa 12: Media Formats and Physical Media for Media Interchange [DICM/12]......... 24<br />

2.5.13 Osa13: Print Management Point-to-Point Communication Support [DICM/13] .......... 24<br />

2.6 DICOM:N TULEVAISUUS ........................................................................................................... 24<br />

3. <strong>DICOM3</strong> KUVA-TIEDOSTON RAKENNE JA OSAT ............................................................. 26<br />

3.1 DICOM-TIEDOSTO - MUTKIKAS PALAPELI.................................................................................. 26<br />

25.10.03 4/53


TTKK(PKY) Selvitys <strong>DICOM3</strong> tiedostoformaatista Versio 1.1<br />

3.2 DICOM TIEDOSTON PERUSOSAT ("PALAPELIN" KEHYKSET) ....................................................... 26<br />

3.3 DICOM DATA SET ("PALAPELIN" KUVAPALIKKA JA SEN TIETO PALASET) ................................ 27<br />

3.3.1 Data-alkiot ("palapelin" palaset) Data Set:in ja DICOM tiedoston perustana............... 27<br />

3.3.2 Data Setin data-alkiot jaotellaan ominaisuusryhmiin ....................................................... 30<br />

3.4 DICOM FILE META INFORMATION ("PALAPELIN" PURKAMIS OHJEET) ...................................... 37<br />

3.5 DATA-ALKIOIDEN KOODAUS JA PAKKAUS................................................................................... 39<br />

3.5.1 Big Endian ja Little Endian (Tavujen järjestely Datan koodauksessa) ..................... 39<br />

3.5.2 DICOM-tiedoston syntaksi................................................................................................. 40<br />

3.5.3 Pikselidata ......................................................................................................................... 40<br />

3.6 ESIMERKKI.................................................................................................................................. 40<br />

4. SELVITYS <strong>DICOM3</strong> -TIEDOSTON MUUNNOKSESTA....................................................... 40<br />

4.1 OLEMASSA OLEVAT DICOM KATSELU- JA MUUNNOSOHJELMAT................................................ 40<br />

4.1.1 ImageJ................................................................................................................................ 40<br />

4.1.2 eViewBox ja JDicomViewer............................................................................................... 40<br />

4.1.3 MRIcro ja EzDicom ........................................................................................................... 40<br />

4.1.4 Osiris.................................................................................................................................. 40<br />

4.2 YLEISIÄ DICOM - MUUNNOKSESSA TARVITTAVIA TIETOJA........................................................ 40<br />

4.2.1 Data-alkioiden tunnistus.................................................................................................... 40<br />

4.2.2 Dataryhmän (Data Group) ja Data-alkion (Data-element) pituus................................... 40<br />

4.3 MUUNNOSPROSESSIN VAIHEET (YLEISELLÄ TASOLLA)................................................................ 40<br />

4.3.1 Vaihe 1: Tarkista että muunnettava tiedosto kelvollinen <strong>DICOM3</strong>-Tiedosto................... 40<br />

4.3.2 Vaihe2 : Tarkista tiedoston "syntaksi" (Transfer Syntax UID).......................................... 40<br />

4.3.3 Vaihe3: Tarkista mitä attribuutteja tiedosto sisältää (tiedoston pituus).......................... 40<br />

4.3.4 Vaihe4: Tarkista että tiedosto sisältää kaikki muunnosta varten tarvittavat data-alkiot . 40<br />

4.3.5 Vaihe5: Lue tarvittavat data-alkiot ja pura niiden sisältämä data syntaksin mukaisesti . 40<br />

4.3.6 Vaihe6: Suorita tarvittavat muunnosprosessit ja kirjoita uudelleen koodattu pikseli-data<br />

kohdetiedostoon. ......................................................................................................................... 40<br />

4.4 DICOM -TIEDOSTON MUUNNOKSEN ONGELMIA......................................................................... 40<br />

5. MISTÄ SAAN LISÄTIETOA? (LINKKILISTA JA LIITTEET)............................................. 40<br />

5.1 YLEISTÄ...................................................................................................................................... 40<br />

5.2 SÄHKÖISEN LIITEARKISTON SISÄLTÖ .......................................................................................... 40<br />

5.2.1 Esimerkkejä -kansio........................................................................................................... 40<br />

5.2.2 Omat -kansio...................................................................................................................... 40<br />

5.2.3 Perusinfo -kansio ............................................................................................................... 40<br />

5.2.4 Projekteja -kansio .............................................................................................................. 40<br />

5.2.5 Sekalaista -kansio .............................................................................................................. 40<br />

5.2.6 Softa -kansio ...................................................................................................................... 40<br />

25.10.03 5/53


TTKK(PKY) Selvitys <strong>DICOM3</strong> tiedostoformaatista Versio 1.1<br />

5.2.7 standardi(viimeisin99draft) -kansio................................................................................... 40<br />

5.3 LINKKILISTA SELITYKSINEEN...................................................................................................... 40<br />

6. ONNITTELUT! .............................................................................................................................. 40<br />

25.10.03 6/53


TTKK(PKY) Selvitys <strong>DICOM3</strong> tiedostoformaatista Versio 1.1<br />

1. JOHDANTO<br />

1.1 Tarkoitus ja kattavuus<br />

1.1.1 Varoitus! :-)<br />

Tämä dokumentti on tehty kesätyönä Porin korkeakouluyksikölle<br />

selvitykseksi <strong>DICOM3</strong> -Standardin mukaisesta lääketieteellisestä<br />

kuvatiedosto-formaatista. Selvitys on osa tulevaisuudessa<br />

mahdollisesti toteutuvaa Porin korkeakouluyksikön ja Soneran välistä<br />

yhteistyöprojektia.<br />

Dokumentissa on käsitelty pääasiassa <strong>DICOM3</strong>-kuvatiedoston<br />

rakennetta lähinnä kuvatiedoston muunnosprosessia silmälläpitäen.<br />

Tarkoituksena oli luoda pienimuotoinen selvitys ko. formaatista Webpohjaisen<br />

Konsultaatio-järjestelmän suunnittelutyötä ajatellen, sekä<br />

tarjota mahdollisuus lisätietojen nopeaan hankkimiseen<br />

lähdemateriaalin, viittausten ja sähköisessä muodossa olevan<br />

liitearkiston avulla. Tässä liitearkistossa on myös ACR-NEMAN<br />

DICOM -standardi ("draft"-versio (1999)) .<br />

Huom!!! Vaikka kaikki mahdollinen on tehty tämän dokumentin<br />

oikeellisuuden ja kattavuuden varmistamiseksi kirjoitushetkellä, ei<br />

Dokumentin kirjoittaja vastaa hengellään, omaisuudellaan tai edes<br />

teekkari-lakillaan siitä, mikäli jokin tieto tässä dokumentissa on<br />

epätäydellinen tai väärä. Käytä tätä dokumenttia muun informaation<br />

(virallisen painetun DICOM-standardin) lisänä ja ymmärtämisen<br />

apuna. Tämä varoittelu siitä syystä että DICOM-standardista ja<br />

DICOM-tiedostomuodosta on olemassa tuhansia eri tulkintoja jotka<br />

standardin yksikäsitteisyydestä huolimatta eivät aina ole<br />

yhteensopivia. Myöskään kirjoittajan käytössä ja tämän dokumentin<br />

sähköisessä liitearkistossa oleva standardin sähköinen "draft"-versio<br />

(1999) ei välttämättä kaikilta kohdiltaan ole virallisen painetun<br />

DICOM-standardin (DICOM Version 3) mukainen. Virallinen<br />

painettu versio on tilattavissa maksua vastaan NEMA:lta<br />

(http://medical.nema.org/dicom.html)<br />

1.2 Määritelmät, termit ja lyhenteet<br />

Seuraavassa taulukossa on listattu aakkosjärjestyksessä dokumentissa<br />

esiintyvät termit, määritelmät tai lyhenteet, jotka saattaisivat<br />

25.10.03 7/53


TTKK(PKY) Selvitys <strong>DICOM3</strong> tiedostoformaatista Versio 1.1<br />

mahdollisesti aiheuttaa sekaannusta dokumenttia luettaessa tai<br />

tarvitsevat muuten selvitystä tai tarkennusta.<br />

Termi tai lyhenne: Selitys<br />

ACR<br />

ACSE<br />

American College of Radiology<br />

OSI Association Control Service Element<br />

Atribuutti (attribute) Tarkenne, ominaisuus (tässä eritoten tietyn ominaisuusryhmän<br />

Big Endian<br />

yksittäinen jäsen)<br />

Binääridatan koodaustapa<br />

CT<br />

Data-alkio (Data<br />

Element)<br />

Datajoukko (Data<br />

Set)<br />

DICOM / <strong>DICOM3</strong> /<br />

DICM3 /DICM<br />

DIMSE<br />

"draft"-versio<br />

GIF<br />

HYTT<br />

IEC<br />

Information Object /<br />

"informaatio objekti"<br />

IOD<br />

ISO<br />

Computed Tomography<br />

Lääketieteellinen kuvausmenetelmä<br />

informaatio-objektin atribuutti, jolle on annettu joku yksilöllinen arvo.<br />

Joukko data-alkioita. Esim. DICOM tiedostossa data-joukko sisältää<br />

tiedoston varsinaisen datan.<br />

Dicital Imaging and Communication standard<br />

ACR-NEMAN Standardi lääketieteellisistä kuvaformaateista. (Huom.<br />

DICOM = <strong>DICOM3</strong> koska standardi nimettiin DICOM:ksi vasta 3:ssa<br />

versiossa) Tässä dokumentissa tarkoitetaan lisäksi DICOM:sta<br />

puhuttaessa <strong>DICOM3</strong>:n tällä hetkellä viimeisintä sähköistä ns. "draft"versiota<br />

(1999) (ks. "draft"-versio)<br />

DICOM Message Service Element<br />

DICOM standardin julkisesti saatavilla oleva testikäyttöön tarkoitettu<br />

standardin "ehdotelma"-versio.<br />

compuserve Graphics Interchange Format<br />

Häviöttönästi pakattu kuva formaatti. GIF-formaatissa tallennettu kuva<br />

voi sisältää enintään 256 erilaista sävyä<br />

Tampereen teknillisen korkeakoulun ohjelmistotekniikan laitoksella<br />

käytössä oleva: Hyväksytty Yleinen ToimintaTapa [Dokuty98]<br />

International Electrotechnical Commission<br />

Informaatio objekti on reaalimaailman käsite joka jollain tapaa voi<br />

liittyä lääketieteellisen kuvantamiseen. DICOM-standardin tuntemat<br />

informaatio objektit on määritelty standardin osassa 3. [DICM/3].<br />

Kullakin informaatio objektilla on omat atribuuttinsa<br />

Information Object Definition<br />

International Standards Organization<br />

25.10.03 8/53


TTKK(PKY) Selvitys <strong>DICOM3</strong> tiedostoformaatista Versio 1.1<br />

JPEG:iä (JPG)<br />

Little Endian<br />

NEMA<br />

ominaisuusryhmä<br />

(tässä<br />

ominaisuusryhmä =<br />

module)<br />

OB<br />

OSI-malli<br />

Joint Photographic Expert Group<br />

Häviöllinen (myös häviötön JPEG olemassa)<br />

pakkausalgoritmi/kuvaformaatti. Jpeg :in yhteydessä käytettävästä<br />

koodauksesta tarkemmin [DICM/5](8.2.1)<br />

Binääridatan koodaustapa<br />

National Electrical Manufacturers Association<br />

Ominaisuusryhmä (Information Object Module) on ryhmä informaatio-<br />

objektin samankaltaisia atribuutteja (data-alkioita). Yhdellä<br />

informaatio-objektilla on usein monta eri ominaisuusryhmää (modules).<br />

Eräs VR:N mahdollinen arvo<br />

Open System Interconnection<br />

ISO:n Standardiin perustuva 7-kerroksinen laitteiden/sovellusten välisen<br />

kommunikaation malli. OSI –malli perustuu ns.<br />

vertaiskommunikaatioon, jossa kaksi saman kerroksen oliota<br />

keskustelee ko. kerroksen yhteyskäytännön mukaisesti. Mallin N:s<br />

kerros perustuu aina N-1:n kerroksen tarjoamiin palveluihin. OSI –<br />

mallin kerrokset ovat alhaalta ylös:<br />

1) Peruskerros (Fyysinen kerros) (Physical) --> siirtää bittejä,<br />

2) Siirtokerros (Link) -->Siirtää datan verkon naapurisolmujen välillä<br />

3) Verkkokerros (Network) --> sanomien reititys verkon läpi<br />

4) Kuljetuskerros(Transport) -->nostaa verkkokerroksen palvelut<br />

yhteyskerroksen tasolle<br />

5) Yhteyskerros(Session) --> tarjoaa synkronoidun ja organisoidun<br />

tiedonsiirron esitystapa kerrokselle.<br />

6) Esitystapakerros (Presentation) --> Suorittaa esitystapa muunnoksia<br />

paikallisen ja siirtoesitysmuodon välillä sekä neuvottelee käytettävän<br />

siirtoesitysmuodon<br />

7) Sovelluskerros (Application) -->liitäntä sovellusprosessin ja<br />

tietoliikennemaailman välillä<br />

25.10.03 9/53


TTKK(PKY) Selvitys <strong>DICOM3</strong> tiedostoformaatista Versio 1.1<br />

Kuva 1.1 OSI-malli [OSI]<br />

OSI ULS OSI Upper Layer Service<br />

OW<br />

PIXEL CELL:<br />

(pikselisolu)<br />

PIXEL DATA<br />

(pikselidata)<br />

PKY<br />

RGB<br />

RLE<br />

SOP<br />

Service-Object Pair<br />

(SOP) Instance:<br />

STN<br />

"syntaksi"<br />

Tagi / Tag<br />

TIFF (TIF)<br />

TTKK<br />

Eräs VR:N mahdollinen arvo<br />

Pienin kuvadatan osa, joka sisältää yksittäisen pikselin<br />

näytearvon<br />

Graafinen data (kuvadata) jossa kukin piste esitetään tietyllä<br />

kuvapisteen arvolla pixelillä.<br />

PorinKorkeakouluYksikkö<br />

Red Green Blue<br />

Additiivinen eli lisäävä värien muodostus- (ja koodaus) tapa<br />

Run Length Encoding Compression, häviötön pakkausalgoritmi.<br />

Service-Object Pair<br />

Informaatio objektin ja kommunikaatio käsitteen käytännön ilmentymä..<br />

DICOM Session/ Transport / Profile<br />

kieli, merkitys; tässä Transfer Syntax joka ilmaisee DICOM-tiedoston<br />

kuvadatan koodauksen<br />

data-alkion tunnisteosa<br />

Tagged Interface File Format, kuvaformaatti runsassävyisille kuville.<br />

Tampereen teknillinen korkeakoulu<br />

25.10.03 10/53


TTKK(PKY) Selvitys <strong>DICOM3</strong> tiedostoformaatista Versio 1.1<br />

UID<br />

VR<br />

Unique identifier<br />

Value Representation, (data-alkion kenttä) spesifioi data-kentän<br />

arvon/arvojen tyypin ja muodon<br />

Taulukko 1.1 Dokumentissa käytettävät termit ja lyhenteet (joita ei ole selitetty<br />

esiintymisensä yhteydessä tai jotka vaativat lisä selvennystä).<br />

lihavointi ja kursivointi<br />

[hakasuluissa]<br />

(suluissa)<br />

/ kauttaviiva<br />

Taulukko 1.2 Dokumentissa käytettävät merkintätavat.<br />

1.3 Viitteet<br />

lihavointia ja kursivointia on<br />

käytetty ainoastaan selvennys<br />

tarkoituksessa<br />

viittaukset<br />

tarkennukset<br />

vaihtoehtoinen tapa<br />

Tässä kappaleessa on listattuna ja selitettynä dokumenttissa käytetyt<br />

viitteet Varsinainen liite- ja linkkilista on omassa luvussaan (luku 5).<br />

[Barre]<br />

[Chris]<br />

[DICM/X ]<br />

http://www.hds.utc.fr/~barre/medical/samples/in<br />

dex.html#transfer-syntax<br />

Tietoa DICOM - tiedostoformaatista:<br />

http://www.mrccbu.cam.ac.uk/personal/chris.rorden/<br />

dicom.htm<br />

<strong>DICOM3</strong> -standardi (sähköinen "draft" -versio<br />

25.10.03 11/53


TTKK(PKY) Selvitys <strong>DICOM3</strong> tiedostoformaatista Versio 1.1<br />

[Dokuty98]<br />

[EDU]<br />

[LukuX]<br />

[NEMA]<br />

[DICM/status]<br />

[OSI]<br />

1.4 Dokumentin rakenne<br />

1999) osa X<br />

Dokumentoinnin tyyliohje, 30.8.1998, versio 1.0,<br />

TTKK, Ohjelmistotekniikka, http://www.cs.tut.fi<br />

/cgi-bin/laatu/sivuhaku.pl? nk_no=2&nk_id=189.<br />

PRODUCT 4.23 - INFORMATICS STANDARDS<br />

IN HEALTH http://www.eihms.surrey.ac.uk<br />

/abbott/IT-EDUCTRA/html/p423_13.htm<br />

Viittaa tämän dokumentin lukuun X (1-6)<br />

NEMA:n standardi-sivu<br />

http://www.nema.org/standards/<br />

http://idt.net/~dclunie/dicom-status/status.html<br />

http://www.tml.hut.fi/Opinnot/Tik-<br />

110.350/1999/Kalvot/TKV170299/index.htm<br />

Tämän dokumentin rakenne noudattaa TTKK:n ohjelmistotekniikan<br />

laitoksen Hyväksyttyä Yleistä ToimintaTapaa soveltuvin osin<br />

(HYTT) [Dokuty98].<br />

1.5 Yleiskatsaus dokumenttiin<br />

Luku 1 on johdanto dokumenttiin. Johdanto selvittää dokumentin<br />

tarkoituksen, rakenteen ja laajuuden sekä selittää dokumentissa<br />

käytetyt termit ja viittemerkinnät. Ensimmäinen luku tarjoaa myös<br />

kiireiselle lukijalle hyödyllisen yleiskatsauksen dokumenttiin (tämä<br />

osa) ,jossa käydään lyhyesti läpi dokumentin sisältö.<br />

Luku 2 esittelee lyhyesti <strong>DICOM3</strong> -standardin ja sen rakenteen.<br />

Tämän luvun tarkoituksena on antaa lukijalle yleiskäsitys<br />

<strong>DICOM3</strong>:sta jotta dokumentin seuraaminen helpottuu.<br />

Luku 3 käy läpi <strong>DICOM3</strong> kuvatiedoston rakenteen ja<br />

tiedostoformaatin. Ennenkaikkea tarkastellaan tiedoston rakennetta<br />

DICOM- tiedoston muunnoksen kannalta.<br />

Luku 4 käsittelee varsinaisen <strong>DICOM3</strong> -tiedoston muuntamisen<br />

muihin kuvatiedosto formaatteihin. Muunnos käydään läpi vaiheittain<br />

25.10.03 12/53


TTKK(PKY) Selvitys <strong>DICOM3</strong> tiedostoformaatista Versio 1.1<br />

yleisellä tasolla, mutta itse muunnosprosessin yksityiskohtiin ei<br />

mennä kovin syvällisesti. Tarkoituksena on antaa yleiskuva niistä<br />

toimenpiteistä ja asioista, joita <strong>DICOM3</strong> -muotoisen tiedoston<br />

muuntamiseen liittyy. Luvussa 4 esitellään myös joitakin saatavilla<br />

olevia muunnos- ja katseluohjelmia ja niiden ominaisuuksia.<br />

Luku 5 sisältää tärkeää informaatiota lisätiedon etsintään aiheesta.<br />

Tässä luvussa käydään läpi yksityiskohtaisesti sähköisen liitearkiston<br />

sisältö. Lukuun 5 kuuluu myös linkkilista selityksineen aiheeseen<br />

liittyen.<br />

25.10.03 13/53


TTKK(PKY) Selvitys <strong>DICOM3</strong> tiedostoformaatista Versio 1.1<br />

2. DICOM???<br />

2.1 Mikä DICOM on?<br />

DICOM (Digital Imaging and Communications in Medicine)<br />

on mailmanlaajuisesti käytetty lääketieteellisen kuvantamisen<br />

standardi, joka määrittelee lääketieteellisen kuvaformaatin ja tarjoaa<br />

kuvauslaitteille yhteensopivan tavan kommunikoida keskenään sekä<br />

ulkomaailman kanssa. Yksinkertaistaen voidaankin todeta, että<br />

DICOM määrittelee lääketieteellisen kuvauksen "kielen" ja luo<br />

"kehykset" lääketieteellisille kuville.<br />

DICOM on pohjimmiltaan amerikkalainen standardi. Sen takana on<br />

kahden standardin potetiaalisen käyttäjän ACR (American College of<br />

Radiology) ja NEMA (National Electrical Manufacturer's<br />

Association) (ACR-NEMA) yhteenliittymä. DICOM on siis lähtenyt<br />

käyttäjien tarpeesta. Tämä on mahdollistanut sen, että DICOM:sta on<br />

myös voinut kehittyä hyvin käytännön tarpeet täyttävä standardi.<br />

Toisaalta käytännön lähtökohtien huomioiminen on varmasti osaltaan<br />

syynä siihen, miksi DICOM ei ole ehkä niitä selkeä lukuisimpia<br />

standardeja. Tunnettu tosiasiahan on, että käytännöllisyys, yleisyys ja<br />

monimutkaisuus kulkevat käsi kädessä.<br />

2.2 DICOM:iin liittyviä väärinkäsityksiä ja selvityksen<br />

ongelmia?<br />

Osittain ehkä DICOM:n monimutkaisuudesta johtuen siitä on<br />

olemassa useitakin vääriä käsityksiä ja huhuja, jotka osaltaan<br />

hankaloittavat standardin ymmärtämistä.<br />

2.2.1 Yleiset harhaluulot DICOM:sta<br />

DICOM ei sinänsä puutu mitenkään varsinaisen kuvadatan sisältöön<br />

eikä näin ollen itsessään paranna kuvan laatua.<br />

DICOM ei ota kantaa kuvan lääketieteellisen sisällön oikeellisuuteen<br />

tai tarkkuuteen. Se ei siis määrittele kuinka tarkka esim. MR-kuvan<br />

pitäisi olla, jotta sitä voitaisiin käyttää diagnosointiin.<br />

DICOM ei takaa sitä, että DICOM:a tukevat laitteet ja niiden kuvat<br />

olisivat täysin yhteensopivia. DICOM:n hienoin idea on juuri siinä,<br />

25.10.03 14/53


TTKK(PKY) Selvitys <strong>DICOM3</strong> tiedostoformaatista Versio 1.1<br />

että se ei rajoita käyttäjän luovuutta. Se vain määrittelee tietyt minimi<br />

vaatimukset, mutta ei kaikilta osin anna aina ehdotonta mallia miten<br />

jokin asia pitäisi tehdä. Varsinainen yhteensopivuus on aina<br />

varmistettava laitevalmistajan "yhteensopivuus väittämästä"<br />

(conformance statement) esim. valmistajan kotivuilta. Tästä<br />

"yhteensopivuus väittämästä" ilmenee millä tavoin valmistajan tuote<br />

ja sen kuvat ovat DICOM yhteensopivia.<br />

2.2.2 Epäselvyydet versionimissä ja osalukumäärissä... DICOM,<br />

DICOM Version 3, ACR-NEMA Version 2, "draft-versio"....????<br />

DICOM ei eroa mitenkään DICOM Version 3:sta. ACR-NEMA<br />

Version1 ja ACR-NEMA Version2 ovat DICOM:n "aiempien<br />

versioiden" nimet, eikä DICOM 1:stä, DICOM 2:sta tai DICOM 3:sta<br />

ole virallisesti olemassa. Sekavuutta saattaa lisätä vielä verkon kautta<br />

jaeltava "draft" - eli kehitysversio, joka kuitenkin vastaa käytännössä<br />

melko hyvin standardin uusinta painettua versiota.<br />

DICOM:sta ei siis ole olemassa tällä hetkellä useampia kuin yksi<br />

virallinen painettu (ja maksullinen) versio nimeltään DICOM<br />

Version 3. Tässä versiossa on nykyisin (vuoden 1999 lopussa)<br />

alkuperäisen 1993 julkaistun standardin 9 osaa ja näihin myöhemmin<br />

lisätyt 5 lisäosaa (liitettä) eli yhteensä 14 osaa. Mainitsen<br />

osalukumäärät tässä siksi, että nimenomaan niiden kohdalla esiintyy<br />

monesti epäselvyyksiä (tämän dokumentin edellinen versio<br />

mukaanlukien) kun joissain yhteyksissä puhutaan muiden kuin<br />

alkuperäisten 9:n osan kohdalla liitteistä (supplements). Pahiten asiaa<br />

kuitenkin sotkee se, että standardia päivitetään jatkuvasti ja uusia<br />

kohtia lisäillään samalla kun vanhentuneita poistetaan. Tämä saattaa<br />

aiheuttaa sen, että standardin osienkin lukumäärä voi jo ensi vuonna<br />

olla täysin eri kuin tänä vuonna. Oman sotkunsa soppaan lisäävät vielä<br />

käytössä olevat standardien vanhemmat painokset ja monet muut<br />

lähteet kun puhutaan DICOM:n sisältävän 9, 10 tai 13 osaa. Vaikka<br />

osien lukumäärällä ei käytännössä ole juurikaan merkitystä, se antanee<br />

kalpean aavistuksen DICOM:n ylläpidon hankaluuksista. Kun<br />

liikutaan tietotekniikan kaltaisilla nopeasti muuttuvilla alueilla, vaatii<br />

toimivan standardinkin ylläpito jatkuvia muutoksia uusien<br />

tekniikoiden kehittyessä ja yleistyessä.<br />

2.2.3 Mitä DICOM sitten oikein takaa?<br />

Kaiken yllä olevan negatiivisen pyörityksen jälkeen lukijalle saattaa<br />

herätä kysymys, mitä DICOM yhteensopivuus sitten oikein takaa?<br />

Periaatteessa vastaus voisi kuulua ei mitään, sillä DICOM: n<br />

väljyydestä johtuen sillä voidaan tehdä melkein mitä tahansa.<br />

Käytännössä se oikein käytettynä kuitenkin varmistaa, että kuvista on<br />

25.10.03 15/53


TTKK(PKY) Selvitys <strong>DICOM3</strong> tiedostoformaatista Versio 1.1<br />

saatavissa ja kuviin on liitettävissä kaikki tarpeellinen data järkevällä<br />

ja yksikäsitteisellä tavalla, vieläpä siten että kuvan rakennekin säilyy<br />

järkevänä, yksikäsitteisenä sekä laitteisto/ympäristö riippumattomana.<br />

Kun tähän ylevään lauseeseen vielä lisätään, että kaikki tämä on<br />

mahdollista myös käytännön kuvauslaitteille ja suhteellisen vähän<br />

luovuutta rajoittavasti, voidaan hyvällä syyllä todeta että DICOM<br />

mahdollistaa paljon, vaikkei pelkkä väittämä "DICOM<br />

yhteensopiva" itsessään takaakaan paljon mitään. Juuri tämä<br />

lienee se DICOM:n menestyksen salaisuus. ;-)<br />

2.3 DICOM:n historia ja sen kehitysvaiheet<br />

Ensimmäiset ajatukset lääketieteellisen kuvastandardin kehittämiselle<br />

heräsivät jo 1970 -luvulla, kun mikroprosessorien kehityksen myötä<br />

tietokoneiden ja tietotekniikan määrä sairaaloissa kasvoi<br />

voimakkaasti. Ongelmana oli tuolloin eritoten kuvauslaitteiden ja<br />

kuvien keskinäinen yhteensopimattomuus ja hankala siirreltävyys, kun<br />

kukin laite käytti ja ymmärsi ainoastaan tietyn tyyppisiä kuvia.<br />

Vuonna 1983 ACR (American College of Radiology) ja NEMA<br />

(National Electrical Manufacturer's Association) saivat vihdoin<br />

pitkällisten alkuvalmistelujen jälkeen muodostetuksi komitean, joka<br />

ryhtyi kehittämään lääketieteellisen kuvauksen standardia lähinnä<br />

radiologian tarpeisiin. Kehittäjiensä mukaan standardi sai nimekseen<br />

ACR-NEMA. Ensimmäistä versiota seurasi pian toinen, mutta<br />

kumpikaan ei saavuttanut juurikaan suosiota varsinkaan Amerikan<br />

mantereen ja radiologian ulkopuolella. Ongelmana oli lähinnä<br />

standardin kapea-alaisuus, verkkotuen puuttuminen ja<br />

epäyhteensopivuudet muihin Digitaalisen kommunikaation<br />

standardeihin nähden.<br />

Jo melko pian ACR-NEMA:n toisen version jälkeen kävi ilmeiseksi,<br />

ettei standardi tulisi yleistymään ainakaan radiologian ulkopuolella.<br />

Eurooppalaiset kehittelivät jo vauhdilla omaa MEDICOM<br />

standardiaan, jonka oli tarkoitus korvata rakenteeltaan osittain<br />

vanhentunukin ACR-NEMA euroopassa. ACR ja NEMA olivat<br />

vaikean päätöksen edessä. Jatkaako edelleen standardin kehittelyä<br />

suppealle kohdejoukolle, vai lähteäkö kehittämään standardia alusta<br />

alkaen uudelleen? Lopulta päädyttiin jälkimmäiseen ratkaisuun.<br />

Datarakenne päätettiin kuitenkin säilyttää, koska se oli saavuttanut<br />

melkoisesti suosiota laitevalmistajien keskuudessa. Sen sijaan<br />

vanhentuneet matalan tason kommunikaatio protokollat jätettiin<br />

syrjemmälle, ja uusi OSI-mallin pohjalta rakenneltu verkkopohjaisen<br />

kommunikaation malli luotiin. Muutenkin yhteensopivuutta muihin<br />

standardeihin parannettiin ja standardi pyrittiin suuntaamaan<br />

mahdollisimman laajalle sovellusalueelle.<br />

25.10.03 16/53


TTKK(PKY) Selvitys <strong>DICOM3</strong> tiedostoformaatista Versio 1.1<br />

Työtä tekemään nimettiin useita komiteoita, jotka työskentelivät<br />

paljolti yhteistyössä eurooppalaista MEDICOM:ia kehittävän CEN<br />

TC 251 -työryhmän ja muidenkin standardoimis organisaatioiden<br />

kanssa. Vuoteen 1993 mennessä standardin runko alkoi olla valmis ja<br />

standardin jakelu alkoi marraskuussa 1993.<br />

Syntynyt uusi lääketieteellisen kuvantamisen standardi, joka sai<br />

nimekseen DICOM Version 3, tuntui vihdoin riittävän<br />

yleispätevältä. Se vaati kuitenkin vielä monelta osin tarkennuksia ja<br />

täsmennyksiä. Merkittävin tehtävä oli määritellä tarkemmin<br />

tiedostoformaatti ja spesifioida eri tallennus mediat ja niiden<br />

rajapinnat, jotka alkuperäinen standardi periaatteessa jätti avoimeksi.<br />

Kehitystyötä päätettiin jatkaa lisäämällä uusia osia (liitteitä)<br />

alkuperäiseen standardiin. Liitteitä valmistuikin vähitellen ja vuoden<br />

1998 aikana DICOM oli saanut lähes nykyisen (1999) ulkoasunsa<br />

(kaikki 14 osaa).<br />

DICOM levisi vauhdilla. Jo vuoteen 1996 mennessä, se oli<br />

saavuttanut vankan jalansijan Euroopassakin. Leviämistä Eurooppaan<br />

auttoi osaltaan se, että alunperin puhtaasti omaksi standardikseen<br />

suunniteltu eurooppalainen kuvantamisen standardi MEDICOM<br />

pohjautui yhteistyön ansiosta lähes täysin DICOM:iin. Myös<br />

laitteistovalmistajien siirtyminen DICOM:iin kävi helposti, koska<br />

standardin datarakenne vastasi ACR-NEMA:n datarakennetta, joka<br />

useimmilla valmistajilla oli jo käytössä. Erityisesti yleistyminen<br />

kardiologian alueella oli merkitävä läpimurto DICOM:lle. Se osoitti<br />

ensimmäistä kertaa myös käytännössä, että alunperin radiologian<br />

tarpeisiin suunniteltu standardi pystyi onnistuneesti toimimaan myös<br />

muilla lääketieteen alueilla. DICOM:sta tuli kuvauksen ja<br />

kuvauslaitteiden "de facto"-standardi, joka on käytössä ympäri<br />

maailmaa.<br />

Seuraavassa taulukossa on kuvattu lyhyesti DICOM standardin<br />

tärkeimmät kehitysetapit.<br />

1983 ACR ja NEMA muodostavat komitean<br />

lääketieteellisen kuvastandardin kehittämiseksi<br />

1985<br />

1988<br />

Standardin ensimmäinen versio valmistuu. Tämä<br />

ACR-NEMA standardi ei kuitenkaan saavuta laajaa<br />

suosiota.<br />

Standardin 2. versio julkaistaan. Versioon 2 on lisätty<br />

mm. tuki kuvadatan pakkaukselle.<br />

1989 Aloitetaan standardin 3:n version kehitystyö.<br />

Tarkoituksena on luoda kokonaan uudistettu versio,<br />

joka pohjautuu paremmin olemassa oleviin<br />

kommunikaation standardeihin. Erotukseksi edellisistä<br />

25.10.03 17/53


TTKK(PKY) Selvitys <strong>DICOM3</strong> tiedostoformaatista Versio 1.1<br />

1991<br />

1993<br />

1994<br />

1995<br />

1998<br />

Taulukko 2.1 DICOM -standardin kehitysvaiheet.<br />

2.4 DICOM:n kommunikaation malli<br />

Medical Imaging Application<br />

versioista standardi päätetään nimetä DICOM:ksi<br />

Ensimmäiset DICOM-standardin osat (1 ja 8)<br />

valmistuvat<br />

Standardin osat 1-9 otetaan käyttöön. Standardin<br />

nimeksi tulee DICOM Version 3. Vaikka standardin<br />

3:s versio katsotaan virallisesti valmistuneeksi sen<br />

kehitystyö jatkuu edelleen<br />

Liite 1 (Supplement 1) eli käytännössä osa 10, (part<br />

10 Media Storage and File Format) valmistuu<br />

Liitteet 2, 3 ja 4 (Parts 11, 12 , 13) valmistuvat<br />

Tällä hetkellä viimeisin Liite 5 (Part 14) valmistuu<br />

DICOM Application Entity (DICOM sovellusyksikkö)<br />

Service Class specifications<br />

Information Object Definitions<br />

Data Structure and Encoding<br />

File Format Message Exchange<br />

DICOM File service<br />

Media format and physical<br />

media specifications<br />

Off Line Communication<br />

DICOM Session/<br />

Transport /<br />

Profile<br />

STN<br />

DICOM<br />

DataLink<br />

DICOM<br />

Physic. (50 pin)<br />

OSI ULS (OSI Upper layer service) -rajapinta<br />

DICOM UpperLayer<br />

Protocol for TCP/IP<br />

ACSE<br />

OSI Presentation Kernel<br />

OSI Session Kernel<br />

OSI Transport<br />

OSI Network<br />

LLC (Link)<br />

Kuva 2.1 DICOM:n kommunikaation malli ja tuetut kommunikaatio protokollat.<br />

25.10.03 18/53<br />

TCP<br />

IP<br />

Standard network physical layer<br />

(Ethernet, ISDN ...etc)<br />

"Point to Point" -Ympäristö Verkko -Ympäristö<br />

On Line Communication


TTKK(PKY) Selvitys <strong>DICOM3</strong> tiedostoformaatista Versio 1.1<br />

DICOM standardi rakentuu oikeastaan kerroksellisen<br />

kommunikaation mallin pohjalta. On hyvä muistaa, että ACR-NEMA<br />

standardia lähdettiin aikanaan uudistamaan osaksi juuri puutteellisen<br />

verkkotuen takia. Tarvittiin standardia, joka mahdollistaisi joustavasti<br />

eri laitteiden ja sovellusten välisen kommunikaation erilaisista<br />

ympäristöistä huolimatta.<br />

DICOM:a suunniteltaessa otettiinkin tavoitteeksi, että mikä tahansa<br />

ulkopuolinen lääketieteellisen kuvauksen sovellus ja kuvauslaite<br />

voisivat "keskustella" keskenään standardin tarjoamien<br />

"kommunikaatio reittien" (pinot = stacks) avulla. Tältä perustalta<br />

syntyi kerroksellinen kommunikaation malli, joka on esitetty kuvassa<br />

2.1. Kommunikaatio mallia katseltaessa voi havaita ISO:n OSI mallin<br />

keskeisyyden. Jo kerroksellinen rakenne pohjautuu alunperin OSI:iin,<br />

mutta tärkeimpänä liittymäkohtana on kuitenkin OSI:iin pohjautuvan<br />

rajapinnan ottaminen mukaan malliin. Seuraavissa kappaleissa on<br />

hieman tarkemmin selostettu DICOM:n kommunikaatio mallin<br />

sisältöä.<br />

Ylimpänä mallissa on DICOM sovellusyksikkö (DICOM application<br />

entity) Tämä sovellusyksikkö sisältää palvelu luokkien ja informaatio<br />

objektien määritelmät. Lisäksi se spesifioi standardin data rakenteen,<br />

datan koodauksen.ja määrittelee viestinnän- sekä tiedoston formaatin.<br />

DICOM sovellusyksikkö siis kuvaa standardin kielen ja osaset, joita<br />

tarvitaan yhteyksien pitämiseen ulkomaailman kanssa.<br />

DICOM sovellusyksikkö voi kommunikoida ulkomaailman kanssa<br />

periaatteessa kahden raja-pinnan välityksellä. DICOM File Servicen<br />

välityksellä DICOM tiedostot kommunikoivat fyysisen<br />

tallennusmedia palasen kanssa, joka pitää sisällään DICOM:n tukemat<br />

tallennusvälineet. Koska tämä palikka menee fyysiselle tasolle asti<br />

voidaan sen välityksellä DICOM tiedostoja tallentaa hyvinkin<br />

monentyyppisissä ympäristöissä tuetuille tallennusvälineille.<br />

DICOM sovellusyksikön varsinaiset on-line yhteydet alaspäin<br />

hoituvat OSI ULS (OSI Upper Layer Service) -rajapinnan kautta. OSI<br />

ULS on pääosin OSI-mallin ACSE(OSI Association Control Service<br />

Element ), OSI Presentation Kernel ja OSI Session Kernel palasiin<br />

perustuva, DICOM:n Message Exchange -palikan tarjoama palvelu,<br />

joka mahdollistaa yhteydet DICOM:n ylempiin kerroksiin. Koska<br />

OSI-ULS rajapinta on pääosin yhteinen kaikille DICOM:n tukemille<br />

"on line" -kommunikaatio protokollille, se toimii ikäänkuin<br />

yhdistävänä siltana DICOM sovellusyksikön ja tuettujen<br />

kommunikaatio protokollien välillä.<br />

25.10.03 19/53


TTKK(PKY) Selvitys <strong>DICOM3</strong> tiedostoformaatista Versio 1.1<br />

DICOM tukee kaikkiaan kolmea erillistä (on-line) kommunikaatio<br />

protokollaa. Näistä DICOM:n oma "Point to Point" on mukana<br />

lähinnä yhteensopivuus syistä edellisiin "ACR-NEMA" -standardeihin<br />

nähden. Verkkopohjaisista protokollista DICOM tukee TCP/IP:tä ja<br />

OSI:a. Kuten kuvasta 2.1 voi havaita DICOM ei mitenkään joudu<br />

muuttelemaan näitä protokollia, vaan soveltaa niitä sellaisinaan, mikä<br />

mahdollistaa laajan yhteensopivuuden eri laitteiden suhteen. OSI<br />

protokollasta on erotettavissa kaikki seitsemän kerrosta (ACSE<br />

kuuluu 7:een kerrokseen) ks. kuva 2.1. Pohjimmaisena oleva fyysinen<br />

kerros<br />

( Standard Network Physical Layer) on yhteinen sekä TCP/IP:lle että<br />

OSI:lle. Tämän jälkeen seuraavat OSI:n puolella kaikki muut sen<br />

kerrokset järjestyksessä 6:een saakka ja viimeisenä<br />

sovelluskerrokseen kuuluva ACSE. Vastaavasti TCP/IP:llä tulevat sen<br />

kerrokset IP ja TCP, sekä päälimmäinen DICOM:n oma kerros<br />

(DICOM UpperLayer Protocol for TCP/IP) joka vastaa OSI-mallin<br />

ylempiä kerroksia ja sovittaa TCP/IP:n OSI:in pohjautuvaan DICOM<br />

ULS:ään. Vastaavia tehtäviä hoitaa DICOM:n oman "Point to Point"<br />

protokollan puolella STN kerros, joka tukee DICOM ULS:ää<br />

tarpeellisilta osin.<br />

2.5 DICOM:n rakenne ja osat<br />

Osa 1 OverView<br />

Osa 2<br />

Confor-<br />

mance<br />

Osa 14<br />

(liite 5)<br />

Graysc.<br />

Stand.<br />

Disp.<br />

Funct.<br />

Osa 8<br />

(Comm.Network<br />

Support) (OSI)<br />

Osa 4 Service Classes Specification<br />

Osa 3 Information Objects<br />

Osa 6<br />

Data Dictionary<br />

Osa 7<br />

Message Exchange<br />

Osa 9<br />

(Comm.Point<br />

to Point..)<br />

Osa 5<br />

Data Structures<br />

Osa 13 (liite 4)<br />

(Print Man.<br />

Point to Point..)<br />

Osa 10 (liite 1)<br />

(Storage Media<br />

and File Form.)<br />

Part 12 (liite3)<br />

(Media formats<br />

and fys. media)<br />

Osa 11<br />

(liite2)<br />

Media<br />

storage<br />

Appli-<br />

cation<br />

Profiles<br />

Kuva 2.2 DICOM -Standardin osat ja rakenne (1999). Alkuperäisten osien ääriviivat<br />

on vahvennettu, vanhentuneet osat (tod.näk seuraavasta versiosta<br />

poistuvat) kuvattu tummemman harmaalla ja DICOM sovellusyksikkö<br />

25.10.03 20/53


TTKK(PKY) Selvitys <strong>DICOM3</strong> tiedostoformaatista Versio 1.1<br />

(Application Entity) on ympäröity katkoviivalla. Huomaa että osien<br />

sijoittelu kuvaa standardin rakennetta (kerroksellisuus)(vrt kuva 2.1)<br />

Edellisessä kappaleessa todettiin jo sivumennen, että DICOM:n<br />

rakenne perustuu kommunikaation malliin. Tämä on itse asiassa<br />

järkevääkin, sillä sopiihan kommunikaation standardin (jollainen<br />

DICOM:kin on) lähtökohdaksi aivan luonnollisesti kommunikaation<br />

malli. Suuremmaksi ongelmaksi muodostuikin standardia<br />

suunniteltaessa järkevä osajako, eli miten jakaa standardi toisiaan<br />

tukeviin, mutta samalla irrallisiin toiminnallisiin palasiin, jotka vielä<br />

sopisivat kommunikaation mallin kerroksellisuuteen. Lopulta<br />

päädyttiin kuvan 2.2 mukaiseen ratkaisuun. Kun vertaa kuvaa 2.2<br />

kommunikaatio mallin kaavioon, (kuva 2.1) huomaa varmasti melko<br />

helposti yhtenäisyydet erityisesti DICOM sovellusykön ja<br />

katkoviivoitetun alueen välillä. Tämä palikka pohjautuukin lähes<br />

sellaisenaan kommunikaation malliin. Niin ikään alemman tason<br />

kommunikointi kerroksien välillä näkyy selvä yhteys, varsinkin jos<br />

sisällyttää "point to point" tulostuksen hallinnan (osa 13) "point to<br />

point" protokollan yhteyteen. Yleisestikin on huomattava, että vaikka<br />

kaikkia osia ei kommunikaatiomallissa näykään, niin silti näilläkin<br />

osilla on oma tärkeä tehtävänsä standardissa. Monet näistä kuten osa 2<br />

(conformance) ja osa 11 (Media Storage application profiles) toimivat<br />

useamman kerroksen alueella, asettaen rajat standardille ja sen<br />

soveltamiselle (Kuvattu muita osia rajoittavina pylväinä). Seuraavissa<br />

kappaleissa on vielä käyty lyhyesti läpi kaikki standardin osat ja<br />

niiden keskeisimmät tehtävät.<br />

2.5.1 Osa 1: Introduction and Overview [DICM/1]<br />

(Esittely ja yleiskatsaus)<br />

Tämä osa on eräänlainen johdanto standardiin, joka asettaa päämäärät<br />

standardille ja sen toiminnoille. Siinä käydään läpi standardin<br />

tavoitteet, historia ja rakenne. Lisäksi osassa 1 on lyhyt yhteenveto<br />

standardin kustakin osasta (osat 1-9 ei liite-osia 10 - 14).<br />

2.5.2 Osa 2: Conformance [DICM/2]<br />

(Yhteensopivuus)<br />

Määrittelee yleiset yhteensopivuus vaatimukset joiden täytyy täyttyä,<br />

jotta tuote voisi olla yhteensopiva DICOM -standardin kanssa. Tämä<br />

osa on erittäin tärkeä standardin kannalta koska se tavallaan asettaa<br />

rajat standardin tulkinnoille ja soveltamiselle. Conformance osa antaa<br />

niin ikään mallin laitevalmistajien käyttämille yhteensopivuus<br />

väittämille (conformance statements) joiden rakenteen pitäisi olla sen<br />

mukainen.<br />

25.10.03 21/53


TTKK(PKY) Selvitys <strong>DICOM3</strong> tiedostoformaatista Versio 1.1<br />

2.5.3 Osa 3: Information Object Definitions (IODs) [DICM/3]<br />

("informaatio objectejen" määritelmät)<br />

Määrittelee täydellisesti käsitteen "informaatio objekti". Esittää<br />

määritelmät käytännön "informaatio objekteista" (käsitteistä, jotka voivat<br />

liittyä lääketieteellisen digitaalisen tiedon välittykseen) ja kaikista niihin<br />

liittyvistä attribuuteista joita standardi tukee. Määrittelee DICOM:n<br />

informaatio mallin ja mallin reaalimaailmasta.<br />

2.5.4 Osa4: Service Class Specifications [DICM/4]<br />

(Palveluluokan spesifikaatiot)<br />

Määrittelee palveluluokan (Service Class) käsitteen ja SOP:n (Service<br />

Object Pair). Kuvaa käsitteiden välisen vuorovaikutuksen mallin, joka<br />

on yksi standardin peruspylväistä. Lopuksi käy läpi ja määrittelee eri<br />

palveluluokat (Service Class), sekä niihin kuhunkin liittyvät SOP:t.<br />

2.5.5 Osa5: Data Structure and Semantics [DICM/5]<br />

(Tiedon rakenne ja semantiikka)<br />

Määrittelee tiedon rakenteen ja koodauksen. Käyttää hyväkseen<br />

osassa 3 esittettyjä informaatio-objektien määritelmiä ja luo näiden<br />

pohjalta "rakennus piirrustukset" standardin välityksellä esitettävälle<br />

datalle. ("standardin kielioppi")<br />

2.5.6 Osa6: Data Dictionary [DICM/6]<br />

(Tieto sanasto)<br />

Sisältää rekisterin kaikista DICOM:n data-alkioista ("rakennus<br />

palikat") ja niiden merkinnöistä<br />

("standardin sanakirja")<br />

2.5.7 Osa 7: Message Exchange [DICM/7]<br />

(Viestintä)<br />

Määrittelee DICOM:n viestipalvelin osan (DIMSE). DIMSE:n<br />

käyttämä DIMSE-protokolla puolestaan määrittelee ylemmän tason<br />

koodaus säännöt joita tarvitaan viestien välittämiseksi ja sitä kautta<br />

myös DICOM ULS:n. Viesti välitetään DIMSE:n mukaan<br />

komentojoukkona (Command Set)(sisältää tietoa lähetetyn Data-Setin<br />

tulkintaa varten), jota seuraa Datajoukko (DataSet). Viesti formaatti<br />

muistuttaa suuresti DICOM tiedostoformaattia (tiedostoformaattia on<br />

tarkemmin käsitelty seuraavassa luvussa)<br />

25.10.03 22/53


TTKK(PKY) Selvitys <strong>DICOM3</strong> tiedostoformaatista Versio 1.1<br />

2.5.8 Osa 8: Network Communication Support for Message<br />

Exchange [DICM/8]<br />

(Verkkopohjaisen viestinnän tuki)<br />

Määrittelee DICOM:n verkkopohjaisen kommunikaation mallin (ks.<br />

kuva 2.1), jota voidaan pitää koko DICOM:n rakenteen perustuksena.<br />

Tämä osa sisältää myös kuvauksen siitä miten DICOM ULS -<br />

muodostetaan ja miten ne liittyvät OSI -mallin kerroksiin. Niin ikään<br />

osassa 8 on käsitelty DICOM:n verkkopohjaiset protokollat ja<br />

spesifioitu niiden yhteydet toisiinsa<br />

2.5.9 Osa 9: Point to Point Communication Support for Message<br />

Exchange [DICM/9]<br />

("Point to Point"- viestinnän tuki)<br />

Osa 9 määrittelee DICOM:n oman "Point to Point" protokollan ja sen<br />

liittynnän OSI -pohjaiseen rajapintaan DICOM ULS:ään. Tämä osa on<br />

mukana lähinnä DICOM:n edeltäjän ACR-NEMA -standardin<br />

tukemiseksi. Tulevista DICOM:n versioista se todennäköisesti jää<br />

pois.<br />

2.5.10 Osa 10: Media Storage and File Format for Media Interchange<br />

[DICM/10]<br />

(Tiedon säilöminen ja tiedostoformaatti )<br />

Määrittelee yleisen (kerroksellisen) mallin tiedon tallennukseen,<br />

DICOM tiedostomuodon ja DICOM tiedostopalvelun. Malli luo<br />

"kehykset" lääketieteellisen kuvainformaation tallennukselle ja eri<br />

kuvaformaattien vuorovaikutukselle. Tämän osan sisältöön on<br />

perusteellisemmin paneuduttu seuraavassa DICOM:n<br />

tiedostoformaattia käsittelevässä luvussa.<br />

2.5.11 Osa 11: Media Storage Application Profiles [DICM/11]<br />

(Tiedon tallennuksen sovellutuksia)<br />

Tarkentaa ja kuvaa edelleen yleistä tiedon tallennuksen mallia.<br />

Mahdollistaa yhteentoimivuuden esittämällä standardin osat, jotka<br />

sopivat tiettyyn erityiseen kliiniseen tarpeeseen.<br />

25.10.03 23/53


TTKK(PKY) Selvitys <strong>DICOM3</strong> tiedostoformaatista Versio 1.1<br />

2.5.12 Osa 12: Media Formats and Physical Media for Media<br />

Interchange [DICM/12]<br />

( Tiedon muodot ja fyysinen media tiedon vuorovaikutukseen)<br />

Helpottaa tiedon siirtoa eri kuvauslaitteiden ja tietojärjestelmien<br />

välillä , määrittelemällä yhteyden yleisen tiedon tallennus mallin (Osa<br />

10) ja tietyn fyysisen median ja tallennusmuodon välille. Määrittelee<br />

tuettujen fyysisten medioden ominaispiirteet ja niihin liittyvät tiedon<br />

formaatit.<br />

2.5.13 Osa13: Print Management Point-to-Point Communication<br />

Support [DICM/13]<br />

(Tulostuksen hallinnan tuki)<br />

Määrittelee palvelut ja protokollat, jotka ovat tarpeellisia DICOM:n<br />

tulostuksen hallinnassa. Tämä osa perustuu läheisesti DICOM:n omaan<br />

"Point to Point" -protokollaan (ks. 2.5.9) ja on näin myös siltä osaltaan<br />

hieman vanhentunut.<br />

2.5.13.1 Osa14: Grayscale Standard Display Function [DICM/14]<br />

(Standardoitu funktio harmaasävyjen esittämiseksi)<br />

Osa 14 on DICOM:iin vuoden 2000 alkuun mennessä tehty viimeisin<br />

lisäys. Se pyrkii määrittelemään standardoidun tavan harmaasävykuvien<br />

esittämiseen. Lisäksi se esittää esimerkkejä kuvausjärjestelmän<br />

sovittamiseksi määriteltyyn funktioon.<br />

2.6 DICOM:n tulevaisuus<br />

DICOM:n asema lääketieteellisen kuvantamisen ykkös-standardina on<br />

tällä hetkellä selvä. Standardi on saavuttanut paitsi laitevalmistajien,<br />

myös kuvausalan asiantuntijoiden suosion ympäri maailmaa. Useat<br />

muutkin lääketieteellisen kuvauksen standardoimisjärjestöt, kuten<br />

japanilainen JIRA (Japanese Industry Association for Radiation<br />

Apparatus) ja Eurooppalainen CEN TC 251 ovat ottaneet DICOM:n<br />

omien standardiensa ja suositustensa pohjaksi. Tästäkään huolimatta<br />

ACR-NEMA:lla ei ole varaa levätä laakereillaan. Lähi tulevaisuuden<br />

haasteina DICOM:lla on ennen kaikkea multimedian liittäminen<br />

mukaan kuvaan. Ongelmia on tuottanut myös 3D - kuvaus, vaikkakin<br />

DICOM:n nykyiset versiot periaatteessa tukevatkin sitä. Työtä<br />

tehdäänkin tällä hetkellä eritoten 3D-ultraääni objektien, MPEG:n ja<br />

moni osaisten kuvien tuen parantamiseksi. Myös datan turvallisuutta<br />

25.10.03 24/53


TTKK(PKY) Selvitys <strong>DICOM3</strong> tiedostoformaatista Versio 1.1<br />

yritetään parantaa kehittämällä tukea mm. Digitaalisille<br />

allekirjoituksille.<br />

Vaikka DICOM voikin turvallisin mielin katsella uudelle<br />

vuosituhannelle, riittää sille tulevaisuudessakin haasteita. Levitäkseen<br />

edelleen ja säilyttääkseen asemansa, sen tulee pystyä ennakoimaan<br />

tulevaisuuden tarpeet riittävän ajoissa ja myös vastaamaan niihin<br />

riittävän nopeasti. Tämä on vaikea tehtävä nykyisenä tietotekniikan<br />

"salamakehityksen" aikakautena. DICOM:lla on kuitenkin hallussaan<br />

samat valttikortit, jotka nostivat sen aikanaan yleiseen suosioon:<br />

avoimuus, joustavuus ja tarkkaan mietitty muutokset kestävä rakenne.<br />

Mikäli nämä asiat pidetään edelleen mielessä standardia uudistettaessa<br />

ja kehitettäessä, ei ole mitään epäselvyyttä siitä etteikö DICOM<br />

selviäsi voittajana tälläkin vuosituhannella.<br />

25.10.03 25/53


TTKK(PKY) Selvitys <strong>DICOM3</strong> tiedostoformaatista Versio 1.1<br />

3. <strong>DICOM3</strong> KUVA-TIEDOSTON RAKENNE JA OSAT<br />

3.1 DICOM-tiedosto - mutkikas palapeli<br />

DICOM on monessa suhteessa väljä standardi. Tämä pätee myös<br />

tiedosto formaattiin. Standardi ei sinänsä määrää tarkkaan tiedoston<br />

koostumusta, vaan tarjoaa kuvalle tarvittavat rakennuspalikat ja<br />

asettaa rajat sille, mitä palikoita kunkin tyyppisessä kuvassa voi olla.<br />

Itse asiassa DICOM kuvatiedosto ei ole sen kummallisempi otus, kuin<br />

kasa tälläisiä rakennuspalikoita (data-alkioita) tietyssä järjestyksessä.<br />

Data-alkiot puolestaan sisältävät tietoja kuvasta, kuvatusta potilaasta,<br />

sekä tietenkin varsinaisen kuvan pikselidatan. DICOM -tiedosto<br />

eroaakin normaaleista kuvista juuri siinä, että itse kuvatiedostossa on<br />

muutakin kuin pelkkiä pikseleitä. Toivon mukaan seuraava<br />

leikkimielinen vertaus selventää hiukan DICOM kuvan rakennetta :-).<br />

Ajatellaanpa DICOM tiedostoja vaikkapa palapeleinä, joita kootaan<br />

suuresta määrästä erityyppisiin palapeleihin sopivia palasia (dataalkiota).<br />

Kokoamisohje (DICOM standardi) määrittelee kaikki<br />

käytettävissä olevat palaset ja ryhmittelee sekä yksilöi ne.<br />

Kokoamisohje määrää myös tietyt pakolliset palaset, jotka kaikissa ja<br />

toisaalta tietyntyyppisissä palapeleissä on oltava. Lisäksi se määrää<br />

palasten järjestyksen. Sen sijaan se ei rajoita palapelin palasten<br />

kokonaismäärää tai sitä, mitä valinnaisia palasia kokooja haluaa<br />

palapelissään käyttää.<br />

Jos edellinen ajatusleikki meni "yli hilseen" ei vielä kannata tässä<br />

vaiheessa masentua ja heittää tätä selvitystä mappi-Ö:n. Vertauksen<br />

tarkoituksena oli lähinnä antaa lukijalle jonkinmoinen kokonaiskäsitys<br />

asiasta, joka auttaa pysymään selvillä siitä missä mennään, kun<br />

seuraavissa kappaleissa pureudutaan tiedoston rakenteen<br />

yksityiskohtiin.<br />

3.2 DICOM tiedoston perusosat ("palapelin" kehykset)<br />

Kaikista DICOM tiedostoista voidaan erottaa kaksi rakenteellista<br />

perusosaa: DICOM File Meta Information ja DICOM Data Set<br />

25.10.03 26/53


TTKK(PKY) Selvitys <strong>DICOM3</strong> tiedostoformaatista Versio 1.1<br />

Kuva 3.1 Dicom tiedoston perusosat [DICM/10]<br />

Tämä rakennemalli vastaa DICOM kommunikaatio mallissa käytettyä<br />

viestin rakennetta (ks. 2.5.7). Nyt vain "Command Set":n korvaa<br />

DICOM File Meta information. Kuten "Command Set":kin myös File<br />

Meta Information ryhmä sisältää Data Set:in lukemisessa tarvittavaa<br />

tietoa. Tällä tavalla DICOM ikään kuin kehystää tallennettavan datan<br />

liittämällä jokaiseen tiedostoon mukaan datapaketin siitä itsestään. On<br />

kuitenkin huomattava että "kehystäminen" ei tässä tapauksessa<br />

tarkoita tiedoston pituuden vakioittamista, vaan sekä "File Meta<br />

Information" että Data Set:n pituus (ja tietenkin tiedoston<br />

kokonaispituuskin) voi vaihdella kuten jatkossa tullaan huomaamaan.<br />

Seuraavissa kappaleissa on käyty läpi tarkemmin sekä Data Set että<br />

File Meta Information. Vaikka käsittely järjestys saattaa tuntua<br />

hieman takaperoiselta (Data Set:hän on DICOM tiedostossa vasta File<br />

Meta Information osan jälkeen ), se on perusteltavissa sillä, että File<br />

Meta Information osan ymmärtäminen ja käsittely ennen Data-Set:in<br />

käsittelyä olisi hankalampaa.<br />

3.3 DICOM Data Set ("palapelin" kuvapalikka ja sen tieto<br />

palaset)<br />

DICOM tiedoston varsinainen sisältö on tallennettu Data Set:iin<br />

Juuri Data Set sisältää tiedot potilaasta, kuvauslaitteistosta,<br />

kuvatyypistä jne. Data Set sisältää myös itse kuvan pikselit yhtenä<br />

data-alkiona (Pixel Data).<br />

3.3.1 Data-alkiot ("palapelin" palaset) Data Set:in ja DICOM<br />

tiedoston perustana<br />

Data Set koostuu data-alkioista ("palapelin" palaset) (data elements).<br />

Data-alkion koostumusta on selvitetty seuraavassa kuvassa.<br />

25.10.03 27/53


TTKK(PKY) Selvitys <strong>DICOM3</strong> tiedostoformaatista Versio 1.1<br />

Kuva 3.2 Data Set,Data-alkio (Data Element) ja sen kentät[DICM/5]<br />

Data-alkiot rakentuvat osasista joita kutsutaan kentiksi(fields).<br />

Seuraavissa kappaleissa on käsitelty kukin kentistä lyhyesti.<br />

Tarkempia tietoja data-alkion kenttien sisällöstä ja eri rakenne<br />

vaihtoehdoista löytyy DICOM-standardin osasta 5 [DICM/5] (7.1.1).<br />

3.3.1.1 Data-alkion kentät<br />

3.3.1.1.1 Tagi (Tag) –kenttä<br />

Kaikilla data-alkioilla (ja informaatio-objektin atribuuteilla) on oltava<br />

yksilöllinen tunnistekenttä eli Tagi (Tag). Tagi on järjestetty pari 16<br />

bittisiä etumerkittömiä (ei negatiivisia) lukuja. Tagin ensimmäistä<br />

numeroa sanotaan ryhmänumeroksi (Group Number) ja toista osaa<br />

alkionumeroksi (Element Number).<br />

Esim. data-alkion "Patient name" Tagi on (heksalukuna) (0010,0010).<br />

DICOM tiedostoissa ei siis ole data-alkion yhteydessä alkion nimeä<br />

vaan ainoastaan (binääri muotoinen) tagi, josta tiedostoa käsittelevät<br />

ohjelmat tietävät mitä alkiota ne juuri ovat lukemassa.<br />

Koska data-alkioita on paljon on luonnollista järjestellä niitä<br />

tiedostossa jollain järkevällä tavalla. Helpoimman tavan<br />

järjestämiseen tarjoaa juuri Tagi. Tagin ryhmänumero jakaa dataalkiot<br />

ensin ryhmiin. Ensimmäisenä tiedostossa tulevat ryhmät joiden<br />

Tagin ryhmänumero on pienin. Esim 0008 ryhmänumeron omaavat<br />

data-alkiot tulevat ennen 0010 ryhmää jne. Alkionumero taas määrää<br />

järjestyksen ryhmän sisällä. Näin esimerkiksin Tagin (0008 , 0060)<br />

(Modality) omaava data-alkio on tiedostossa ennen data-alkiota<br />

(Manufacturer) jonka Tagi on (0008, 0070)<br />

3.3.1.1.2 Value Representation -kenttä<br />

Value Representation on 2 tavua pitkän merkkijonon sisältävä kenttä<br />

,joka kertoo minkätyyppistä dataa data-alkion arvokenttä (value field)<br />

25.10.03 28/53


TTKK(PKY) Selvitys <strong>DICOM3</strong> tiedostoformaatista Versio 1.1<br />

sisältää. Tiedoston ”Transfer Syntax” ominaisuus (käsitelty myöhemmin)<br />

määrää onko data-alkiossa Value Representation kenttää vai ei.<br />

3.3.1.1.3 Value Length -kenttä<br />

Value Length -kenttä (16 tai 32 bit) määrittää arvokentän pituuden<br />

tavuina tai jos arvokentän pituus on määrittelemätön, se sisältää luvun<br />

FFFFFFFF.<br />

3.3.1.1.4 Arvokenttä eli Value Field<br />

Arvokenttä sisältää varsinaisen data-alkion arvon. Pääosin tiedoston<br />

"Transfer syntax" -ominaisuudesta riippuu se, miten arvokentän<br />

binääridata on koodattu. Arvokenttä sisältää kuitenkin aina parillisen<br />

määrän tavuja ja tästä syystä saatetaan arvokentän loppuun toisinaan<br />

joutua liittämään ylimääräisiä bittejä.<br />

3.3.1.2 Data-alkion yleinen rakenne ja VR eli Value Representation<br />

Edellä oli puhetta data-alkion kenttärakenteesta. Samassa yhteydessä<br />

esiteltiin jo Value Representation- eli VR-kenttä, joka tavallaan<br />

ilmaisi data-alkion arvokentän rakenteen. VR:llä on kuitenkin<br />

DICOM:n data-alkioiden tulkinnan kannalta paljon VR-kenttää<br />

laajempikin merkitys. Se määrää tavallaan koko data-alkion<br />

rakenteen. Ts. data-alkion rakenne riippuu siitä, minkätyyppinen VR<br />

siinä on käytössä. VR-ää on periaatteessa kahta tyyppiä<br />

Eksplisiittinen VR (Explicit VR) ja Implisiittinen VR (Implicit VR).<br />

Seuraavissa suoraan DICOM:sta lainatuissa taulukoissa on esitetty<br />

data-alkion rakenteen erot eri VR:lle [DICM/5](Tables 7.1-1 – 7.1-3)<br />

25.10.03 29/53


TTKK(PKY) Selvitys <strong>DICOM3</strong> tiedostoformaatista Versio 1.1<br />

Kuva 3.3 Data-alkion rakenne eksplisiittisen VR:n yhteydessä (DICOM tables 7.1-1<br />

ja 7.1-2 [DICM/5])<br />

Kuva 3.4 Data-alkion rakenne implisiittisen VR:n yhteydessä (DICOM table 7.1-3)<br />

3.3.2 Data Setin data-alkiot jaotellaan ominaisuusryhmiin<br />

Kukin data-alkio liittyy aina johonkin DICOM:n määrittelemään<br />

"informaatio-objektiin". Esim. edellä esimerkkinä mainittu "Patient<br />

name" alkio liittyy "Patient" infromaatio-objektiin. Informaatioobjekti<br />

on standardin määrittelemä kuvaustapahtumaan ja<br />

informaation kulkuun jollain tavalla vaikuttava osatekijä.<br />

25.10.03 30/53


TTKK(PKY) Selvitys <strong>DICOM3</strong> tiedostoformaatista Versio 1.1<br />

DICOM standardin 3:s osassa [DICM/3] määritellään useimmat<br />

informaatio-objektit ja niihin liittyvät data-alkiot. Yksittäiset<br />

informaatio-objektitkin ovat kuitenkin vielä melkoisen laajoja.<br />

Esimerkiksi "Patient" informaatio-objektiin liittyy satoja data-alkioita.<br />

Tästä johtuen on aivan selvää että data-alkioiden sujuvaa määrittelyä<br />

varten informaatio-objektitkin on pilkottava pienemmiksi<br />

kokonaisuuksi. Tällä tavoin saatuja ryhmiä kutsutaan DICOM:ssa<br />

nimellä "Information Object Module" eli lyhyesti suomennettuna<br />

ominaisuusryhmiksi<br />

Ominaisuusryhmän jäseniä taas kutsutaan virallisesti ko.<br />

informaatio-objektin attribuuteiksi. Nyt lukija saattaa ihmetellä,<br />

miten data-alkiosta tulikin yht äkkiä ominaisuusryhmän attribuutti?<br />

Itse asiassa nämä DICOM:n ominaisuusryhmiensä yhteydessä<br />

määrittelemät attribuutit ovat juuri niitä tutun "tiedosto palapelimme"<br />

palikoita data-alkioita, mutta niille vain ei ole vielä annettu arvoja.<br />

DICOM standardi ei siis määrittele [DICM/3] tarkasti ottaen dataalkioita,<br />

vaan "Informaatio - objekteja" ja niiden attribuutteja, joita<br />

tiedostossa ollessaan kutsutaan data-alkioiksi, kun niillä on joku arvo.<br />

Tässä selvityksessä puhun kuitenkin tuttavallisesti aina data-alkioista<br />

(silloinkin kun kyseessä virallisesti olisi informaatio objektin<br />

attribuutti) lukijalle muutoinkin varmasti käsittämätöntä termisekasotkua<br />

helpottaakseni.<br />

Seuraavissa kappaleissa on käyty läpi muutamia tärkeimpiä "DICOM<br />

Data Set:in" ominaisuusryhmiä ja niiden data-alkioiden määritelmiä.<br />

Koska data-alkioita ja ominaisuusryhmiä on paljon!!!, ei tässä ole<br />

mitään mieltä lähteä käsittelemään niitä kaikkia. Tavoitteena on<br />

lähinnä antaa lukijalle kuva siitä, mitä kaikkea DICOM -tiedosto voi<br />

sisältää. Jos asia ei Sinua kiinnosta, voit huoletta hypätä kappaleeseen<br />

3.4. Toisaalta lisää luetteloja informaatio-objekteista ja vastaavien<br />

data-alkioiden määritelmistä on saatavissa n. 300 sivun verran<br />

DICOM standardin osasta 3 [DICM/3] (Suosittelen erityisesti<br />

unettomuudesta kärsiville :-) )<br />

3.3.2.1 Kuvan ominaisuuksiin liittyvät data-alkiot<br />

Kuvan ominaisuuksiin liittyvät data-alkiot ovat tiedoston<br />

muuntamisen kannalta tärkeitä koska tätä kautta päästään käsiksi<br />

kuvan kokoon, kuvatiedostossa olevien "yksittäisten kuvien määrään"<br />

sekä kuvan väritykseen. Monet DICOM-tiedostoja muuntavat ja<br />

käsittelevät ohjelmat lukevatkin vain tämän osion tietoja kuvan koosta<br />

ja bittien määrästä, koska muilla ei juurikaan ole merkitystä<br />

muunnosprosessin kannalta [Chris]. Seuraavissa on kappaleissa<br />

taulukoituna muutamia tärkeimpiä ominaisuusryhmiä ja niihin<br />

liittyviä data-alkoita.<br />

25.10.03 31/53


TTKK(PKY) Selvitys <strong>DICOM3</strong> tiedostoformaatista Versio 1.1<br />

3.3.2.1.1 "General Image Module “<br />

Atribuutin<br />

(data-alkion)<br />

nimi:<br />

Tagi:<br />

(tunniste)<br />

Esim. arvo Atribuutin kuvaus:<br />

Instance Number 0020,0013 --- Numero joka yksilöi kuvan<br />

Patient<br />

Orientation<br />

0020,0020<br />

---<br />

Potilaan "asento" suhteessa kuvan<br />

tasoon. Asentoa kuvataan<br />

kahdella arvolla jotka kuvaavat<br />

anatomista suuntaa. ( Positiivinen<br />

Vaaka-akseli (vasemmalta<br />

oikealle) ja Positiivinen<br />

Pystyakseli (ylhäältä alas)).<br />

(Ks.[DICM/3](C.7.6.1.1.1))<br />

(pakollinen jos varsinaisen kuva-<br />

tyypin data-alkioissa ei vastaavaa)<br />

Image Date 0008,0023 --- Päivämäärä jolloin kuvadatan<br />

generointi alkoi. (pakollinen<br />

ajallisisti sarjassa peräkkäin<br />

olevissa kuvissa)<br />

Image Time 0008,0033 --- Aika jolloin kuvadatan generointi<br />

Image Type<br />

0008,0008<br />

---<br />

alkoi. (ks. Image Date)<br />

data-alkio joka yksilöi tärkeitä<br />

kuvan tunnistamista auttavia<br />

piirteitä.<br />

(ks. [DICM/3](C.7.6.1.1.2))<br />

kertoo onko kuva pakattu<br />

25.10.03 32/53


TTKK(PKY) Selvitys <strong>DICOM3</strong> tiedostoformaatista Versio 1.1<br />

Lossy Image<br />

Compression<br />

Lossy Image<br />

Compression<br />

Ratio<br />

0028,2110 --- hävittävällä pakkausalgoritmilla.<br />

0028,2112<br />

---<br />

Mahdolliset arvot:<br />

00 = kuvaa ei pakattu hävittävällä<br />

pakkausalgoritmilla.<br />

01 = kuva on pakkattu<br />

hävittävällä<br />

pakkausalgoritmilla.<br />

Kertoo (hävittävällä<br />

pakkausalgoritmilla pakatun)<br />

kuvan arvioidu pakkaussuhteen.<br />

Taulukko 3.1 "General Image Module "ominaisuusryhmän tärkeimmät data-alkiot.<br />

[DICM/3](table C.7-7)<br />

3.3.2.1.2 "Image Pixel module "<br />

Atribuutin nimi:<br />

(DICOM 3 standardissa)<br />

Samples per Pixel<br />

Photometric<br />

Interpretation<br />

Tagi:<br />

(tunniste)<br />

0028,0002<br />

0028,0004 MONOCHR<br />

Esim. arvo Atribuutin kuvaus:<br />

1<br />

OME2.<br />

Erillisten tasojen lukumäärä<br />

kuvassa. Standardissa määriteltyjä<br />

arvoja ovat 1, 3 tai 4 tasoa.<br />

Mustavalkoisissa (harmaasävy)<br />

kuvissa tasojen lukumäärä on<br />

yleensä 1. RGB kuvissa 3.<br />

Määrittelee pikselin tulkintatavan.<br />

Rows 0028,0010 109 Kuvassa olevien (vaaka)rivien<br />

lukumäärä.<br />

Columns 0028,0011 91 Kuvassa olevien sarakkeiden<br />

(pystyrivien) lukumäärä.<br />

25.10.03 33/53


TTKK(PKY) Selvitys <strong>DICOM3</strong> tiedostoformaatista Versio 1.1<br />

Bits Allocated 0028,0100 8 Varattujen bittien lukumäärä<br />

(tasoa) näytettä (sample) kohti<br />

(yleensä Bits Allocated = Bits<br />

Strored)<br />

Bits Stored 0028,0101 8 Käytettyjen bittien lukumäärä<br />

tasoa (näytettä) (sample) kohti<br />

High Bit 0028,0101 7 Eniten merkitsevä bitti pikseli<br />

Pixel<br />

Representation<br />

Pixel Data 7FE0,0010 ----<br />

datassa<br />

0028,0103 0 Pikseli näytteiden (tasojen)<br />

(19838 bytes)<br />

kuvaama data. Jokaista näytettä<br />

vastaa sama kuvaus.<br />

Mahd. Arvot:<br />

0000H=etumerkitön kokonaisluku<br />

0001H=kakkosen komplementti<br />

Varsinainen kuvadata<br />

Taulukko 3.2 " Image Pixel module " ominaisuusryhmän tärkeimmät data-alkiot.<br />

[DICM/3](table C.7.9)<br />

3.3.2.1.3 "Multi-Frame Module "<br />

Atribuutin nimi:<br />

(DICOM 3 standardissa)<br />

Number of Frames<br />

Tagi: (tunniste) Esim. arvo Atribuutin kuvaus:<br />

0028,0008<br />

2<br />

Ilmaisee kuvatiedostoon<br />

sisältyvien "erillisten<br />

kuvien" lukumäärän.<br />

Taulukko 3.3 " Multi-Frame Module" ominaisuusryhmän tärkeimmät data-alkiot.<br />

[DICM/3](table C.7-12)<br />

25.10.03 34/53


TTKK(PKY) Selvitys <strong>DICOM3</strong> tiedostoformaatista Versio 1.1<br />

3.3.2.1.4 "Image plane module "<br />

Atribuutin nimi:<br />

(DICOM 3 standardissa)<br />

Pixel Spacing<br />

Tagi: (tunniste) Esim. arvo Atribuutin kuvaus:<br />

0028,0030<br />

2.00\2.00<br />

Fyysinen etäisyys potilaassa<br />

/mm vastataten kahden<br />

pixelin välistä etäisyyttä /mm<br />

Slice Thickness 0018,0050 2.00 Nimellinen "siivun" paksuus<br />

/mm<br />

Taulukko 3.4 " Image plane module " ominaisuusryhmän tärkeimmät data-alkiot.<br />

[DICM/3](table C.7-8)<br />

3.3.2.2 Potilastietoihin liittyvät ominaisuusryhmät<br />

Kuten aiemmin jo todettiin DICOM-tiedosto sisältää varsinaisen<br />

kuvadatan ja sen ominaisuus tietojen lisäksi informaatiota myös<br />

potilaasta. Nämä tiedot eivät ole tärkeitä itse DICOM-muunnos<br />

prosessin kannalta, mutta niillä oma keskeinen merkityksensä potilaan<br />

tietosuojan ja yksilöimisen kannalta. Siksi tässä käsitellään lyhyesti<br />

tärkeimmät potilastietoihin liittyvät ominaisuusryhmät, jotka on<br />

sisällytetty <strong>DICOM3</strong> tiedosto formaattiin.<br />

3.3.2.2.1 "Patient identification module "<br />

Atribuutin nimi:<br />

(DICOM 3 standardissa)<br />

Patient's Name<br />

Tästä ominaisuusryhmästä (0010, osittain) löytyy potilaan<br />

tunnistetiedot. "Patient identification modulin" data-alkioita ovat mm.<br />

potilaan nimi, henkilötunnus jne. Ko. kentän data-alkiot on listattu<br />

seuraavassa taulukossa:<br />

Tagi: (tunniste) Esim. arvo Atribuutin kuvaus:<br />

0010,0010<br />

----<br />

Kuvatun potilaan nimi.<br />

Patient's ID 0010,0020 --- Ensisijainen potilaan<br />

25.10.03 35/53


TTKK(PKY) Selvitys <strong>DICOM3</strong> tiedostoformaatista Versio 1.1<br />

tunnistenumero (esim. Henk.<br />

tunnus)<br />

Taulukko 3.5 "Patient identification module " ominaisuusryhmän tärkeimmät dataalkiot.<br />

[DICM/3](table C.2-2)<br />

3.3.2.2.2 "Patient Demographic Module "<br />

Tämän ominaisuusryhmän data-alkiot sisältävät tiedot potilaan iästä,<br />

siviilisäädystä , syntymäajasta, painosta jne.<br />

Tarkemmat tiedot tämän ryhmän data-alkioista löytyy taulukosta C.2-<br />

3 DICOM -standardin osasta 3 [DICM/3] (table C.2-3)<br />

3.3.2.2.3 "Patient Medical Module "<br />

Tästä ominaisuusryhmästä löytyy tietoa potilaan sairauksista,<br />

allergioista, lääkityksestä jne.<br />

Tarkemmat tiedot tämän ryhmän data-alkioista löytyy taulukosta C.2-<br />

4 DICOM -standardin osasta 3 [DICM/3] (table C.2-4)<br />

3.3.2.3 Kuvaustavasta<br />

ilmaiseminen<br />

riippuvat data-alkiot ja kuvaustavan<br />

Edellä on käsitelty tärkeimpiä DICOM-muotoiseen tiedostoon<br />

mahdollisesti upotettuja tietoja ominaisuusryhmittäin. Kyseiset<br />

ominaisuusryhmät ovat löydettävissä miltei kaikentyyppisissä<br />

<strong>DICOM3</strong> tiedostoista. DICOM muotoisissa kuvissa on kuitenkin vielä<br />

paljon muutakin tärkeää tietoa, riippuen siitä minkä tyyppinen kuva<br />

on kyseessä.<br />

3.3.2.3.1 Imaging modality (0008,0060)<br />

Imaging modality data-alkio (Tag: 0008,0060) on keskeinen DICOM<br />

tiedoston rakenteen kannalta, sillä siitä riippuu minkä tyyppisiä tietoja<br />

standardi kuvalta edellyttää Standardin osassa 3 kappaleessa<br />

C.7.3.1.1.1 [DICM/3] (C.7.3.1.1.1) on listattu Imaging modality:n<br />

kaikki mahdolliset arvot. Seuraavassa taulukossa muutamia<br />

tärkeimpiä. Sivunumerot viittaavat DICOM-standardin sähköiseen<br />

versioon osaan 3 [DICM/3] joka on pdf-muodossa tämän dokumentin<br />

liitteenä.<br />

HUOM. Ensimmäiset sivunumerot viittaavat sivun ylälaidassa ja<br />

sisällysluettelossa oleviin sivunumeroihin, jälkimmäiset taas pdftiedoston<br />

sivunumeroihin<br />

25.10.03 36/53


TTKK(PKY) Selvitys <strong>DICOM3</strong> tiedostoformaatista Versio 1.1<br />

Arvo ja sen selite sivut ja viitteet: [DICM/3]<br />

CT = Computed Tomography Table C.8-3<br />

CT IMAGE MODULE<br />

MR = Magnetic Resonance<br />

ATTRIBUTES (s. 181 - 183)(196<br />

- 198)<br />

Table C.8-4<br />

MR IMAGE MODULE<br />

NM = Nuclear Medicine<br />

ATTRIBUTES (s. 184 - 188)<br />

(199 - 203)<br />

Table C.8-9<br />

NM IMAGE MODULE<br />

ATTRIBUTES (s.189-214)(204 -<br />

229)<br />

RTIMAGE = Radiotherapy Image Table C.8-34—RT IMAGE<br />

US=Ultrasound<br />

MODULE ATTRIBUTES (s.259 -<br />

266) (274 - 281)<br />

Table C.8-18<br />

US IMAGE MODULE<br />

ATTRIBUTES<br />

(s.215 -235) (230 - 250)<br />

Taulukko 3.6 Joitakin Imaging Modality:n sallittuja arvoja sekä viitteet standardin<br />

kohtiin josta löytyy selvitys minkätyyppiset data-alkiot mahdollisia<br />

3.4 DICOM File Meta Information ("palapelin" purkamis ohjeet)<br />

DICOM -standardi määrittelee kaikille standardin mukaisille<br />

tiedostoille ainakin yhden yhteisen ja pakollisen osan: DICOM File<br />

Meta Information. Myös File Meta Information koostuu<br />

samantyyppisistä data-alkioista kuin Data Set- osakin. Erona on<br />

ainoastaan että File Meta Information -ryhmän data-alkiot eivät<br />

sisälläkkään tietoa kuvasta, vaan itse tiedostosta ja siitä miten<br />

tiedoston Data Set osaa pitäisi lukea. Tätä tietoa tarvitaan tiedoston<br />

Data-Set:n tulkitsemisessa. File Meta Information -ryhmällä on myös<br />

tärkeä merkitys tiedoston muodon varmentamisessa. Seuraavassa<br />

25.10.03 37/53


TTKK(PKY) Selvitys <strong>DICOM3</strong> tiedostoformaatista Versio 1.1<br />

Atribuutin(data-<br />

alkion) nimi:<br />

(DICOM 3 standardissa)<br />

File Preamble<br />

Dicom Prefix<br />

Group Length<br />

File Meta<br />

Information<br />

Version<br />

Transfer Syntax<br />

taulukossa on listattu tyypillisimpiä (kaikkiaan 12:sta mahdollisesta)<br />

File Meta Information -ryhmän data-alkiosta ja niiden kuvauksia.<br />

Lisäksi kutakin data-alkiota vastaten on listattu sen tunniste eli Tagi<br />

(jos sellainen on ) ja myös joku yleinen esim. arvo.<br />

Tagi:<br />

(tunniste)<br />

---<br />

---<br />

0002,0000<br />

0002,0001<br />

0002,0010<br />

Esim. arvo Atribuutin kuvaus:<br />

(00H)<br />

"DICM"<br />

132<br />

256<br />

1.2.840.<br />

Kuvaus tiedoston erityisestä<br />

käyttötavasta. Ei yleensä käytössä<br />

DICOM -tiedostoissa (silti<br />

pakollinen). Jos osaa ei käytetä<br />

kaikki tavut pitäisi asettaa arvoon<br />

00H. (pituus kiinteä 128 tavua)<br />

Tunniste DICOM tiedoston<br />

tunnistamista varten. Jos tiedosto<br />

on DICOM tiedosto tunniste<br />

sisältää merkkijonon: "DICM"<br />

(pakollinen kaikissa <strong>DICOM3</strong> -<br />

Standardin mukaisissa tiedostoissa)<br />

(pituus kiinteä 4 tavua)<br />

Ilmaisee ryhmään "File Meta<br />

information" kuuluvien tavujen<br />

lukumäärän itsensä jälkeen<br />

2 tavua pitkä kenttä, joka ilmaisee<br />

ko. DICOM -tiedoston (File Meta<br />

Information osan ) version<br />

Määrittelee DICOM-tiedoston data<br />

25.10.03 38/53


TTKK(PKY) Selvitys <strong>DICOM3</strong> tiedostoformaatista Versio 1.1<br />

UID 10008.1.2.1. osion koodaus "syntaksin"<br />

(mahdolliset arvot listattu<br />

seuraavassa kuvassa). (Oletus<br />

syntaksina on implisiittinen VR<br />

Little Endian) Syntaksilla on suora<br />

vaikutus siihen, miten kuvan<br />

Pikselidataa käsitellään.Yleisimmät<br />

syntaksit on listattu alapuolella.<br />

Taulukko 3.7 "DICOM File Meta Information " ryhmän tärkeimmät data-alkiot.<br />

(kaikkiaan 12:sta mahdollisesta) [DICM/10](table 7.1-1)<br />

3.5 Data-alkioiden koodaus ja pakkaus<br />

Kun DICOM tiedoston osaset "palapelin" palat on vihdoin saatu<br />

käsiteltyä, on aika kurkistaa hieman palan (data-alkion) varsinaiseen<br />

sisältöön eli arvoon. Jotta tämä arvo olisi ilmaistavissa<br />

yksikäsitteisesti se täytyy koodata jollain tavalla. Binääri datan<br />

koodaukseen on yleisesti ottaen olemassa kaksi tavallista vaihtoehtoa:<br />

Big Endian ja Little Endian.<br />

3.5.1 Big Endian ja Little Endian (Tavujen järjestely Datan<br />

koodauksessa)<br />

Little Endian (Tavallisin <strong>DICOM3</strong>:ssa) koodauksessa useamman<br />

tavun kokonaisluvut (16bit ,32bit,...) koodataan niin, että vähiten<br />

merkitsevä (least significant) tavu koodataan ensin ja sitten<br />

merkisevyysjärjestyksessä seuraava jne. (merkitsevyys lisääntyy<br />

loppua kohti)<br />

Merkkijoissa (jotka sisältävät Useita 8 bit. yksittäisiä tavuja) taas<br />

kirjaimet koodataan esiintymisjärjestyksessä (vasemmalta oikealle)<br />

Big Endian koodauksessa useamman tavun kokonaisluvuissa<br />

koodataan eniten merkitsevä tavu ensin ja sitten<br />

merkitsevyysjärjestyksessä seuraava jne. (merkitsevyys vähenee<br />

loppua kohti). Merkkijonoissa noudatetaan samaa koodaustapaa kuin<br />

Little Endian koodauksessa.<br />

25.10.03 39/53


TTKK(PKY) Selvitys <strong>DICOM3</strong> tiedostoformaatista Versio 1.1<br />

3.5.2 DICOM-tiedoston syntaksi<br />

Mm. se kumpaa tavukoodausta (Little Endian vai Big Endian)<br />

DICOM-tiedostossa käytetään selviää tiedoston "syntaksista". Käytän<br />

tässä lainausmerkkejä sanan syntaksi ympärillä koska termi on<br />

virallisesti "transfer syntax" eli sananmukaisesti "lauseoppi siirrosta"<br />

:-) . Kyseessä on kuitenkin oikeastaan DICOM -tiedoston dataalkioiden<br />

"koodaustapa" joka ilmaisee miten tiedoston dataa tulisi<br />

tulkita. Yleisimmät DICOM:n tukemat syntaksit on listattu alla<br />

olevassa kuvassa.<br />

Kuva 3.5 DICOM "transfer syntaxes"[Barre] Pakattuun DICOM -formaattiin<br />

liittyvät syntaksit on ilmaistu kuvakkeella .<br />

25.10.03 40/53


TTKK(PKY) Selvitys <strong>DICOM3</strong> tiedostoformaatista Versio 1.1<br />

3.5.3 Pikselidata<br />

Syntaksi ilmoitetaan tiedoston ryhmän " DICOM File Meta<br />

Information " "transfer syntax UID" data-alkiolla. Käytännössä siis<br />

data-alkio (0002,0010) määrää tiedoston tulkinnassa käytettävän<br />

syntaksin.<br />

DICOM -tiedostossa varsinaisen koodatun kuvadatan välitykseen<br />

käytetään Pixel Data Element (7FE0,0010) -data-alkiota (ts. kuvan<br />

pikselidata on alkiossa (7FE0,0010)).<br />

Pikselidata (Pixel Data) koostuu pikselialkioista tai pikselisoluista<br />

(Pixel Cell), joista kukin sisältää yksittäisen pikselin näytearvon.<br />

Image Pixel module –ominaisuusryhmän data-alkiot Bits Allocated,<br />

Bits Strored ja High Bit antavat pikselisolujen tulkintaan tarvittavat<br />

perustiedot. Bits Allocated (0028, 0100) ilmaisee varatut bitit , Bits<br />

Strored (Tag: 0028, 0101) käytetyt bitit ja High Bit (0028,) eniten<br />

merkitsevän bitin (Most Significant Bit).<br />

Pikselidata voi riippuen tiedoston syntaksista (Transfer syntax UID)<br />

olla joko pakattussa (Encapsulated format) tai pakkaamattomassa<br />

muodossa (Native Format)<br />

3.5.3.1 Pakkaamaton pikselidatan koodaus (Native)<br />

Pakkaamattoman pikselidatan VR:nä (Value Reprentation) käytetään<br />

yleensä yleensä OW:tä (ks. kuva 3.3). OB:tä voidaan käyttää<br />

ainoastaan kun data-alkion Bits allocated arvo on pienempi tai<br />

yhtäsuuri kuin 8, mutta silloinkin vain explisiittisen VR:n yhteydessä.<br />

Pikselisolut koodataan yksinkertaisesti liittämällä kunkin solun bitit<br />

yhteen siten, että seuraavan solun merkitsevin bitti seuraa aina<br />

edellisen solun vähiten merkitsevintä bittiä. (ks [DICM/5](8.2))<br />

3.5.3.2 Pakatun pikselidatan koodaus (Encapsulated)<br />

Pakatun pikselidatan yhteydessä käytetään VR:nä aina OB:tä.<br />

Pakkauksen yhteydessä käytettävät koodaustavat on määritelty<br />

DICOM standardin osassa 5 [DICM/5](Annex A). Pakkaus<br />

algoritmina voidaan käyttää joko JPEG:iä (ks. [DICM/5](8.2.1)) tai<br />

RLE :tä (Run Length Encoding Compression) (Ks. [DICM/5] (8.2.2)).<br />

25.10.03 41/53


TTKK(PKY) Selvitys <strong>DICOM3</strong> tiedostoformaatista Versio 1.1<br />

3.6 Esimerkki<br />

Päätämme tutkimusmatkamme DICOM -tiedosto palapelin<br />

ihmeelliseen maailmaan toivottavasti havainnolliseen esimerkkiin.<br />

Tarkastelun kohteena on tavallinen kaksiosainen MR-kuva.<br />

Kuva 3.6 DICOM- muotoinen kaksiosainen MR-kuva ja sen data-alkiot<br />

järjestyksessä, sellaisina kuin monet DICOM –muunnosohjelmat ne<br />

näyttävät [Chris]. Potilaasta kertovat data-alkiot (0010,xxxx) on<br />

jätetty yksilösuojan säilyttämiseksi pois. Huomaa että tavumäärät<br />

(794 bytes ja 19838 bytes) liittyvät vain ja ainoastaan esimerkki<br />

kuvaan.<br />

Käydään vielä läpi yo. kuvan sisältö. Aivan ensimmäiseksi on<br />

kuitenkin syytä todeta, että kuvassa 3.5 esitettäviä data-alkioiden<br />

nimiä ei todellisessa DICOM- tiedostossa tietenkään ole. Lisäksi<br />

kaikki data on luonnollisesti binääri-muodossa.<br />

Seuraavassa taulukossa on käyty läpi esimerkki kuvan kukin dataalkio<br />

ja se mitä ko. alkio kuvastamme kertoo.<br />

Data-alkion<br />

Tagi<br />

Mitä ko. alkio kertoo kuvasta<br />

25.10.03 42/53


TTKK(PKY) Selvitys <strong>DICOM3</strong> tiedostoformaatista Versio 1.1<br />

---- (ens. 128 bytes) ----<br />

(Ensimmäiset 128 tavua ovat useimmiten DICOM<br />

tiedostoissa käyttämättä ja ne voidaan hypätä yli)<br />

----(4 bytes<br />

merkkijono ’DICM’)<br />

Kertoo kuvatiedostomme olevan DICOM muotoa<br />

0002,0000 Kertoo ”File Meta information ” ryhmän pituuden<br />

olevan 132 tavua (lukuunottamatta tagitonta<br />

alkuosaa ja itseään)<br />

0002,0001 Kertoo tiedoston File Meta Information ryhmän<br />

versionumeron olevan 256<br />

0002,0010 Kertoo data-alkioiden koodaustavan olevan<br />

DICOM:n oletus syntaksi eli Implisiittinen VR,<br />

Little Endian.<br />

0008,0000 Kertoo 0008 ryhmän pituuden 152 tavua<br />

0008,0060 Kertoo kuvan olevan MR-kuva<br />

0008,0070 Kertoo että kuvan luoneen sovelluksen tai<br />

kuvauslaitteen valmistajana on toiminut MRIcro<br />

0018,0000 Kertoo 0018 ryhmän pituuden olevan 28 tavua<br />

0018,0050 Kertoo yhden ”kuvasiivun” paksuuden olleen 2 mm<br />

0018,1020 Kertoo kuvan luoneen softan versio tiedot<br />

0028,0000 Kertoo 0028 ryhmän pituuden olevan 148 tavua<br />

0028,0002 Kertoo näytteitä otetun 1/pikseli<br />

0028,0004 Väritys = harmaasävyt<br />

0028,0008 Kuva on 2 osainen (sis. erillisiä kuvia 2kpl)<br />

0028,0010 Kuvadatassa on 109 riviä<br />

0028, 0011 Kuvadatassa 91 saraketta<br />

0028,0030 Kuvan suurennus = 1:1 (ei tietenkään päde tälle<br />

pienennetylle versiolle ko. kuvasta)<br />

0028,0100 Varattujen bittien lukum /pikselisolu = 8 (1 tavu)<br />

0028,0101 Käytettyjen bittien lukum/pikselisolu = 8 (1 tavu)<br />

0028,0102 Eniten merkitsevä bitti = 7.<br />

0028,0103 Pikseleitä kuvaava binääridata unsigned integer<br />

tyyppiä<br />

0028,1052 (Rescale Intercept) b=0.00 tallennetun arvon(SV) ja<br />

Hounsfield(HU) suhteessa. HU =m*SV+b<br />

0028,1053 (Rescale Slope) m = 0,00392157 tallennetun<br />

arvon(SV) ja Hounsfield(HU) suhteessa. HU<br />

=m*SV+b<br />

7FE0,0000 Pikseli dataryhmän 7FE0 pituus 19850 tavua<br />

7FE0,0010 Sisältää varsinaisen kuvan eli pikseli datan<br />

Taulukko 3.8 Esimerkki kuvan analysointi<br />

25.10.03 43/53


TTKK(PKY) Selvitys <strong>DICOM3</strong> tiedostoformaatista Versio 1.1<br />

4. SELVITYS <strong>DICOM3</strong> -TIEDOSTON MUUNNOKSESTA<br />

DICOM- tiedoston muuntaminen on sinänsä yksinkertainen asia.<br />

Saatavana on valmiita ratkaisuja jopa selainpohjaisillekin<br />

tiedostomuuntimille tai DICOM-tiedostojen katseluohjelmille.<br />

Joitakin ongelmia muuntamiseen kuitenkin liittyy kuten pakatut<br />

tiedostoformaatit jne. DICOM-standardin vapaus, joka toisaalta on<br />

luonut edellytykset tiedostomuodon laajalle leviämiselle, tuo<br />

mukanaan myös omat haasteensa muunnosprosessille.<br />

4.1 Olemassa olevat DICOM katselu- ja muunnosohjelmat<br />

4.1.1 ImageJ<br />

DICOM -tiedostojen muuntamiseen ja katseluun on olemassa useita<br />

joko ilmaisia tai shareware -periaatteella jaeltavia apuohjelmia.<br />

Testasin kaikkiaan noin kymmenkunta tälläistä ohjelmaa. Seuraavassa<br />

on listattuna joitakin huomioita ja kokemuksia muutamasta mielestäni<br />

hyvästä ohjelmasta.<br />

Huom: Useimmat tässä mainitut ohjelmat ovat kaikkine lisätietoineen<br />

jne. tämän dokumentin sähköisessä liitearkistossa<br />

ImageJ on Java pohjainen ilmaisohjelma DICOM- ja muidenkin<br />

kuvaformaattien katseluun. Ohjelma pystyy lukemaan normaaleita<br />

pakkaamattomia DICOM-tiedostoja. ImageJ:llä pystyy suorittamaan<br />

myös pieniä kuvankäsittely operaatioita ja tallentamaan kuvia gif, tiff,<br />

jpeg ym. tiedostomuodoissa. Mainittakoon että Jpeg muunnoksessa<br />

muunnoksen laatu on asetettavissa. Jpeg muunnos ei kuitenkaan<br />

onnistu 16 tai 32 bit harmaasävy kuville (tosin muunnos tällöinkin on<br />

mahdollinen muuttamalla kuvan moodiksi ensin 8bit, jolloin laatu<br />

tietenkin hiukan kärsii). Myös lähdekoodi ja useita Plugin<br />

komponentteja on saatavilla.<br />

Lisätietoja ja ohjelmaa vastaava appletti testattavissa Web-sivulla:<br />

http://rsb.info.nih.gov/ij/<br />

4.1.2 eViewBox ja JDicomViewer<br />

eViewBox on java-pohjainen ilmaisohjelma jolla voi katsella<br />

useitakin DICOM-kuvia kerralla jopa URL: osoitteen kautta. Kuvat<br />

25.10.03 44/53


TTKK(PKY) Selvitys <strong>DICOM3</strong> tiedostoformaatista Versio 1.1<br />

pystyy myös muuntamaan gif-muotoon. JDicomViewer on saman<br />

kirjoittajan niin ikään Java-pohjainen ilmaisohjelma. JDicomViewer<br />

vastaa muuten eViewBox ohjelmaa paitsi että siinä kuvia voi olla<br />

kerralla auki vain 1 kpl. Myös vastaava appletti on saatavilla. 10$<br />

hintaan yksityisille ja 200$ hintaan muille kirjoittaja lupaa myös<br />

lähdekoodin sekä vapaan oikeuden käyttää DICOM-decoder applettia<br />

osana Web-sivua.<br />

Lisätietoja EViewBox:ista:<br />

http://www.derhy.com/DICOM/EViewBox.html<br />

Vastaava appletti testattavissa osoitteessa:<br />

http://www.derhy.com/DICOM/JFR98/DicomApplet/DicomApplet.ht<br />

ml<br />

Lisätietoja JDicomViewer:istä osoitteessa:<br />

http://wwwusers.imaginet.fr/~sderhy/dicJava.html<br />

appletti testattavissa osoitteessa:<br />

http://wwwusers.imaginet.fr/~sderhy/DicomApplet.html<br />

4.1.3 MRIcro ja EzDicom<br />

MRIcro on helppokäyttöinen ja nopea windows-ilmaisohjelma<br />

DICOM- ja muidenkin kuva-tiedostojen katseluun, muokkaamiseen ja<br />

muuntamiseen. Ohjelma lukee melkein kaikkia DICOM-tyyppejä.<br />

DICOM-tiedostot voi myös muuntaa moniin yleisimpiin<br />

kuvaformaatteihin kuten: Jpeg, Bmp, Tiff jne.<br />

EzDicom on saman tekijän (ilmais)ohjelma joka on suunnattu<br />

enemmän varsinaisten DICOM-tiedostojen katseluun ja tulkintaan.<br />

Helppokäyttöisenä ja nopeana sopii erittäin hyvin DICOM -<br />

tiedostojen katseluun Windows:ssa. Myös DICOM -tiedoston<br />

muunnokset muihin kuvaformaatteihin käyvät helposti.<br />

Kumpikin EM. ohjelmista on pienikokoinen eikä vaadi asennusta.<br />

Toimivat kaikissa 32bit windows-ympäristöissä. Myös lähdekoodit<br />

EZDicom:iin ovat saatavilla. Vaikka helpit puuttuvatkin lähes<br />

kokonaan, erinomainen info tiedosto sekä ohjelmista että <strong>DICOM3</strong><br />

tiedostoformaatista on saatavissa WWW:n kautta:<br />

http://www.mrc-cbu.cam.ac.uk/personal/chris.rorden/mricro.htm<br />

DICOM -infoa<br />

http://www.mrc-cbu.cam.ac.uk/personal/chris.rorden/dicom.htm<br />

25.10.03 45/53


TTKK(PKY) Selvitys <strong>DICOM3</strong> tiedostoformaatista Versio 1.1<br />

4.1.4 Osiris<br />

Osiris on perustyökalu DICOM-tiedostojen katseluun, analysointiin ja<br />

muokkaamiseen. Osiris lukee ja kirjoittaa ainakin pakkaamattomia<br />

DICOM-, papyrys3 -, papyrys2- ja tiff- formaatteja. Ohjelma on<br />

ilmainen ja saatavana lähes kaikkiin ympäristöihin (Windows, Linux,<br />

Unix jne.) Kattava (joskin joiltain osin hieman vanhentunut)<br />

käyttöopas on saatavissa Web-sivulta:<br />

http://www.expasy.ch/www/UIN/html1/projects/osiris/osiris.html<br />

4.2 Yleisiä DICOM - muunnoksessa tarvittavia tietoja<br />

4.2.1 Data-alkioiden tunnistus<br />

DICOM-tiedosto koostuu ominaisuusryhmien attribuuttien arvoista eli<br />

data-alkioista. Kullakin data-alkiolla on yksilöllinen tunnisteosa eli<br />

Tagi (Tag) (ks. 3.3.1.1.1) Tagi on muunnosprosessin ja yleensäkin<br />

DICOM-tiedostojen käsittelyn kannalta tärkeä, koska se kertoo mistä<br />

data-alkiosta kulloinkin on kysymys. Kaikkien DICOM -dataalkioiden<br />

käsittely (lukuun ottamatta File Preamble ja Dicom Prefix<br />

alkioita) perustuu siihen että alkio ensin tunnistetaan Tagin avulla.<br />

Data-alkioiden järjestyskin määräytyy Tagin perusteella<br />

4.2.2 Dataryhmän (Data Group) ja Data-alkion (Data-element) pituus<br />

Monesti myös tiedoston pituuden ja sen eri osien pituuksien<br />

tunteminen ovat tärkeitä tiedostoa käsitteleville ohjelmille. Erityisen<br />

tärkeäksi tämä muodostuu DICOM-tiedostoita käsiteltäessä koska<br />

data-alkioiden määrä voi vaihdella suurestikin samankin tyyppisessä<br />

kuvassa. Eräs perustehtävistä DICOM-tiedostoa muunnettaessa onkin<br />

tiedoston ja sen data-alkioiden sekä dataryhmien pituuksien<br />

selvittäminen.<br />

4.2.2.1 Data-ryhmän pituus<br />

Data-alkiot on järjestelty Tagin ryhmänumeron mukaan dataryhmiksi<br />

(Data Group) Dataryhmät eivät ole kuitenkaan vakiopituisia mistä<br />

saattaisi aiheutua ongelmia tiedostoa käsitteleville ohjelmille mikäli<br />

ryhmän pituutta ei olisi tiedossa. Pituus onkin yleensä aina ilmaistu<br />

ko. ryhmän ensimmäisenä alkiona eli alkionumerolla 0000h.<br />

25.10.03 46/53


TTKK(PKY) Selvitys <strong>DICOM3</strong> tiedostoformaatista Versio 1.1<br />

4.2.2.2 Data-alkion pituus<br />

Myös Data-alkion pituus on yleensä ilmaistu. Pituuden ilmoittamiseen<br />

käytetään alkion Value Length -kenttää. Joissain tilanteissa (riippuen<br />

tiedoston syntaksista) voidaan käyttää myös määrittelemättömän<br />

pituisia data-alkioita (Undefined Length). Tällöin data-alkion -<br />

pituuskentän arvoksi on asetettava luku FFFFFFFFh.<br />

4.3 Muunnosprosessin vaiheet (yleisellä tasolla)<br />

DICOM-tiedoston muuntamiseen esim. Jpeg:ksi liittyy useita osittain<br />

mutkikkaitakin toimenpiteitä. Tässä kappaleessa on kuitenkin yritetty<br />

mahdollisimman yksinkertaisesti ja yleisellä tasolla selvittää<br />

muunnosprosessin tärkeimpiä vaiheita. On huomattava että esitettyjen<br />

kuvausten ei ole tarkoituskaan mennä yksityiskohtiin, vaan<br />

pikemminkin luoda kokonaisvaltainen näkökulma asioista joita<br />

muunnokseen liittyy. Myöskään siihen mihin muotoon DICOMtiedostoa<br />

halutaan muuntaa ei oteta kantaa vaan esitettyjen<br />

toimenpiteiden pitäisi olla yleispäteviä muunnettiinpa DICOMtiedostoa<br />

mihin formaattiin tahansa.<br />

4.3.1 Vaihe 1: Tarkista että muunnettava tiedosto kelvollinen<br />

<strong>DICOM3</strong>-Tiedosto<br />

Aivan ensimmäiseksi on syytä tarkistaa, että muunnettava tiedosto on<br />

kelvollista <strong>DICOM3</strong> -muotoa. <strong>DICOM3</strong> -standardi tarjoaa tähän<br />

yksiselitteisen ja helpon tavan määrittelemällä, että kaikissa<br />

standardin mukaisissa <strong>DICOM3</strong> tiedostoissa on oltava "File Meta<br />

Information" -kentässä toisena alkiona merkkijono "DICM" (DICOM<br />

prefix) (ks. taulukko 3.1). <strong>DICOM3</strong> yhteensopivuuden varmennus<br />

saadaankin yksinkertaisesti tehtyä esim. lukemalla DICOM- tiedoston<br />

alusta tavut 129, 130, 131, 132 ja tarkistetamalla, että nämä tavut<br />

sisältävät merkkijonon 'D' 'I' 'C' 'M'.<br />

4.3.2 Vaihe2 : Tarkista tiedoston "syntaksi" (Transfer Syntax UID)<br />

Seuraavaksi kannattanee tarkistaa tiedoston "syntaksi" eli "File Meta<br />

Information" -osasta data-alkio 0002, 0010 ("Transfer Syntax UID"<br />

)(ks. taulukko 3.x). Tämä alkio on tärkeä kuvadatan lukemisen<br />

kannalta, sillä se määrää tavan (kertoo kuvan koodauksessa käytetyn<br />

kielen) jolla kuvadataa tulisi käsitellä. "Transfer syntaksin"<br />

tavallisimmat arvot on listattu kuvassa 3.x<br />

25.10.03 47/53


TTKK(PKY) Selvitys <strong>DICOM3</strong> tiedostoformaatista Versio 1.1<br />

4.3.3 Vaihe3: Tarkista mitä attribuutteja tiedosto sisältää (tiedoston<br />

pituus).<br />

Vaiheena 3 voidaan vaikkapa käydä nopeasti läpi tiedoston kaikki<br />

ominaisuusryhmät ja tarkistaa mitä data-alkioita tiedosto sisältää.<br />

Samalla kannattaa selvittää myös kunkin Dataryhmän ja data-alkion<br />

pituus<br />

4.3.4 Vaihe4: Tarkista että tiedosto sisältää kaikki muunnosta varten<br />

tarvittavat data-alkiot<br />

Vaihe4 on olennainen muunnoksen onnistumisen kannalta, koska<br />

siinä varmistetaan, että tiedoston otsikko-osa sisältää muunnoksen<br />

kannalta tärkeät data-alkiot. Mikäli jotakin tarvittavaa data-alkiota ei<br />

löydy keskeytetään muunnos. Tarpeellisia data-alkioita ovat esim.<br />

kuvan koon ja bittimäärän yksilöivät alkiot.<br />

4.3.5 Vaihe5: Lue tarvittavat data-alkiot ja pura niiden sisältämä data<br />

syntaksin mukaisesti<br />

Tässä vaiheessa suoritetaan varsinainen tiedoston purku-prosessi eli<br />

otetaan tiedostosta irti kuvadata ja puretaan sen "koodaus" tiedoston<br />

syntaksin ("transfer syntax") edellyttämällä tavalla. On huomattava,<br />

että vaiheet 4 ja 5 kuuluvat läheisesti yhteen, ja monesti ne voidaan<br />

myös käytännössä yhdistää. Tässä ne on kuitenkin listattu selkeyden<br />

vuoksi kumpikin omina vaiheinaan.<br />

4.3.6 Vaihe6: Suorita tarvittavat muunnosprosessit ja kirjoita<br />

uudelleen koodattu pikseli-data kohdetiedostoon.<br />

Kun kuva on purettu normaaleiksi pikseli-alkioiksi, sitä voidaan<br />

edelleen jatkokäsitellä kunkin kohdetiedosto-formaatin vaatimalla<br />

tavalla, ja sitten kirjoittaa uudelleen koodattu data kohdetiedostoon.<br />

Kuvadataa voidaan esim. pakata joko häviöttömillä- (esim. gif) tai<br />

häviöllisillä (esim. häviöllinen Jpeg) pakkausalgoritmeilla.. Varsinkin<br />

häviöllisillä pakkausalgoritmeilla pakattaessa on kuitenkin<br />

muistettava että kuvan laatu on säilytettävä riittävän korkeana kutakin<br />

tarkoitusta varten.<br />

25.10.03 48/53


TTKK(PKY) Selvitys <strong>DICOM3</strong> tiedostoformaatista Versio 1.1<br />

(Huom: Se mitä tarkoitetaan tässä riittävän korkealla laadulla, riippuu<br />

paljolti siitä minkä tyyppiseen diagnosointiin kuvaa on tarkoitus<br />

käyttää. Peukalosääntönä voidaan kuitekin todeta, että häviöllisen<br />

pakkauksen kanssa tulisi olla äärimmäisen varovainen.)<br />

4.4 DICOM -tiedoston muunnoksen Ongelmia<br />

Kuten kaikkiin käytännön asiohin, myös DICOM-muunnokseen liittyy<br />

tiettyjä ongelmia. On selvää ettei ympäri maailman käytössä olevaa<br />

standardia tulkita ja sovelleta kaikkialla aina aivan samalla tavalla.<br />

Eniten "harmaita bittejä" aiheuttavat todennäköisesti eri syntaksit,<br />

joita DICOM-standardin puitteissakin on melkoinen määrä. Samoin<br />

pakatun tiedostoformaatin käsittelyyn liittyy omat koukeronsa.<br />

Yleisesti ottaen DICOM-muunnoksen vaikein puoli on kuitenkin<br />

standardin syvällinen ymmärtäminen edes tiedostoformaatin osalta,<br />

joka vaatii aina oman aikansa. Kun tämä puoli on kunnossa, ei<br />

muunnos-ohjelman suunnitteleminen ole enää mikään mutkikas<br />

temppu. Tässä asiassa auttavat varmasti myös valmiit DICOMmuunnos<br />

ja katseluohjelmien lähdekoodit, joita on ilmaiseksi<br />

saatavissa useistakin lähteistä. Tämän dokumentinkin sähköisessä<br />

liite-arkistossa on lähdekoodit muutamasta ratkaisusta sekä Java, C++<br />

että Object Pascal (Delphi) kielellä.<br />

25.10.03 49/53


TTKK(PKY) Selvitys <strong>DICOM3</strong> tiedostoformaatista Versio 1.1<br />

5. MISTÄ SAAN LISÄTIETOA? (LINKKILISTA JA LIITTEET)<br />

5.1 Yleistä<br />

<strong>DICOM3</strong> on tietotekniikan standardina jo melkoisen vanha ja lisäksi<br />

maailman laajuisesti käytössä, joten tiedon löytäminen ei sinänsä ole<br />

vaikeaa. Kuvaavaa on että yksinkertaisella sanahaulla (<strong>DICOM3</strong>)<br />

esim. Alta Vista- hakukoneella löytyi kaikkiaan useita tuhansia sivuja.<br />

Suurempana ongelmana onkin sen "oikean" tiedon kaivaminen<br />

valtaisasta tietotulvasta. Tätä silmälläpitäen pyrinkin keräämään<br />

joitakin olennaista tietoa sisältäviä Web-sivuja, ohjelmia ja muuta<br />

dokumentaatiota tämän raportin liitteeksi. Liitteet ovat sähköisessä<br />

muodossa, erityisessä liitearkistossa josta tarkemmin seuraavassa<br />

kappaleessa. Lisäksi kokosin joukon hyödyllisiä linkkejä, joista myös<br />

saattaa löytyä apua DICOM:ia koskevissa asioissa. Osa näidenkin<br />

linkkien kohteista sisältyy liite-arkistoon. Linkit on tarkemmin<br />

läpikäyty kappaleessa 5.3.<br />

5.2 Sähköisen liitearkiston sisältö<br />

Sähköinen liite-arkisto sisältää runsaasti materiaalia (kaikkiaan n. 150<br />

MT) liittyen DICOM:iin ja lääketieteellisiin kuvaformaatteihin<br />

yleensä. Arkisto koostuu seuraavista kansioista:<br />

Kuva 5.1 Sähköisen liite-arkiston kansiot<br />

5.2.1 Esimerkkejä -kansio<br />

Tämä kansio sisältää kokoelman <strong>DICOM3</strong>-muotoisia erilaisia<br />

tiedostoja lähinnä testiohjelmia ja kuvan muunnoksen testausta varten.<br />

Kansioon on sisällytetty myös erinäisistä lähteistä saatuja tiedostoja<br />

joita väitettiin DICOM-tiedostoiksi mutta joita en saanut avatuksi<br />

millään testaamallini ohjelmalla. Nämä tiedostot ovat Esimerkkejä<br />

hakemiston alikansiossa: "Tuntematonta muotoa".<br />

25.10.03 50/53


TTKK(PKY) Selvitys <strong>DICOM3</strong> tiedostoformaatista Versio 1.1<br />

5.2.2 Omat -kansio<br />

Omat kansio sisältää tämän dokumentin doc-muodossa ja<br />

mahdollisesti muuta tekijän itse kirjoittamaa/tuottamaa<br />

dokumentaatiota.<br />

5.2.3 Perusinfo -kansio<br />

Perusinfo sisältää tärkeää informaatiota DICOM:sta. PerusInfon<br />

sisältämät tiedostot jotka ovat pääsasiassa html-muotoa ja niihin<br />

kuuluvia kuvia. Perusinfo -kansiossa olevat dokumentit on nimetty<br />

uudelleen ko. informaatiota kuvaavalla tavalla. Tämä dokumentti<br />

perustuu DICOM -standardin lisäksi pääosin perusinfo kansiossa<br />

olevaan dokumentaatioon.<br />

5.2.4 Projekteja -kansio<br />

Projekteja kansioon on koottu tietoja DICOM-tiedostomuunnokseen<br />

liittyvistä projekteista ( Huom: ei sisällä apuohjelmiin liittyvää tietoa<br />

kuten lähdekoodeja)<br />

5.2.5 Sekalaista -kansio<br />

Sekalaista kansioon on koottu kaikki järjestelemätön dokumentti<br />

materiaali.<br />

5.2.6 Softa -kansio<br />

Tämä kansio on sisällöltään kaikkein laajin sisältäen lajitellut<br />

muunnosohjelmat omina kansioinaan. Sekalaiset alikansio sisältää<br />

lajittelemattomat ohjelmat. Mahdolliset kuhunkin ohjelmaan liittyvät<br />

lähdekoodit löytyvät ko. ohjelman kansion alta alikansiosta<br />

lähdekoodi tai vastaavasta.<br />

5.2.7 standardi(viimeisin99draft) -kansio<br />

Sisältää tämän dokumentin kirjoitushetkellä viimeisimmän "draft"version<br />

DICOM standardista . Tästä kansiosta löytyvät myös<br />

tiedostot: ChangesRelativeTo98.pdf ja<br />

98ChangesRelativeToOfficial.pdf jotka sisältävät kuvauksen niistä<br />

eroista joita standardin "draft" -versio edelliseen standardin versioon<br />

nähden.<br />

5.3 Linkkilista selityksineen<br />

Ikäänkuin lisäporkkanana tiedon hankintaan asiasta kiinnostuneille<br />

kokosin myös pienen linkkilistan joka kaikkien DICOM-fanien<br />

kannattaa heti paikalla lisätä selaimensa "bookmarkkeihin" tai<br />

25.10.03 51/53


TTKK(PKY) Selvitys <strong>DICOM3</strong> tiedostoformaatista Versio 1.1<br />

suosikkeihin :-). Linkit on myös pyritty esittämään jonkimoisessa<br />

tärkeysjärjestyksessä ja lisäksi kutakin linkkiä kohden on lyhyt kuvaus<br />

linkin kohteessa olevasta informaatiosta.<br />

http://idt.net/~dclunie/medical-image-faq/html/part8.html<br />

Kaikki linkit ja viitteet maan ja taivaan väliltä liittyen DICOM -<br />

standardiin ja tiedostomuotoon. Yhteensä 21 sivullista pelkkiä<br />

linkkejä. (heikkohermoiset ja kärsimättömät älkööt vaivautuko)<br />

http://medical.nema.org/dicom.html<br />

Neman DICOM -standardin kotisivu<br />

http://www.mrc-cbu.cam.ac.uk/personal/chris.rorden/dicom.htm<br />

Erinomainen ja käytännön läheinen (helppolukuinen!!!) kuvaus<br />

DICOM-tiedostosta. Älä jätä tätä väliin.<br />

http://www.bookcase.com/library/faq/archive/medical-imagefaq/part1.html<br />

Erinomainen, käytännön läheinen, edellistä linkkiä hiemän enemmän<br />

yksityiskohtiin menevä kuvaus DICOM-tiedoston rakenteesta. Ks.<br />

myös ... part2 - part8.<br />

http://crnet4.carelian.fi/euromed/wwwdcm/wwwdcm.html<br />

Vastaavan tyyppinen projekti johon osana kuului DICOM -kuvien<br />

esittäminen selaimella<br />

http://www.eihms.surrey.ac.uk/abbott/IT<br />

EDUCTRA/html/p423_13.htm<br />

Yleistä tietoa DICOM -standardista ja sen sisällöstä. Tarjoaa nopean<br />

katsauksen standardista ja sen sisällöstä hätäisemmille.<br />

http://www.bookcase.com/library/humor/<br />

Kun olet käynyt läpi kaikki edellä olevat linkit voit tarvita hieman<br />

kevennystä.... :-)<br />

25.10.03 52/53


TTKK(PKY) Selvitys <strong>DICOM3</strong> tiedostoformaatista Versio 1.1<br />

6. ONNITTELUT!<br />

Onnittelut , mikäli pääsit tänne asti torkahtamatta kertaakaan välillä<br />

tai hyppimättä yli sivuja, olet todella kiinnostunut DICOMtiedostoformaatista.<br />

Jos vieläkin jäit kaipaamaan lisäinformaatiota tai<br />

olet halukas antamaan rakentavia parannus/lisäys ehdotuksia, voit<br />

ottaa vapaasti yhteyttä dokumentin kirjoittajaan. Kaikki mahdolliset<br />

kommentit liittyen tähän dokumenttiin tai DICOM:iin yleensä ovat<br />

tervetulleita. Parhaiten minut tavoittaa sähköpostin välityksellä<br />

osoitteesta: lahteenj@hotmail.com<br />

25.10.03 53/53

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!