You are on page 1of 94

POLITECHNIKA KRAKOWSKA im. T.

Kociuszki
Wydzia Mechaniczny
Instytut Informatyki Stosowanej
Kierunek studiw: Informatyka
Specjalno : Informatyka Stosowana
STUDIA STACJONARNE
PRACA DYPLOMOWA
MAGISTERSKA
Rafa Petryniak
Internetowy system wspomagajcy lekarza w diagnozowaniu
na podstawie obrazw medycznych.
Promotor:
Dr in. Zbigniew Lataa
Krakw, rok akad. 2005/2006
Praca dostpna na licencji Creative Commons 2.5
(Uznanie autorstwa-Uycie niekomercyjne-Na tych samych warunkach).
[Pena tre licencji zostaa umieszczona w zaczniku C]
KARTA PRACY DYPLOMOWEJ
Nr pracy:
POLITECHNIKA KRAKOWSKA
WYDZIA MECHANICZNY
INSTYTUT INFORMATYKI STOSOWANEJ
Zakad Komputerowej Analizy Obrazu M-74
Promotor:
Dr in. Zbigniew Lataa
Autor pracy:
Rafa Petryniak
Temat:
Internetowy system wspomagajcy lekarza w diagnozowaniu na podstawie obrazw
medycznych.
. .
Podpis promotora Kierownika specjalnoci
Uzgodniona ocena pracy: ..
. ................................................. .......................................................
Podpis promotora Podpis recenzenta Dyrektora Instytutu
ds. Dydaktyki
Podzikowania
Serdeczne podzikowania za zaangaowanie i pomoc udzielon w trakcie pisania niniejszej
pracy chciabym zR\ Panu dr in. Zbigniewowi Latale oraz Panu mgr in. Dariuszowi
Karpiszowi.
Na koniec pragn rwnie podzikowa Koleance Magdalenie Lewickiej za ciJe wsparcie
duchowe i merytoryczne.
1
WPROWADZENIE CEL I ZAKRES PRACY....................................................................................... 4
I. CZ TEORETYCZNA....................................................................................................... 5
ROZDZIA 1. TECHNIKI AKWIZYCJI OBRAZW MEDYCZNYCH........................................................ 6
1.1. Radiografia konwencjonalna i cyfrowa ............................................................................... 6
1.2. Tomografia komputerowa transmisyjna............................................................................... 6
1.3. Spiralna tomografia komputerowa ...................................................................................... 7
1.4. Rezonans magnetyczny........................................................................................................ 8
1.5. Ultrasonografia.................................................................................................................. 8
1.6. Inne metody akwizycji obrazu.............................................................................................. 9
ROZDZIA 2. ZARZDZANIE OBRAZAMI MEDYCZNYMI .................................................................. 9
2.1. Zapis danych obrazowych - format DICOM.......................................................................10
2.1.1. Problemy zwizane ze stosowaniem formatu DICOM...............................................................10
2.1.2. Przegldarki zdjc w formacie DICOM.....................................................................................10
2.2. Organizacja skadowania danych obrazowych - systemy PACS ..........................................11
2.2.1. Funkcje systemw PACS..........................................................................................................11
2.2.2. Budowa systemw PACS.........................................................................................................11
ROZDZIA 3. REKONSTRUKCJA PRZESTRZENNA OBRAZW MEDYCZNYCH....................................12
3.1. Rekonstrukcja obrazu z paskich przekrojw......................................................................12
3.2. Modelowanie objtociowe ................................................................................................13
ROZDZIA 4. INFORMATYZACJA SZPITALA...................................................................................13
4.1. Charakterystyka szpitalnych systemw informatycznych.....................................................13
4.1.1. Moduly centralne .....................................................................................................................14
4.1.2. Systemy peryferyjne.................................................................................................................14
4.2. Integracja systemw informatycznych (DICOM, HL7)........................................................14
ROZDZIA 5. TELEMEDYCYNA.....................................................................................................15
5.1. Wymagania stawiane systemom telemedycznym .................................................................15
5.1.1. Dostpnoc szybkich lcz telekomunikacyjnych........................................................................15
5.1.2. Integracja nowoczesnych urzdze przenonych .......................................................................15
5.1.3. Ujednolicony format cyfrowej reprezentacji informacji medycznej............................................15
5.1.4. Zapewnienie transmisji obrazu w czasie rzeczywistym - wideokonferencje ...............................15
5.1.5. Bezpieczestwo przesylu informacji medycznej........................................................................16
5.1.6. Integracja specjalistycznej aparatury z sieci komputerow.......................................................16
5.1.7. Automatyzacja i przeroczystoc ..............................................................................................16
5.2. Obszary zastosowa telemedycyny .....................................................................................16
2
II. CZ PRAKTYCZNA........................................................................................................17
ROZDZIA 6. KONCEPCJA SYSTEMU .............................................................................................17
ROZDZIA 7. ANALIZA WYMAGA...............................................................................................18
7.1. Sownik..............................................................................................................................18
7.2. Modele systemu..................................................................................................................21
7.2.1. Model przeplywu informacji.....................................................................................................21
7.2.2. Model architektury systemu......................................................................................................22
7.3. Analiza wymaga funkcjonalnych ......................................................................................23
7.4. Analiza wymaga niefunkcjonalnych..................................................................................28
7.4.1. Bezpieczestwo........................................................................................................................28
7.4.2. Wymagania sprztowe..............................................................................................................28
7.4.3. Pozostale wymagania systemu..................................................................................................29
ROZDZIA 8. PROJEKT I WYKONANIE SYSTEMU............................................................................30
8.1. Modelowanie zachowa systemu........................................................................................30
8.2. Projekt bazy danych...........................................................................................................35
8.3. Projekt interfejsu uytkownika............................................................................................37
8.4. Iteracyjny proces budowania systemu ................................................................................38
8.5. Opis poszczeglnych moduw systemu..............................................................................40
8.5.1. Szkielet systemu.......................................................................................................................41
8.5.2. Modul DICOM.........................................................................................................................51
8.5.3. Modul Wizualizacja .................................................................................................................54
8.5.4. Modul Komunikacja.................................................................................................................57
8.6. Opis instalacji i konfiguracji projektu. ...............................................................................59
8.6.1. Przygotowanie infrastruktury sprztowej ..................................................................................59
8.6.2. Przygotowanie niezbdnego oprogramowania...........................................................................59
8.6.3. Instalacja systemu InterMed .....................................................................................................60
8.6.4. Utrzymanie systemu.................................................................................................................60
ROZDZIA 9. PRBA WIZUALIZACJI PRZESTRZENNEJ OBRAZU.......................................................61
9.1. Wybr internetowej technologii wizualizacji przestrzennej. ................................................61
9.1.1. Przegld i krtka charakterystyka narzdzi wizualizacji w Internecie.........................................61
9.2. Przygotowanie danych .......................................................................................................62
9.2.1. Wyznaczanie konturw............................................................................................................62
9.2.2. Wyznaczanie wsplrzdnych....................................................................................................64
9.3. Wizualizacja VRML / X3D.................................................................................................66
9.3.1. Technologia VRML / X3D.......................................................................................................66
9.3.2. Wizualizacja punktowa.............................................................................................................67
9.3.3. Wizualizacja plaszczyzny - napotkane problemy.......................................................................68
3
ROZDZIA 10. PERSPEKTYWY ZASTOSOWANIA I ROZWOJU SYSTEMU............................................69
10.1. Scenariusze uycia systemu..............................................................................................69
10.1.1. System jako usluga zewntrzna...............................................................................................69
10.1.2. System u klienta.....................................................................................................................70
10.2. Perspektywy rozwoju i integracji systemu.........................................................................70
10.2.1. Obrazy pobierane z systemu PACS.........................................................................................70
10.2.2. Informacja o badaniu pobierana z systemu RIS / HIS ..............................................................71
10.2.3. Usprawnienie komunikacji poprzez wideo-konferencje ...........................................................72
11. ZAKOCZENIE .......................................................................................................................73
11.1. Podsumowanie.................................................................................................................73
11.2. Prezentacja projektu........................................................................................................74
11.3. Prowadzenie prac ............................................................................................................75
11.3.1. Portal projektowy...................................................................................................................75
11.3.2. System kontroli wersji ............................................................................................................76
11.3.3. Format zapisu dokumentacji technicznej .................................................................................78
11.3.4. WIKI......................................................................................................................................79
12. WNIOSKI ................................................................................................................................81
13. LITERATURA..........................................................................................................................82
Ksiki .....................................................................................................................................82
Rozprawy doktorskie.................................................................................................................82
Artykuy....................................................................................................................................82
Adresy WWW............................................................................................................................83
DODATEK A. ZALCZNIKI ............................................................................................................85
A.1. Struktura katalogw aplikacji WWW .................................................................................85
A.2. Skrypty tworzce schemat bazy danych..............................................................................86
DODATEK B. ZALCZNIKI W POSTACI CYFROWEJ .........................................................................87
DODATEK C. TREC I WARUNKI LICENCJI .....................................................................................88
SPIS RYSUNKW...........................................................................................................................89
SPIS TABEL ...................................................................................................................................90
SPIS PRZYKLADW........................................................................................................................90
4
Wprowadzenie cel i zakres pracy
Ogromny rozwj i upowszechnienie si w ostatnich latach nowoczesnych systemw
teleinformatycznych mialo duy wplyw na popraw funkcjonowania informatycznych
systemw szpitalnych. Ju nie tylko integracja poszczeglnych urzdze i aplikacji byla
moliwa, ale pojawily si rwnie nowe formy wiadczenia uslug medycznych. Szerokie
zastosowania mog znalec rozwizania oferujce wymian opinii midzy specjalistami,
z moliwoci przesylania obu stronom rnego rodzaju potrzebnych informacji,
a w szczeglnoci diagnostycznych obrazw medycznych.
Glwnym celem niniejszej pracy jest realizacja systemu informatycznego opartego o sie
Internet, ktry bdzie wspiera lekarza w diagnozowaniu na podstawie wykonanych
zdj medycznych. Zaklada si, e zakres moliwoci tego systemu bdzie obejmowal:
obslug podstawowych funkcji kartoteki bada:
o dodawanie nowego badania
o przegldanie i edycja istniejcych bada
o wyszukiwanie bada wg zadanych kryteriw
skladowanie zdjc medycznych zapisanych w standardowych formatach w jednym
miejscu,
umoliwienie komunikacji osb pracujcych nad danym badaniem i rozproszonych
geograficznie,
dostarczenie filtrw graficznych, umoliwiajcych przetwarzanie obrazw w celu
wydobycia istotnych informacji dla osoby przegldajcej zdjcia.
W pierwszej czci pracy (cze teoretyczna) zostala poruszona tematyka wykorzystania
informatyki w problemach diagnostyki obrazowej, ze szczeglnym uwzgldnieniem
moliwoci jakie oferuje siec Internet.
W drugiej czci pracy (cz praktyczna) przedstawiono dokladn charakterystyk
wykonanego systemu, wskazujc nie tylko uzyskane wyniki, ale rwnie napotkane problemy
i sposoby ich rozwizywania.
5
I. Cz teoretyczna
Technologia komputerowa na przelomie wiekw XX i XXI byla ju obecna niemal we
wszystkich dziedzinach ycia spolecznego. Szerokie zastosowanie komputerw nie ominlo
take medycyny.
Zastosowanie informatyki w medycynie siga lat 60, kiedy to w Stanach Zjednoczonych
zauwaono jakie moliwoci daje to wojsku. Kolejne lata przyniosly bardzo intensywny
rozwj bada nad wykorzystaniem technologii informatycznych w rnych obszarach
ochrony zdrowia. W latach 70 pojawily si pierwsze systemy administracyjne, ekspertowe
(Mycin), a take obrazowe (tomografia komputerowa). Lata 80 to okres budowy systemw
klinicznych, wykorzystania baz danych oraz kolejne prby wykorzystania sztucznej
inteligencji. Lata 90 przyniosly natomiast rozwj telemedycyny, wizualizacji 3D, oraz
standaryzacj danych medycznych (DICOM). Obecnie trudno sobie wyobrazic prac lekarzy
specjalistw bez wsparcia odpowiednich technologii informacyjnych.
Profesor Wlodzislaw Duch [19] wyrnia kilka obszarw zastosowa komputerw
w medycynie:
aparatura medyczna
moliwoc przechowywania duych iloci danych i szybkiego dostpu do tych danych
np. komputeryzacja administracji placwek medycznych, bazy danych dotyczce
chorb
zdalny dostp do danych medycznych i moliwoc ich przesylania, konsultacje
ekspertw
teleobecnoc i wirtualna rzeczywistoc
np. przeprowadzanie operacji na odlegloc
inteligentna analiza danych medycznych i wspomaganie podejmowania decyzji
6
Rozdzia 1. Techniki akwizycji obrazw medycznych
Techniki obrazowania medycznego odgrywaj bardzo wan rol we wsplczesnej
medycynie. Szczeglny wplyw wywarly na diagnostyk, gdzie moliwe stalo si wykrywanie
schorze zanim zaczn dawac objawy, co znacznie zwiksza szans pacjenta na szybki
powrt do zdrowia, a w wielu przypadkach ratuje mu ycie [25].
1.1. Radiografia konwencjonalna i cyfrowa
Badania rentgenowskie cigle jeszcze stanowi wikszoc bada obrazowych. Opieraj si
one na odkrytych przez wiedeskiego badacza K.W.Roentgena promieniach X, ktre
przechodzc przez badane tkanki ulegaj oslabieniu, w zalenoci od ich gruboci i skladu
chemicznego [16]. Badacz ten, zbudowal rwnie pierwsz lamp wykorzystujc odkryte
przez siebie promienie, nazwan na jego czec rentgenowsk.
W tradycyjnym badaniu radiograficznym obraz zapisywany jest na kliszy, ktra poddawana
jest obrbce chemicznej (podejcie konwencjonalne). Jednake istniej ju systemy,
pozwalajce przeprowadzic cale badanie stosujc zapis cyfrowy (radiografia cyfrowa), co
wplywa na znaczne obnienie kosztw samego badania, jak rwnie umoliwia latwiejszy
dostp do tych danych.
Rysunek 1.1. Zdjcie rentgenowskie doni ony Roentgena wykonane przez samego
K.W. Roentgena w 1896
1.2. Tomografia komputerowa transmisyjna
Tradycyjne badanie radiologiczne ma pewne ograniczenia. Obraz bdcy wynikiem tego
badania jest obrazem sumacyjnym, co znaczy, e jest sum cieni rnych narzdw
nakladajcych si na siebie, jeeli lealy one jeden nad drugim na drodze promieniowania
rentgenowskiego [1].
7
Dla lekarza taka informacja czsto jest niewystarczajca. Dopiero majc kilka obrazw,
wykonywanych z kilku rnych kierunkw, jest on w stanie wyobrazic sobie dokladniej
budow analizowanego narzdu.
W latach 70 Godfrey Newbold Hounsfield i Allan McLeod Cormack zbudowali tomograf
komputerowy, ktry na podstawie serii obrazw radiograficznych wykonywanych pod
rnymi ktami i zastosowaniu odwrotnej transformaty Fouriera byl w stanie zrekonstruowac
przekrj badanego obiektu. Za swoje osignicia otrzymali w 1997 roku nagrod Nobla
w dziedzinie medycyny.
Rysunek 1.2. Zdjcie tomograficzne dziewicioletniej dziewczynki
W nowoczesnych tomografach komputerowych lampa emitujca wizk promieni RTG
obraca si wokl pacjenta w plaszczynie osiowej o 360. Oslabienie wizki promieni RTG
spowodowane ich przechodzeniem przez cialo jest rejestrowane przez uklad detektorw
(komory jonizacyjne, krysztaly scyntylacyjne, itp. ) i przetwarzane na sygnaly elektryczne.
Sygnaly te s nastpnie przekazywane do komputera, ktry w wyniku bardzo zloonych
algorytmw tworzy na ich podstawie obrazy reprezentujce badane czci ciala czlowieka
[16].
1.3. Spiralna tomografia komputerowa
Obrazy uzyskane przy uyciu tomografu komputerowego odzwierciedlaj jeden przekrj
badanego obiektu. Jednak do pelnego rozeznania anatomii badanej czci ciala wskazane
byloby wykonanie kilku obrazw na rnych wysokociach. Problemem jaki w takiej sytuacji
si pojawia jest dua iloc promieniowania jakiemu poddawany jest pacjent oraz trudnoc
uzyskania rwnoleglych przekrojw (np. pacjent si poruszyl). Rozwizaniem w takiej
sytuacji moe byc spiralna tomografia komputerowa [1], podczas ktrej nie wykonuje si serii
zdjc, a jeden cigly pomiar. W badaniu tym poza ruchem obrotowym lampy RTG
i detektorw - jak to ma miejsce w tradycyjnej Tomografii Komputerowej - przesuwa si do
przodu loko, na ktrym ley pacjent.
8
Uzyskane w ten sposb dane mog byc wykorzystywane do tworzenia przekrojw
w dowolnej plaszczynie (X,Y,Z) i pod dowolnym ktem, a z pomoc specjalnych
programw komputerowych mona wygenerowac nawet obraz przestrzenny (3D).
1.4. Rezonans magnetyczny
W badaniu tym pacjent umieszczony jest w komorze aparatu, w ktrej wytwarzane jest stale
pole magnetyczne o wysokiej energii. Wlasnoc ta powoduje, e linie pola magnetycznego
jder atomw w ciele czlowieka ustawiaj si rwnolegle do kierunku pola magnetycznego.
Aparat dodatkowo emituje fale radiowe, ktre wzbudzaj w tkankach pacjenta podobne fale
radiowe (zjawisko to nazywa si rezonansem), a one rejestrowane s przez aparat. W praktyce
jako 'rezonator' wykorzystuje si jdra atomu wodoru, ktrych liczba w poszczeglnych
tkankach jest inna. Wykorzystujc tan fakt komputer wbudowany w urzdzenie po wykonaniu
skomplikowanych oblicze przedstawia na ekranie monitora obraz badanych struktur
anatomicznych.
Rysunek 1.3. Zdjcie przekrojowe gowy czowieka wykonane w badaniu rezonansem
magnetycznym
1.5. Ultrasonografia
Ultrasonografia jest nieinwazyjn metod obrazowania narzdw i tkanek ciala ludzkiego,
w ktrej wykorzystuje si fale ultradwikowe. Fale te rozchodzc si w ciele badanego
pacjenta, ulegaj odbiciu na granicy dwch orodkw o rnej gstoci. Zamieniajc powstaly
w ten sposb impuls akustyczny na impuls elektryczny i po wprowadzeniu skali szaroci
poprzez uklady elektroniczne w ultrasonografie, na ekranie monitora powstaje obraz wybranej
warstwy narzdu czy tkanki. Przesuwajc glowic aparatu, uzyskuje si obraz calego
badanego narzdu.
Wikszoc stosowanych metod diagnostycznego obrazowania za pomoc ultradwikw
oparta jest na technice impulsowo-echowej. Badania takie wykonuje si za pomoc aparatw
ultrasonograficznych, ktre pozwalaj na uzyskiwanie obrazw USG w czasie rzeczywistym,
czyli zgodnie z ruchomoci danego obrazu [17].
9
Obraz w ten sposb otrzymany moe zostac utrwalony na kliszy fotograficznej, bd te
zapisany w formie elektronicznej na dysku komputera i poddany bardziej szczeglowej
analizie (odlegloci dowolnych punktw, wielkoci kta zawartego midzy elementami
anatomicznymi).
Rysunek 1.4. Ultrasonografia czteromiesicznego podu
1.6. Inne metody akwizycji obrazu
Oprcz wyej wymienionych technik akwizycji obrazu istniej m.in.:
tomografia komputerowa emisyjna:
o tomografia emisyjna pojedynczego fotonu - SPET
o tomografia emisyjna pozytronowa - PET
jdrowy rezonans magnetyczny
angiografia rezonansu magnetycznego
Szczeglowe opisy mona znalec w literaturze [2] [1].
Rozdzia 2. Zarzdzanie obrazami medycznymi
Nowoczesne systemy akwizycji obrazu zapisuj wyniki w postaci plikw graficznych. Jest to
metoda znacznie tasza od analogowych obrazw, jakimi s klisze fotograficzne, a take
umoliwia korzystanie z tych samych wynikw w jednym momencie z kilku miejsc. Jednake
potrzeba zachowania jak najlepszej jakoci tych obrazw oraz fakt, e wiele z nich
wykonywana jest seryjnie (np. ultrasonograf generuje 30 obrazkw na sekund) powoduje
ogromny wzrost zapotrzebowania na pamic dyskow komputerw. Wan kwesti jest
zapewnienie bezpieczestwa tak skladowanych obrazw (archiwizacja, kopie
bezpieczestwa) oraz ich ochrona przed nieautoryzowanym dostpem.
10
2.1. Zapis danych obrazowych - format DICOM
Pierwotnie kada firma produkujca sprzt wykorzystywany w radiologii (np. tomografy
komputerowe) stosowala wlasne formaty zapisu obrazu. Skutkiem tego byla koniecznoc
zakupu wszystkich urzdze od jednej firmy, tak aby mogly ze sob wsplpracowac. Problem
pojawil si, kiedy firma, od ktrej byl zakupiony caly sprzt nie posiadala w swojej ofercie
kolejnych, potrzebnych urzdze, lub gdy konkurencja dysponowala takim samym o lepszych
parametrach i niszej cenie.
Pierwsze prby opracowania wsplnego standardu wymiany obrazw medycznych zostaly
poczynione na pocztku lat 80 przez dwie instytucje: American College of Radiology [30]
i National Electrical Manufactures Association [31] (ACR-NEMA). Glwnym zadaniem bylo
rozwizanie dwch problemw:
(1) standaryzacji formatu zapisu informacji
(2) transmisji informacji pomidzy rnymi jednostkami [2].
Ostatecznie opracowany standard - DICOM [32] - zostal zaakceptowany przez producentw
sprztu medycznego otwierajc w ten sposb drog do pelnej integracji modulw systemu
pochodzcych od rnych dostawcw.
2.1.1. Problemy zwizane ze stosowaniem formatu DICOM
Standard DICOM jest bardzo rozbudowany - liczy kilkaset stron. Z powodu jego zloonoci
pojawia si wiele problemw z jego interpretacj i nie zawsze dwa urzdzenia, ktre
deklaruj stosowanie tego standardu bd w stanie komunikowac si ze sob.
Rozwizaniem tego problemu moe byc dokument "Stwierdzenie zgodnoci ze standardem
DICOM", ktry powinien byc dolczany do kadego urzdzenia zgodnego z tym standardem.
Jego zadaniem nie jest potwierdzenie kadego szczeglu ze standardem DICOM, a jedynie
wskazanie zgodnoci z okrelonym podzbiorem wymaga i opisanie rozszerze
umoliwiajcych instytucji wdraajcej urzdzenie, polczenie go z innymi urzdzeniami
DICOM-owymi [2]. Dopiero porwnanie dwch takich dokumentw i wskazanie, e
wzajemnie spelniaj swoje wymagania daje przekonanie, e ich wsplpraca powinna
odbywac si bez zaklce.
2.1.2. Przegldarki zdj w formacie DICOM
Kady zaklad radiologii powinien dysponowac co najmniej jedn stacj diagnostyczn,
umoliwiajc dokladn analiz wykonanego badania. Do przegldania archiww obrazw
radiologicznych konieczne jest posiadanie specjalistycznego oprogramowania, ktre nie tylko
rozumie specyficzne formaty danych, ale rwnie umoliwia manipulowanie nimi [25].
Poza grup drogich, komercyjnych rozwiza dostpne s dwie przegldarki, oferowane za
darmo, bez adnych oplat licencyjnych.
Pierwsza z nich o nazwie K-PACS [33] umoliwia komunikacj z serwerem PACS,
wikszoc operacji graficznych na obrazach, eksport do innych formatw (m.in. JPEG, BMP)
oraz na plyty CD [16].
11
Druga przegldarka OsiriX [34] posiada podobne moliwoci do K-PACS-a. Udostpnia
ona dodatkowo zaawansowane funkcje do generowania rekonstrukcji 3D. Dostpna jest ona
jednake tylko na platform Macintosh, co zawa grono potencjalnych uytkownikw.
2.2. Organizacja skadowania danych obrazowych - systemy PACS
Szybki rozwj technologiczny umoliwiajcy zapis obrazw w postaci cyfrowej, zmienil
sposb ich analizy oraz przyczynil si do reorganizacji archiwizacji i dystrybucji [2].
W latach 80 powstaly pierwsze systemy PACS (Picture Archiving and Communication
System), ktre pozwalaly na przechowywanie i zarzdzanie danymi obrazowymi. Jednake
dopiero po wprowadzeniu standardu DICOM, systemy te w pelni realizuj swoje funkcje i
pozwalaj na peln integracj z innymi urzdzeniami szpitala.
2.2.1. Funkcje systemw PACS
W drugim numerze Biuletynu Informatyki Medycznej [17] autorzy wyrniaj kilka funkcji,
ktre powinny spelniac systemy PACS:
archiwizacja obrazw - zapewnienie bezpieczestwa skladowania i udostpniania
danych obrazowych.
bezpieczestwo skadowania danych - utrzymanie kopii kadego obrazu na innym
komputerze.
komunikacja z urzdzeniami diagnostycznymi - automatyzacja przesylu obrazw
z urzdze diagnostycznych do serwera PACS.
udostpnianie danych obrazowych - umoliwienie przegldanie danych
skladowanych w systemie PACS ma stacjach diagnostycznych.
autorouting - automatyczne przesylanie danych obrazowych na stacje diagnostyczne
w celu umoliwienia ich oceny przez radiologa. System powinien umoliwiac
definiowanie regul przesylu danych (np. wybr komputera, godziny dostarczenia).
prefetching - automatyczne wyszukiwanie poprzednich bada w celach
porwnawczych.
2.2.2. Budowa systemw PACS
Systemy PACS skladaj si z czterech elementw:
urzdzenia akwizycji obrazu (np. tomografy komputerowe)
stacji diagnostycznych
serwera
sieci Internet / Intranet
12
Rysunek 2.1. Budowa systemu PACS
Dziki wykorzystaniu standardu DICOM istnieje moliwoc ich integracji z innymi
systemami szpitala, takimi jak HIS, RIS.
Rozdzia 3. Rekonstrukcja przestrzenna obrazw
medycznych
Obrazy plaskie - dotychczas analizowane przez lekarzy specjalistw / radiologw - nie s
naturalne dla czlowieka, ktry yje w wiecie o trzech wymiarach przestrzennych [26].
Dlatego twrcy nowoczesnych systemw obrazowania i prezentacji danych medycznych
staraj si coraz czciej wykorzystywac moliwoci grafiki trjwymiarowej.
Glwnym problemem przy wizualizacji przestrzennej pozostaje brak standardw zapisu
obrazu 3D. Nawet oglnie przyjty format jakim jest DICOM nie daje takiej moliwoci.
Dlatego w obecnej chwili cigle konieczny jest zapis danych w postaci serii zdjc, a nastpnie
ich rekonstrukcja w specjalistycznych programach. Optymistyczny moe wydawac si rozwj
nowoczesnych technologii, ktre umoliwiaj zapis wynikw z badania w postaci danych
objtociowych
1
, co z kolei pozwala na latwiejsze ich przetwarzanie.
3.1. Rekonstrukcja obrazu z paskich przekrojw
Obecnie najczstsz form zapisu obrazw pozyskanych w trakcie bada radiologicznych s
pojedyncze pliki lub ich serie przedstawiajce przekroje badanej czci ciala.
W tym celu najczciej stosuje si nastpujce formaty:
DICOM
TIFF (umoliwia zapis serii zdjc)
BMP, ewentualnie JPG (kompresja stratna)
Aby wygenerowac obiekt trjwymiarowy z takich danych, program musi wykonac szereg
skomplikowanych operacji. Najpierw kady obraz jest poddawany analizie, podczas ktrej
1
Pojcie szerzej wyjanione w rozdziale 3.2.
13
wydzielany jest zbir punktw nalecych do krawdzi. Proces ten odbywa si
z wykorzystaniem zaawansowanych filtrw wykrywania krawdzi. Nastpnie wydzielone
zbiory punktw dla poszczeglnych plaszczyzn powinny zostac przetransformowane do
przestrzeni trjwymiarowej. W ostatnim etapie stosuje si morfing, ktry pozwala na
przyblienie warstw porednich, co umoliwia odwzorowanie pelnego obiektu
przestrzennego. Metoda ta wymaga komputerw o duej mocy obliczeniowej i jest obarczona
bldami, ktre mog pojawic si na dowolnym etapie rekonstrukcji (wydzielanie konturw,
morfing).
3.2. Modelowanie objtociowe
Nowoczesne metody akwizycji obrazu (np. spiralna tomografia komputerowa) dokonuj
pomiaru ciglego (zdjcia objtociowe). Dane w ten sposb pozyskane nie musz byc
aproksymowane (morfing) poniewa jest ju dostpna pelna informacja z badanego
przedzialu. Dane te nie s ju tworami plaskimi, lecz nios ze sob trjwymiarow informacj
- dane o wewntrznej strukturze obiektu [27]. Zapisywane s one w plikach objtociowych
(ang. volume data set [3]), zwanych te teksturami wolumetrycznymi (ang. volumetric
texture [4]), ktre za pomoc specjalnego oprogramowania mog byc przegldane
w dowolnym kierunku (X, Y, Z). Jednake to nie koniec moliwoci, jakie daje ten sposb
akwizycji danych. Powstaly algorytmy modelowania objtociowego (ang. volume rendering
[3]), ktre na podstawie tych danych s w stanie bardzo dokladnie odwzorowac badane
struktury anatomiczne. Umoliwiaj one dodatkowo usuwanie warstwa po warstwie
poszczeglnych tkanek, co moe byc bardzo pomocne w szczeglowej analizie
poszczeglnych organw.
Rozdzia 4. Informatyzacja szpitala
Wzrost iloci informacji opisujcej stan zdrowia pacjenta oraz koniecznoc jej gromadzenia,
a w razie potrzeby natychmiastowego udostpnienia do dalszej analizy powoduje, e
tradycyjne metody zarzdzania danymi w placwkach sluby zdrowia przestaj byc
wystarczajce. Konieczne staje si informatyzowanie kolejnych obszarw dzialalnoci tych
jednostek. Wiele prb wprowadzenie nowych technologii zostalo podjtych ju kilkadziesit
lat temu, jednake wczesne ograniczenia technologiczne i nieumiejtnoc wykorzystania
nowego narzdzia dramatycznie ograniczyly oczekiwane korzyci [15]. Od kilku lat trwa
kolejna faza komputeryzacji, w ktrej dziki dowiadczeniu zdobytemu na przestrzeni lat
i ogromnemu postpowi technologicznemu, a take wprowadzeniu norm i standardw
powstaj rozwizania dla kadej strefy dzialania szpitala. Integracja tych rozwiza pozwala
na budow kompleksowych szpitalnych systemw informatycznych.
4.1. Charakterystyka szpitalnych systemw informatycznych
Szpitalne systemy informatyczne (ang. Hospital Information System - HIS) skladaj si
z wielu modulw tworzcych jeden zintegrowany system. Ponisza charakterystyka zostala
oparta na klasyfikacji zaproponowanej przez Ew Pitk w ksice 'Zintegrowany system
informacyjny w pracy szpitala' [2].
14
4.1.1. Moduy centralne
Modu Ruchu Chorych pacjentw szpitalnych - umoliwia obslug ruchu pacjenta
od chwili przyjcia na Izb Przyjc do momentu jego wypisu ze szpitala. Przechowuje
on nie tylko informacje o samym pacjencie (dane teleadresowe, lekarz lub jednostka
kierujca), ale rejestruje rwnie histori jego pobytu w szpitalu (numer sal, w ktrych
przebywal, daty przepustek i inne).
Modu Ruchu Chorych pacjentw ambulatoryjnych - pozwala wyznaczyc wizyt
w danej poradni i u konkretnego lekarza, a po jej odbyciu rejestruje diagnoz i list
wykonanych procedur.
Modu Zlece Medycznych - rejestruje zdarzenia w kolejnych etapach realizacji
procedury medycznej, od jej zlecenia do udostpnienia wyniku na stacji klinicysty.
4.1.2. Systemy peryferyjne
Laboratoryjny System Informacyjny (ang. Laboratory Information System - LIS) -
modul ten wspomaga zarzdzanie zleceniami na wykonanie analiz laboratoryjnych.
Farmaceutyczny System Informacyjny (ang. Pharmacy Information System - PIS) -
wspomaga on dzialanie apteki w zakresie obrotu lekami sprowadzanymi z hurtowni,
bd produkowanymi we wlasnym zakresie.
Radiologiczny System Informacyjny (ang. Radiology Information System - RIS) -
zapewnia obslug informatyczn procedur realizowanych w ramach diagnostyki
obrazowej. Zlecenia mog byc przesylane z oglnoszpitalnego systemu
informatycznego (HIS), bd te z rejestracji pacjentw ambulatoryjnych.
System Archiwizacji i Transmisji Obrazw (ang. Picture Archiving and
Communication System - PACS) - w odrnieniu od wyej opisanych modulw,
system ten nie zarzdza informacj alfanumeryczn, a danymi obrazowymi. Jego
glwnym zadaniem jest gromadzenie obrazw pochodzcych z bada radiologicznych
i ich udostpnianie na stacjach diagnostycznych.
4.2. Integracja systemw informatycznych (DICOM, HL7)
Wraz ze wzrostem stopnia skomplikowania szpitalnych systemw informatycznych pojawil
si problem lczenia kolejnych jego modulw, szczeglnie tych, obslugujcych urzdzenia
peryferyjne. Firmy informatyczne czsto wykorzystywaly wlasne standardy, ktre nie
umoliwialy podlczenia oprogramowania / sprztu innych firm. Naciski uytkownikw
i pojawiajca si frustracja firm informatycznych, ktre nie potrafily spelnic wszystkich
wymaga swoich klientw, doprowadzily do powolania komitetw normalizacyjnych,
ktrych zadaniem bylo opracowanie standardw wymiany informacji w systemach
medycznych.
Sposb transmisji i format zapisu danych obrazowych zostal zawarty w standardzie DICOM
opracowanym przez ACR-NEMA (format ten zostal dokladnie opisany w rozdziale 'Zapis
danych obrazowych - format DICOM'). Natomiast format przesylania informacji tekstowej
w standardzie HL7 (Health Level 7) [35], ktrego rozwojowi patronuje Health Level Seven.
Normalizacja ta pozwolila na integracj systemw pochodzcych od rnych dostawcw
i umoliwila ich wzajemn komunikacj [20].
15
Rozdzia 5. Telemedycyna
Ogromny rozwj i upowszechnienie si w ostatnich latach nowoczesnych technologii
teleinformatycznych mialo wplyw na pojawienie si nowych form wiadczenia uslug
medycznych, oglnie zwanych telemedycyn. Jest ona m.in. definiowana [1] jako kontakt
lekarza z pacjentem, znajdujcym si w innym miejscu. Pierwsze formy telemedycyny
pojawily si ju kilkadziesit lat temu z wykorzystaniem lcznoci telefonicznej i radiowej.
Obecny jej ksztalt natomiast w duym stopniu uzaleniony jest od postpu w dziedzinie
informatyki i zaangaowaniu rzdw i instytucji medycznych w jej rozwj.
5.1. Wymagania stawiane systemom telemedycznym
Telemedycyna jest bardzo mlod dyscyplin zarwno w medycynie, jak i w informatyce.
Wiele istniejcych systemw bylo tworzonych jako projekty badawcze obejmujce swoim
zasigiem jedn lub kilka jednostek sluby zdrowia. Aby mogly sprostac oczekiwaniom i stac
si szeroko stosowane musz spelniac okrelone wymagania, ktre przedstawiono poniej.
5.1.1. Dostpno szybkich cz telekomunikacyjnych
Warunek ten jest niezwykle wany w celu zagwarantowania odpowiedniego czasu
oczekiwania na reakcj systemu, ktra nie powinna przekraczac kilku sekund, a w wielu
sytuacjach (wideokonferencje, zagroenie ycia) powinna si odbywac w czasie
rzeczywistym. W tym przypadku zaleca si stosowanie wydajnych sieci szerokopasmowych,
ktre bd w stanie sprostac wikszoci wymaga. Natomiast w przypadku transmisji obrazu
wysokiej rozdzielczoci ich parametry mog okazac si niewystarczajce, wwczas zaleca si
stosowanie technik kompresji informacji, co moe przyniec znaczn popraw przesylania
danych.
5.1.2. Integracja nowoczesnych urzdze przenonych
Aby zapewnic dostp do informacji medycznej w dowolnym czasie i z dowolnego miejsca
(np. z miejsca wypadku lub domu chorego) systemy teleinformatyczne integruje si
z urzdzeniami przenonymi klasy laptop i PDA [24]. Rwnie tutaj jest wskazana dobra
lcznoc telekomunikacyjna, w szczeglnoci sieci komrkowych (GPRS, UMTS).
5.1.3. Ujednolicony format cyfrowej reprezentacji informacji medycznej
Wymg ten spelnia format DICOM, ktry poza obrazami medycznymi, moe zawierac ich
opis, dane pacjenta oraz parametry wykonanego badania.
5.1.4. Zapewnienie transmisji obrazu w czasie rzeczywistym - wideokonferencje
Nowoczesne systemy teleinformatyczne powinny umoliwiac przeprowadzenie
telekonsultacji, podczas ktrych specjalici rnych dziedzin w orodkach o wyszym
poziomie referencyjnym mog zdalnie konsultowac kontrowersyjne przypadki u pacjentw
znajdujcych si w orodkach peryferyjnych czy szpitalach o niszym poziomie
referencyjnym [21]. Jest wskazane, aby taka komunikacja odbywala si w czasie
rzeczywistym, z moliwoci przesylania jednoczenie dwiku i obrazu wideo
(wideokonferencje).
16
5.1.5. Bezpieczestwo przesyu informacji medycznej
Dla pelnej akceptacji i wykorzystania rozwiza telemedycznych w praktyce wymagana jest
gwarancja bezpieczestwa przesylanych informacji. Przez dlugie lata takiej gwarancji nie
bylo i tworzone oprogramowanie telemedyczne moglo miec jedynie charakter badawczy.
Dopiero w momencie wprowadzenia zaawansowanych zabezpiecze w systemach
finansowych, zmienil si pogld na moliwoc wykorzystania Internetu w medycynie, gdzie
poziom zabezpiecze powinien byc rwnie wysoki [22].
5.1.6. Integracja specjalistycznej aparatury z sieci komputerow
Aby umoliwic wykrywanie chorb we wczesnych stadiach i automatyczne zawiadamianie
slub medycznych, coraz czciej stosuje si techniki komputerowe w zminiaturyzowanej
aparaturze medycznej przeznaczonej do domowego uytku [19].
5.1.7. Automatyzacja i przeroczysto
System telemedyczny po wdroeniu powinien funkcjonowac w sposb automatyczny, a jego
dzialanie nie moe byc uciliwe ani dla pacjenta, ani dla lekarza.
5.2. Obszary zastosowa telemedycyny
Telemedycyna jest coraz czciej wykorzystywana w placwkach sluby zdrowia,
szczeglnie tam gdzie pozwala to w znacznym stopniu poprawic jakoc uslug medycznych,
zaoszczdzic czas pracownikw i zmniejszyc koszty procesu diagnostyczno-terapeutycznego
[23].
Do najczstszych obszarw wykorzystania telemedycyny nale:
konsultacje specjalistyczne - konsultacje przeprowadzane z lekarzem specjalist
z innego szpitala
Gugotrwae leczenie, okresowe przegldy - diagnozowanie i monitorowanie
zdrowia pacjenta w domu
asystowanie przy trudnych zabiegach chirurgicznych - lekarz z innego szpitala
moe wspomagac lekarza przeprowadzajcego zabieg
medycyna powypadkowa - wyposaenie karetek pogotowia w specjalistyczny sprzt
informujcy personel szpitala o biecym stanie zdrowia pacjenta
e-nauczanie - dodatkowa moliwoc szkolenia lekarzy oraz personelu medycznego
17
II. Cz praktyczna
W czci praktycznej zostanie przedstawiony autorski system wspomagajcego lekarza
w diagnozowaniu na podstawie dostarczonych zdjc medycznych.
Rozdzia 6. Koncepcja systemu
Lekarz za pomoc komputera podlczonego do Internetu komunikuje si z systemem
InterMed. Dziki dostarczonemu przez system interfejsowi ma on moliwoc przegldania
listy dostpnych bada, dodania nowego badania, i podgld konkretnego badania. Moe
rwnie skonsultowac wyniki badania z innym lekarzem (konsultantem, np: radiologiem),
ktry wyrazi swoj opini na podstawie obrazw medycznych dolczonych do badania.
Dodatkowo lekarz moe poinformowac pacjenta o wynikach za pomoc wiadomoci e-mail.
Pacjent otrzymuje diagnoz oraz ewentualn propozycj kolejnej wizyty. Ta forma
komunikacji midzy pacjentem a lekarzem nie jest jednak wystarczajca i powinna zostac
potwierdzana telefonicznie.
Wszystkie dane w systemie przechowywane s na serwerze. Znajduj si tam informacje
o badaniu oraz zdjcia diagnostyczne.
Wsplnym medium komunikacyjnym jest Internet. To dziki niemu realizowana jest
komunikacja pomidzy lekarzem i konsultantem, oraz pacjentem.
Rysunek 6.1. Koncepcja systemu
18
Rozdzia 7. Analiza wymaga
Okrelenie tego, co oprogramowanie powinno oferowac (czyli analiza wymaga) jest jedn
z najwaniejszych czci procesu tworzenia systemu. Jeli twrca nie zna dokladnie
problemu, ktry ma rozwizac, to jest malo prawdopodobne, e znajdzie uyteczne
rozwizanie. Jeeli klient, dla ktrego jest przeznaczone oprogramowanie, nie zostanie
wysluchany i zrozumiany, to prawdopodobnie nie bdzie zadowolony z wyniku [6].
Wynikiem analizy wymaga powinna byc dokumentacja wymaga, zapisana za pomoc
prototypw, specyfikacji, jak rwnie modeli formalnych.
7.1. Sownik
W celu zapewnienia poprawnej komunikacji midzy uytkownikami systemu, a jego twrc,
zostal przygotowany slownik terminw projektu. Zawiera on wszystkie terminy i specyficzne
slownictwo uywane podczas dyskusji o wymaganiach systemu [5].
Slownik terminw (terminw, akronimw, skrtw):
InterMed
Skrt od nazwy analizowanego systemu: InterMed - Internetowy system
wspomagajcy lekarza w diagnozowaniu na podstawie obrazw medycznych.
synonim: system
Dostawca
Dostarcza system InterMed (np. firma informatyczna).
Klient
Instytucja lub osoba, ktra zamawia system od dostawcy.
Lekarz
Glwny uytkownik systemu, ktry moe korzystac ze wszystkich jego funkcji.
Konsultant
Lekarz posiadajcy konto w systemie. Poproszony przez innego lekarza konsultuje
jego badanie.
Pacjent
Osoba, dla ktrej zostalo przeprowadzone badanie.
19
Administrator
Osoba dbajca o poprawn prac systemu InterMed. Dodaje i uaktualnia list
pacjentw i lekarzy.
synonim: operator
Ekran Logowania
Czc systemu InterMed, umoliwiajca logowanie do systemu.
E-L
Skrt od Ekranu Logowania.
Ekran Badania
Czc systemu InterMed, ktra umoliwia przegldanie badania i zdjc do niego
dolczonych.
E-B
Skrt od Ekranu Badania
Ekran Listy Bada
Czc systemu InterMed, ktra wywietla spis wszystkich bada.
synonim: kartoteka bada
E-LB
Skrt od Ekranu Listy Bada.
Ekran Nowego Badania
Czc systemu InterMed, ktra umoliwia wprowadzenie kolejnego badania do
systemu.
synonim: Formularz Nowego Badania
E-NB
Skrt od Ekranu Nowego Badania.
Ekran Wyszukiwania
Czc systemu InterMed, ktra pozwala na wyszukiwanie bada wedlug zadanych
kryteriw.
20
E-W
Skrt od Ekranu Wyszukiwania.
Ekran Konsultacji
Czc systemu InterMed, ktra daje moliwoc wymieniania komunikatw pomidzy
lekarzem, a konsultantem.
E-K
Skrt od Ekranu Konsultacji.
Formularz Dodawania Zdj
Formularz umoliwiajcy lekarzowi zaladowanie zdjc medycznych na serwer.
Panel Opcji
Czc systemu InterMed, ktra wywietla dostpne opcje.
P-O
Skrt od Panel Opcji.
Serwer
Komputer z dostpem do Internetu, na ktrym jest wdroony system InterMed.
Klient internetowy
Program komunikujcy si z serwerem WWW np. przegldarka WWW.
synonim: klient WWW
Parametry badania
Czc informacji dot. badania tj: numer badania, nazwa badania, data badania, pacjent
(imi i nazwisko).
21
7.2. Modele systemu
Model jest to pewna koncepcja, pierwowzr systemu zapisany za pomoc obiektw
graficznych, prostych ksztaltw oraz schematw blokowych. Dziki temu moe byc on
analizowany nie tylko przez twrcw systemu (firm informatyczn), ale rwnie moe
sluyc do wyjanienia klientowi budowy systemu i funkcji jakie bdzie oferowal.
7.2.1. Model przepywu informacji
Modele przeplywu informacji obrazuj za pomoc diagramw, jakie zdarzenia zachodz
w systemie, co powoduj, jakie s procesy, komponenty oraz dane wejciowe i wyjciowe.
Na poniszym diagramie zostal zaprezentowany model przeplywu informacji dla systemu
InterMed.
Rysunek 7.1. Model przepywu informacji
22
'Nowe badanie' jest zdarzeniem, ktre zapocztkowuje proces 'Zapis informacji
o badaniu'. Proces ten jest wspomagany przez stron WWW. Danymi wejciowymi dla tego
procesu s zdjcia DICOM oraz zdjcia objtociowe. Cel jaki osigamy w wyniku tego
procesu, to wsparcie dla lekarza w procesie diagnozy. Danymi wyjciowymi z kolei s:
zarejestrowane badanie, wyslane wyniki do pacjenta oraz proba o konsultacj skierowana do
innego lekarza. 'Proba o konsultacj' jest rwnoczenie zdarzeniem wywolujcym
nastpny proces: 'Konsultowanie badania', ktry podobnie jak proces glwny ('Zapis
informacji o badaniu') jest wspomagana przez stron WWW.
7.2.2. Model architektury systemu
Model architektury prezentuje nam sposb organizacji elementw tworzcych system.
W przypadku InterMed mona wyrnic trzy obszary, w ktre zorganizowane s
poszczeglne czci systemu:
strefa klienta
obszar Internetu
serwerowa czc systemu
Rysunek 7.2. Model architektury systemu
Strefa klienta to komputery uytkownikw podlczone do sieci Internet.
Obszar Internetu obejmuje infrastruktur sieciow umoliwiajc kontakt klienta
z systemem.
23
Serwerowa cz systemu InterMed bdzie skladac si z czterech modulw:
Modul DICOM i Wizualizacja, ktre umoliwi skladowanie i przegldanie zdjc
medycznych.
Modul Komunikacja pozwoli na kontakt midzy lekarzami oraz wysylanie wynikw
do pacjenta.
Szkielet systemu bdzie obslugiwal kartotek bada (dodawanie, usuwanie,
przegldanie bada). Modul ten spaja wszystkie moduly w jeden zintegrowany
system.
System zostanie zaprojektowany do przechowywania dwch rodzajw danych:
dane tekstowe (informacje o badaniu, diagnoza)
grafika (obrazy medyczne)
7.3. Analiza wymaga funkcjonalnych
Wymagania funkcjonalne definiuj, jakie uslugi zaoferuje system oraz jak bdzie si
zachowywal w okrelonych sytuacjach. Wynikaj one glwnie z potrzeb uytkownika, ktry
wskazuje konkretne udogodnienia oczekiwane od systemu.
W trakcie projektowania systemu InterMed skorzystano z jzyka UML (ang. Unified
Modeling Language - Ujednolicony Jzyk Modelowania) [36]. Skladaj si na niego grupy
notacji graficznych, ktre slu do opisywania i projektowania systemw oprogramowania,
w szczeglnoci systemw oprogramowania obiektowego [8]. Dziki takiemu podejciu
(wysoki poziom abstrakcji) powstala dokumentacja projektowa jest zrozumiala nie tylko dla
twrcw systemu, ale rwnie dla klienta.
Caly proces modelowania zostal wykonany przy pomocy narzdzia IBM Rational Software
Architect.
IBM Rational Software Architect [37] jest zintegrowanym narzdziem projektowym
i programistycznym, ktre umoliwia wykorzystanie techniki programowania
modelowego w jzyku UML do opracowywania dobrze zaprojektowanych aplikacji i
uslug.
W przeprowadzonej analizie wymaga zostal utworzony zestaw diagramw i schematw,
ktre opisuj kluczowe funkcje systemu i sposb ich dzialania. W pierwszej kolejnoci
okrelono czego uytkownicy i klienci mog oczekiwac od systemu. W tym celu
wykorzystano nastpujce techniki jzyka UML:
Przypadki uycia systemu - opisuj w jaki sposb konkretni Aktorzy (nazwa
uytkownika w notacji UML) komunikuj si z systemem. Prezentuj one rwnie
podstawow funkcjonalnoc systemu istotn z punktu widzenia klienta/uytkownika.
Diagram czynnoci - przedstawia przeplyw czynnoci w trakcie korzystania
z systemu InterMed. Ukazuje on w jakie interakcje wchodz dzialania uytkownikw
i dzialania systemu. Dziki temu diagramowi uwidoczniony zostal kontekst dla
przypadkw uycia.
24
Podczas analizowania wymaga zostal poloony szczeglny nacisk na interakcje pomidzy
konkretnymi osobami, a systemem. Pomidzy glwnymi Aktorami systemu - Lekarzem
i Konsultantem - rwnie zachodz interakcje, co zostalo przedstawione na poniszym
diagramie:
Rysunek 7.3. Przegld aktorw systemu
W systemie InterMed ta interakcja oznacza, e kady lekarz moe konsultowac
przeprowadzane przez siebie badanie z dowoln iloci innych lekarzy - konsultantw.
Interakcje wystpujce pomidzy poszczeglnymi Aktorami, a systemem w notacji UML,
oznacza si za pomoc przypadkw uycia. Na poniszym diagramie zostaly przedstawione
kluczowe przypadki uycia zachodzce w systemie i pogrupowane wedlug tzw. ekranw,
w ktrych s one dostpne.
25
Rysunek 7.4. Kluczowe przypadki uycia
Na podstawie diagramw przypadkw uycia widzimy, e Lekarz ma moliwoc midzy
innymi: zalogowania si, dodania nowego badania, wyslania proby o konsultacj do innego
Lekarza itd. Natomiast Konsultant w sytuacji konsultowania badania innego Lekarza posiada
26
prawa odczytu dla tego badania (podgld zdjc medycznych, odczyt diagnozy Lekarza) oraz
moliwoc wyslania odpowiedzi (swojej diagnozy).
Dla kluczowych przypadkw uycia zostal zaprojektowany diagram czynnoci. Pozwala on
zorientowac si jaka moe byc kolejnoc wykonywania operacji przez uytkownika podczas
pracy z systemem.
27
Rysunek 7.5. Diagram czynnoci dla kluczowych funkcji systemu
28
7.4. Analiza wymaga niefunkcjonalnych
Wymagania niefunkcjonalne nie dotycz bezporednio konkretnych funkcji systemu.
Wprowadzaj raczej ograniczenia na system oraz specyfikuj warunki uytkowania
poszczeglnych jego czci. Wynikaj one z potrzeb uytkownika [7].
7.4.1. Bezpieczestwo
Kade oprogramowanie zarzdzajce danymi uytkownika wymaga zastosowania
szczeglnych rodkw bezpieczestwa. Z jednej strony wymaga tego prawo o ochronie
danych osobowych, a z drugiej strony niepewny system nigdy nie zdobdzie zaufania
uytkownika.
Poniej wypisano wymagania stawiane bezpieczestwu systemu InterMed.
CECHA WERYFIKOWALNY WYMIAR
Bezpieczne przechowywanie hasel
Hasla przechowywane w bazie
wylcznie w postaci zakodowanej
Bezpieczna transmisja danych klient-serwer-klient Szyfrowane polczenie klient-serwer
Tabela 7.1. Wymagania dot. bezpieczestwa systemu 3DVS
7.4.2. Wymagania sprztowe
System InterMed do poprawnej pracy bdzie wymagal dostarczenia odpowiedniego sprztu
oraz infrastruktury sieciowej. Najwaniejsze z punktu widzenia uytkownika jest to, e
wystarczy mu redniej klasy komputer z dostpem do Internetu oraz zainstalowanym
oglnodostpnym oprogramowaniem (przegldarka WWW). Z punktu widzenia systemu
kluczow rol bdzie mialo zagwarantowanie duej przestrzeni dyskowej w bazie danych
oraz szybki Internet.
Rysunek 7.6. Wymagania sprztowe
29
Szczeglowo wymagania sprztowe zostaly zebrane w poniszej tabeli:
CECHA WERYFIKOWALNY WYMIAR
Serwer bazy danych Umoliwiajcy przechowywanie danych binarnych (zdjcia)
Serwer aplikacji
Liczba klientw internetowych komunikujca si
jednoczenie z serwerem: nieograniczona
Urzdzenia wejcia (dla
Lekarza i Odbiorcy)
Klawiatura, mysz
Urzdzenia wyjcia (dla
Lekarza i Odbiorcy)
Monitor, opcjonalnie drukarka
Tabela 7.2. Wymagania dot. sprztu
7.4.3. Pozostae wymagania systemu
Poniej zostaly opisane pozostale wymagania niefunkcjonalne systemu. Znajduj si tutaj
wytyczne i warunki jakie powinny zostac spelnione w celu uzyskania optymalnej pracy
calego oprogramowania. W miar moliwoci zostaly one zapisane ilociowo, co pozwoli na
jednoznaczn ich interpretacj oraz umoliwi przeprowadzenie testw wydajnociowych.
CECHA WERYFIKOWALNY WYMIAR
Internet
Prdkoc transmisji danych po stronie klienta internetowego: (zalecane
min. 100 kB)
Przegldarka
WWW
Przegldarki preferowane: IE 5.0, Firefox 1.07- lub nowsze wersje
Format zdjc (zbir
wejciowy)
1. Zdjcia w formacie DICOM
2. Zdjcia obitociowe (format nieustandaryzowany)
Rozmiar
Wymagana pojemnoc dyskowa serwera bazy danych: 1TB
Liczba rekordw w bazie: nieograniczona
Wydajnoc
Czas odpowiedzi na danie zalogowania do systemu: 1sek
Czas odpowiedzi na otwarcie przegldarki: czas przeslania 1MB x
rozmiar pobieranych danych
Czas pobierania zdjc medycznych na komputer klienta: czas
przesylania 1MB x rozmiar pobieranych danych
Przenaszalnoc
Platforma docelowa: system niezaleny od platformy
% kodu zalenego od platformy docelowej: - z punktu widzenia
Lekarza/Odbiorcy: 0% kodu zalenego - z punktu widzenia
systemu/Administratora: 5% kodu zalenego od bazy danych
Latwoc
uytkowania
Czas niezbdny do przeszkolenia Lekarza: 1-2 godziny
Czas niezbdny do przeszkolenia Konsultanta: 0.5 godziny
Czas niezbdny do przeszkolenia Administratora: 3godziny
Tabela 7.3. Pozostae wymagania dot. systemu 3DVS
30
Rozdzia 8. Projekt i wykonanie systemu
8.1. Modelowanie zachowa systemu
Na etapie przygotowywania projektu rwnie zostala wykorzystana notacja UML. Jednak
w tym wypadku powstale modele s bardziej szczeglowe od modeli wykonanych w trakcie
analizy wymaga.
Rodzaje diagramw jakie zostaly uyte na tym etapie:
Diagramy klas.
Obrazuj ogln struktur systemu, pokazujc klasy i ich wzajemne relacje.
Diagramy sekwencji.
Modeluj najwaniejsze scenariusze wykonania poszczeglnych przypadkw uycia
systemu.
Diagramy komunikacji.
Pokazuj polczenia i interakcje midzy obiektami.
Diagramy pakietw,
Przedstawiaj w oglnym wietle organizacj oprogramowania. Diagramy pakietw
stanowi dobr logiczn map systemu.
Diagram wdroenia.
Pokazuj one fizyczn konfiguracj oprogramowania i sprztu.
Uwagi:
Poniej zostaly przedstawione najwaniejsze aspekty analizy zachowa systemu.
Pelna dokumentacja projektowa w postaci diagramw UML zostala umieszczona
w zalcznikach w formie elektronicznej.
Przykladowy diagram klas odpowiadajcy przypadkowi uycia Dodaj badanie wyglda
nastpujco:
31
Rysunek 8.1. Diagram klas dla przypadku uycia 'Dodaj badanie'
Lekarz uzupelnia w przegldarce internetowej formularz nowego badania (formularz badania
jest reprezentowany przez klas ekranNowegoBadania). Z rozwijanej listy wybiera pacjenta
(odpowiedzialna jest za to metoda wyswietlListePacjentw() ). Po zatwierdzeniu nowego
badania (metoda dodajBadanie() ) informacje z formularza s pobierane, sprawdzane
i zapisywane w bazie (ta czc jest realizowana przez klas noweBadanieCTR). Baza jest
reprezentowana przez klas badanieDB.
Poniszy diagram sekwencji szczeglowo obrazuje kolejnoc przeplywu komunikatw
w czasie dla przypadku uycia Dodaj badanie. Formularz wypelniony przez lekarza, po
sprawdzeniu (akcja: sprawdzFormularzNB) przez obiekt kontrolny noweBadanieCTR moe
okazac si bldnie uzupelniony. Spowoduje to wyslanie informacji zwrotnej do lekarza
z prob o podanie poprawnych danych (akcja: infoPoprawFormularz). Natomiast gdy
system nie bdzie mial zastrzee nowe badanie zostanie zapisane w bazie danych (akcja:
dodajBadanie).
32
Rysunek 8.2. Diagram sekwencji dla przypadku uycia 'Dodaj badanie'
Na podstawie diagramu sekwencji zostal utworzony diagram komunikacji, ktry informuje
o interakcjach i polczeniach poszczeglnych obiektw.
33
Rysunek 8.3. Diagram komunikacji dla przypadku uycia 'Dodaj badanie'
Zaprojektowany diagram pakietw dla systemu pokazuje powizania i logiczne przejcia
pomidzy poszczeglnymi ekranami. Pakiety reprezentuj funkcje okrelone dla rnych
obszarw w systemie. Po zalogowaniu mamy opcje dostpne w Panelu Opcji, moemy np.
wybrac pakiet Ekran Nowego Badania (czyli przejc do strony oferujcej formularz nowego
badania), nastpnie przechodzc do pakietu Ekran Badania moemy m.in. podgldnc
badanie, obejrzec zdjcia z badania. Ostatnim punktem tej cieki jest Ekran Konsultacji,
ktry oferuje komunikacj z innymi Lekarzami.
Oczywicie z kadego Ekranu mona bezporednio powrcic do Panelu Opcji. Na
diagramie jednak nie zostaly umieszczone te polczenia poniewa rysunek stracilby wtedy
przejrzystoc.
34
Rysunek 8.4. Diagram pakietw
W kolejnym etapie modelowania zachowa systemu zostal przygotowany diagram wdroenia.
35
Rysunek 8.5. Diagram wdroenia
Przedstawia on wzly systemu (stacje robocze, serwery), na ktrych s wdroone
poszczeglne artefakty, czyli elementy aplikacji InterMed (baza danych, aplikacja
internetowa). Na serwerze (lub serwerach) s zainstalowane i skonfigurowane: aplikacja oraz
baza danych. Administrator (bazy danych i systemu) przy pomocy stacji roboczej lczy si
z glwnym serwerem slucym do zarzdzania wdroon infrastruktur. Lekarz natomiast
komunikuje si z systemem poprzez komputer osobisty.
Diagramy UML s bardzo czsto stosowane do dokumentowania wykonanego systemu. Ich
podstawow zalet jest to, e pozwalaj na oglne zrozumienie oprogramowania bez potrzeby
analizowania kodu.
8.2. Projekt bazy danych
Zaprojektowanie poprawnej struktury danych jest jednym z najwaniejszych czynnikw
decydujcych o powodzeniu przedsiwzicia. To od niej w duej mierze zaley
implementacja poszczeglnych modulw systemu. Najpowszechniej stosowan metod
modelowania danych jest modelowanie encja - relacja - atrybut, ktra obejmuje encje,
zwizane z nimi atrybuty i relacje midzy tymi encjami [7].
36
Istnieje wiele narzdzi wspomagajcych ten proces. Jednym z nich jest DBDesigner,
rozwijany na licencji Open Source.
DBDesigner jest narzdziem slucym do modelowania struktur bazy danych. Potrafi
on integrowac si z rnymi bazami danych (MySQL, Oracle) i dziki intuicyjnemu
interfejsowi uytkownika moe byc wykorzystywany nie tylko przez profesjonalistw,
ale rwnie przez osoby nie znajce skladni jzyka SQL.
Narzdzie to zostalo wykorzystane do zaprojektowania poniszego diagramu. Dziki niemu
zostal wygenerowany skrypt tworzcy struktur obiektw bazy danych.
Rysunek 8.6. Projekt bazy danych
Aby umoliwic przechowywanie danych w systemie zostaly przygotowane cztery tabele.
Dwie z nich (lekarz, pacjent) bd zawieraly dane o charakterze statycznym - wpisane raz,
z zaloenia nie powinny ulegac zmianie (moe zdarzyc si oczywicie koniecznoc ich
uaktualnienia, jednake system w podstawowej wersji nie bdzie posiadal takiej
funkcjonalnoci). Kolejne dwie tabele: badanie i diagnoza, bd bardzo aktywnie uywane
przez system. To wlanie one zawieraj wszystkie informacje o badaniu (tabela badanie)
oraz wystawionych diagnozach (tabela diagnoza).
37
W bazie danych nie bd przechowywane zdjcia medyczne, zostan one umieszczone na
dysku twardym serwera. W bazie znajd si jedynie informacje o ich lokalizacji.
Pomidzy tabelami zostaly utworzone relacje wskazujce zalenoci midzy danymi:
jeden lekarz moe przeprowadzic wiele bada
jeden pacjent moe byc wielokrotnie badany
dla jednego badania moe istniec wiele diagnoz (wystawionych przez wielu lekarzy-
konsultantw)
8.3. Projekt interfejsu uytkownika
Zadowolenie klienta jest jednym z najwaniejszych czynnikw decydujcych o powodzeniu
systemu. Nawet najlepszy projekt informatyczny moe zakoczyc si porak, jeli jego
uytkownicy nie bd chcieli z niego korzystac. Wielu ludzi w zetkniciu z komputerem
doznaje takiego szoku, e zaczynaj unikac wszelkiego rodzaju systemw informatycznych
[9]. Dlatego ten wlanie etap tworzenia aplikacji powinien zostac szczeglnie dokladnie
omwiony z uytkownikami systemu.
Podczas przygotowania projektu interfejsu uytkownika szczeglny nacisk zostal poloony na
prostot i wygod obslugi. Uytkownicy bez dowiadczenia z komputerami mog nauczyc si
jego uywania w cigu krtkiego szkolenia. Strona zostala podzielona na kilka sekcji (patrz
poniej), z ktrych kada ma cile okrelon funkcj.
Rysunek 8.7. Projekt interfejsu
38
LOGO
Logo systemu InterMed.
Dane uytkownika
Informacje o zalogowanym uytkowniku (m.in. imi, nazwisko).
Menu grne podrczne
Zawiera linki szybkiego wyboru (strona startowa, informacje o systemie).
Menu boczne
Zawiera linki do poszczeglnych funkcji systemu.
Cz dynamiczna
W tej czci wywietlane s wszystkie informacje, jakich uytkownik sobie yczyl,
korzystajc z menu bocznego
Pomoc kontekstowa
Pomoc dla biecej akcji/operacji.
Stopka
Informacja o autorze systemu.
Projekt strony zostal wykonany z uyciem technologii internetowych HTML, CSS,
JavaScript.
Szablon strony zostal przygotowany na podstawie szablonu Clean Look 1.5.0. [38]
Uwagi:
Szablon Clean Look 1.5.0 jest udostpniany na licencji Creative Commons
Licenses 2.0. Jeli system InterMed bdzie wykorzystywany komercyjnie naley
zmienic szablon strony na inny.
8.4. Iteracyjny proces budowania systemu
Do realizacji systemu InterMed zostal wybrany iteracyjny model wytwarzania
oprogramowania. Caly projekt zostal podzielony na cztery moduly rnice si
funkcjonalnoci: Szkielet Systemu, Modu DICOM, Modu Wizualizacja oraz
Komunikacja. Jeden cykl, podczas ktrego dla jednego modulu zostaly sprecyzowane
wymagania, powstal projekt i implementacja, a take przeprowadzono testy stanowil iteracj.
Pierwsz czynnoci bylo zebranie wymaga stawianych systemowi, po czym zostaly one
poddane szczeglowej analizie. Nastpnie w pelnym cyklu projektowania, kodowania
39
i testowania zostal przygotowany szkielet systemu, ktry poza tym, e oferuje wlasne funkcje,
pozwala rwnie na integracj pozostalych modulw. W kolejnych iteracjach zostaly
wykonane pozostale czci systemu, dodajc tym samym nowe moliwoci do ju
istniejcego szkieletu. Warto zauwayc, e po kadej skoczonej iteracji aplikacja dzialala
poprawnie i moe zostac wstpnie przekazana uytkownikowi do oceny.
Schemat zastosowanego procesu iteracyjnego przedstawiono poniej:
Rysunek 8.8. Iteracyjny proces budowania systemu
Podejcie iteracyjne (inaczej przyrostowe) wymusza na projektancie/programicie gruntowne
przemylenie architektury oprogramowania. Powinna byc ona elastyczna i dawac moliwoc
dolczania kolejnych funkcjonalnoci. Poza tym, technika ta pozwala na wczesne wykrycie
zagroe (min. przekroczenie terminw i budetu, le zaprojektowane interfejsy modulw)
oraz uzyskanie lepszej kontroli nad budow systemu.
W kadej iteracji w miar moliwoci byly przeprowadzane testy poprawnoci dzialania
systemu. W tym wypadku zostal zastosowany model V wytwarzania oprogramowania, ktry
jest nakierowany na cigl weryfikacj i walidacj wykonanych czynnoci. System InterMed
jest zloony z modulw, w sklad ktrych wchodz procedury i funkcje. Testowanie powinno
si zatem odbywac w wielu krokach, wraz z przyrastajcym kodem.
40
Rysunek 8.9. Proces V budowania i testowania poszczeglnych moduw
Zalet zastosowania procesu V jest to, e latwiej jest zlokalizowac miejsce bldu w kodzie lub
projekcie.
8.5. Opis poszczeglnych moduw systemu
System InterMed zostal rozdzielony na kilka modulw, z ktrych kady realizuje cile
okrelone funkcje. Takie rozwizanie w znaczny sposb ulatwia jego instalacj i dalsz
rozbudow. W przypadku awarii jednego z modulw DICOM, Wizualizacja lub Komunikacja
system jest w stanie dalej spelniac swoje podstawowe funkcje. Zapewnia to Szkieletu
systemu, ktry jest niezbdny do funkcjonowania aplikacji.
Rysunek 8.10. Dekompozycja systemu
41
Modulowa budowa systemu i uzyskana w ten sposb dua niezalenoc poszczeglnych
modulw jest rwnie korzystna z punktu widzenia uytkownika, ktry moe sam
zdecydowac z jakich funkcji systemu bdzie korzystal, a jakie mog zostac wylczone.
8.5.1. Szkielet systemu
8.5.1.1. Projekt techniczny
8.5.1.1.1. Modu nawigacji
Poruszanie po witrynie ulatwia przygotowany system nawigacji, ktry narzuca struktur
hierarchiczn dla calej witryny. Wraz z naciniciem danego linku przesylany jest do niego
wczeniej zdefiniowany skrt kategorii. Nastpnie w czci dynamicznej witryny otwierana
jest dana strona.
Drzewo witryny:
+---- "home" -> home.jsp
|
+---- "new" -> new.jsp
|
+---- "badanie" -> badanie.jsp
|
+---- "lista" -> lista.jsp
|
+---- "search" -> search.jsp
|
+---- "konsultacje" -> konsultacje.jsp
8.5.1.1.2. Logowanie do systemu i zarzdzanie sesj
Logowanie do systemu oraz mechanizm zarzdzania sesj zosta zaimplementowany
z zastosowaniem technologii JavaBeans (ziarenek Javy).
W momencie prby zalogowania do systemu tworzone jest ziarenko Javy logbean, po czym
uruchamiana jest funkcja authenticate(), ktra jako parametry przyjmuje nazw
Xytkownika oraz haso.
Jeli funkcja zwrci warto logiczn TRUE, wwczas pobierane s pozostae dane
Xytkownika (patrz: lista niej) oraz system przechodzi do spersonalizowanej witryny danego
lekarza. W przeciwnym wypadku system wywietla komunikat o braku uprawnie do
systemu.
42
Lista wDciwoci ziarenka logbean oraz odpowiadajce im wDciwoci:
username
setUsername()
getUsername()
password
setPassword()
getPassword()
imie
setImie()
getImie()
nazwisko
setNazwisko()
getNazwisko()
instytucja
setInstytucja
getInstytucja
W trakcie wylogowywania z systemu ziarenko jest kasowane z pamici usuwana jest sesja.
8.5.1.1.3. System pomocy
System pomocy umoliwia wywietlanie pomocy kontekstowej w trakcie pracy z systemem
(dostpny m.in. dla procesu: logowania, dodawania nowego badania).
Implementacja: funkcje JavaScript (help_window.js).
8.5.1.1.4. Kodowanie znakw
W projekcie jako system kodowania znakw wykorzystywany jest UTF-8.
<%@ page contentType="text/html;charset=UTF-8" %>
Aby rozwiza problem przesyania polskich znakw za pomoc akcji GET lub POST, np.
gwna ->(POST)-> g%C5%82%C3%B3wna
zostaa zaimplementowana klasa narzdziowa ogonki (plik ogonki.jsp)
8.5.1.1.5. Zarzdzanie poczeniem z baz danych - pula pocze
Aby zoptymalizowa wydajno zapyta wysyanych do bazy danych i nie otwiera
poczenia przy kadym zapytaniu zosta zaimplementowany mechanizm puli pocze.
Dziki temu rozwizaniu, pozwalajcemu na korzystanie z otwartych uprzednio pocze,
znacznie zmniejsza si czas potrzebny na dostp do bazy i mona rwnoczenie obsugiwa
kilka zapyta.
43
Aby korzysta z puli pocze, zostay zdefiniowane dwie klasy: jedna z nich reprezentuje
poczenie wchodzce w skad puli, a druga - sam pul.
1. Poczenie wchodzce w skad puli.
Klasa PoolConnection zawiera obiekt klasy Connection oraz znacznik wskazujcy,
czy dane poczenie jest wykorzystywane.
2. Pula pocze.
Aby mona byo korzysta ze zdefiniowanych pocze wchodzcych w skad puli
konieczny jest rwnie obiekt realizujcy sam pul, ktry bdzie zarzdza
poczeniami.
Wymagania jakie realizuje ten obiekt:
Przechowuje n otwartych pocze.
Monituje, ktre z pocze s wykorzystywane.
Jeli otwierane jest n+1 poczenie, otwiera je i dodaje do puli.
Przy zamykaniu puli wszystkie poczenia zostaj zamknite.
Uwagi:
Pula pocze zostaa opracowana na podstawie: "Java Server Pages -
Podrcznik z przykadami" [10]
8.5.1.2. Opis funkcjonalnoci
8.5.1.2.1. Logowanie do systemu
Po wpisaniu odpowiedniego adresu w przegldarce WWW uytkownik widzi stron
logowania. Aby uzyska dostp do systemu trzeba si zalogowa. Naley poda przy tym
nazw uytkownika oraz haso.
44
Rysunek 8.11. Okienko logowania
8.5.1.2.2. Strona gwna systemu
Po pomylnym zalogowaniu uytkownika wita strona gwna, ktra umoliwia mu dodanie
nowego badania, przegldanie istniejcej listy bada, a take wyszukiwanie interesujcych go
bada. W prawym grny rogu ekranu znajduj si informacje o aktualnie zalogowanym
Xytkowniku (imi, nazwisko, jednostka).
Rysunek 8.12. Strona gwna (powitalna)
45
8.5.1.2.3. Formularz nowego badania
Zaymy, e uytkownik (lekarz) wybierze opcj 'Nowe badanie'. Na ekranie pojawi si
wtedy pusty formularz, w ktrym mona uzupeni nastpujce informacje:
dat badania
kod badania
pacjent (wskazanie z listy)
diagnoza
Rysunek 8.13. Nowe badanie
Lekarz moe skorzysta z pomocy systemu klikajc ikonk . Wyskakuje wwczas okno
pomocy opisujce poszczeglne pola formularza.
46
Rysunek 8.14. Nowe badanie - pomoc
8.5.1.2.4. Podgld badania
Po dodaniu badana system automatycznie przenosi lekarza na stron 'Podgld badania'.
Znajduj si tutaj wszystkie informacje o badaniu, ktre zostay wpisane w formularzu
nowego badania.
Na dole ekranu znajduje si formularz umoliwiajcy dodanie zdj z badania zapisanych
zarwno w formacie DICOM, jak rwnie zdjcia objtociowe. W tym celu lekarz musi
wskaza odpowiednie pliki znajdujce si na dysku twardym komputera, z ktrego korzysta
i nacisn przycisk 'Zaaduj'. Po zaadowaniu zdj medycznych system umoliwia
nastpujce operacje:
przegldanie
Przegldanie zdj odbywa si dziki wbudowanym w system przegldarkom DICOM
i Wizualizacja.
pobranie na dysk
8ytkownik pobierajc obrazy medyczne na swj komputer bdzie mg je przeglda
bez czenia si z systemem InterMed. Wymaga to instalacji dodatkowego
oprogramowania.
usunicie
Po usuniciu zdj medycznych wywietlany jest ponownie formularz dodawania
plikw.
47
Rysunek 8.15. Wykonane badanie
Na stronie wywietlane s rwnie konsultacje dla badania - oczywicie pod warunkiem ich
uprzedniego przeprowadzenia. Znajduje si tutaj rwnie przycisk pozwalajcy na
wysyanie proby o konsultacje do innego lekarza.
W prawym grnym rogu ekranu zostay umieszczone przyciski umoliwiajce edycj
badania, usunicie badania oraz poinformowanie pacjenta o wynikach. Edytujc badanie,
lekarz ma moliwo jedynie zmiany diagnozy - pozostae pola maj zablokowan moliwo
edycji. Usunicie badania natomiast wymaga dodatkowego potwierdzenia, ktre pozwoli
ustrzec uytkownika przed przypadkowym skasowaniem wanych danych (patrz rysunek
poniej).
48
Rysunek 8.16. Potwierdzenie usunicia badania
Wszystkie opcje i ich znaczenie zostay opisane w pomocy.
Rysunek 8.17. Wykonane badanie - pomoc
8.5.1.2.5. Widok listy bada
Strona gwna, jak ju wczeniej wspomniano, oferuje podgld listy istniejcych bada. Po
wybraniu tej opcji, na ekranie pojawi si lista wszystkich bada nalecych do zalogowanego
lekarza, z ktrych kade moe by przegldane szczegowo, wyedytowane oraz usunite.
Dostpna jest take pomoc informujca o moliwych operacjach na wykonanym badaniu.
49
Rysunek 8.18. Widok listy bada
8.5.1.2.6. Wyszukiwanie bada
Jeeli lekarz wybra opcj 'Wyszukaj badanie', to pojawi si na ekranie formularz
pozwalajcy na szczegowe przeszukiwanie kartoteki bada. Dostpnymi kryteriami
wyszukiwania s: data, kod badania, dane pacjenta (imi, nazwisko, adres) oraz diagnoza.
Zaprojektowany podsystem wyszukiwania umoliwia wpisywanie niepenej informacji,
a w przypadku gdy nie uzupeniono jednego z pl, wwczas nie bdzie ono uwzgldniane
w trakcie wyszukiwania.
50
Rysunek 8.19. Wyszukiwanie bada
51
8.5.1.2.7. Informacja o systemie
Wybierajc przycisk 'O systemie' uytkownik uzyskuje informacj na temat systemu.
Rysunek 8.20. Informacja o systemie
8.5.2. Modu DICOM
Modu DICOM udostpnia przegldark zdj zapisanych w formacie DICOM, ktre zostay
dodane przez lekarza podczas wpisywania nowego badania.
8.5.2.1. Projekt techniczny
Modu DICOM zosta opracowany na podstawie projektu Open Source rozwijanego przez
Nagoya Institute of Technology, Iwata laboratory and Takahiro Katoji [39].
Do jego implementacji zostaa wykorzystana technologia Java Applet [40], sXca przede
wszystkim do tworzenia aplikacji uruchamianych w oknie przegldarki.
Integracja moduu DICOM ze Szkieletem Systemu InterMed zostaa przeprowadzona
z wykorzystaniem znacznika <APPLET> dostpnego w specyfikacji HTML. Dziki
dodatkowym parametrom konfiguracyjnym tego znacznika, mona okreli sposb
wywietlania przegldarki DICOM i wybra jakie dane zostan zaadowane.
52
Przykadowa konfiguracja zostaa przedstawiona poniej:
<APPLET
CODE = "dicomviewer.Viewer.class"
NAME = "Viewer.java"
WIDTH = 100%
HEIGHT = 100%
HSPACE = 0
VSPACE = 0
ALIGN = middle
>
<PARAM NAME = "imgURL0" VALUE = "FX01556\badanieCT.dcm">
</APPLET>
8.5.2.2. Opis funkcjonalnoci
Po lewej stronie przegldarki znajduje si panel opcji, ktry umoliwia modyfikacj zdj.
W oknie przegldarki mona przeglda jedno zdjcie, jak i seri zdj. Jest te tutaj dostpny
tryb filmu, dziki ktremu zdjcia mog by ogldane klatka po klatce, co uatwi analiz
zachodzcych zmian.
Rysunek 8.21. Modu DICOM
53
Pomocna rwnie moe okaza si opcja ZOOM, ktra powiksza wybrane fragmenty obrazu.
Rysunek 8.22. Modu DICOM - opcja 'ZOOM'
Przegldarka dostarcza take zestaw podstawowych filtrw do transformacji obrazu. Moemy
do nich zaliczy kontrast, regulacj jasnoci oraz negatyw. Przykady dziaania tych filtrw
zostay przedstawione poniej.
Rysunek 8.23. Modu DICOM filtry(1)
54
Rysunek 8.24. Modu DICOM filtry(2)
Zastosowanie filtrw dla obrazw medycznych moe znacznie wspomc proces
diagnozowania. Z jednej strony sX one do usunicia zbdnych szczegw, a z drugiej
strony pomagaj wzmocni pewne elementy obrazu, ktre co prawda istniej, ale s sabo
widoczne [15].
8.5.3. Modu Wizualizacja
Modu wizualizacja umoliwia skadowanie i przegldanie zdj objtociowych.
8.5.3.1. Projekt techniczny
Do opracowania moduu Wizualizacja zosta uyty projekt JIV: A 3D Image Data
Visualization and Comparison Tool [41] dostpny jako Open Source.
Modu Wizualizacja, podobnie jak Modu DICOM, zosta wykonany w technologii Java
Applet [40]. Pozwala to na uruchamianie go bezporednio w oknie przegldarki internetowej,
bez potrzeby instalacji dodatkowego oprogramowania.
Integracja tego moduu z systemem InterMed odbywa si poprzez odpowiednio
skonfigurowany znacznik <APPLET> w kodzie strony html. Przykadow konfiguracj
przedstawiono poniej:
<APPLET
ARCHIVE = "jiv.jar"
CODE = "jiv/Main.class"
NAME = "jiv_demo_3"
WIDTH = 400
HEIGHT = 50
>
<PARAM NAME="config" value="configFile">
</APPLET>
55
Za pomoc parametrw tego znacznika mona nie tylko ustali sposb wywietlania
przegldarki Wizualizacja, ale rwnie wskaza plik konfiguracyjny opisujcy format
danych wejciowych.
Poniej zostaa przedstawiona zawarto przykadowego pliku konfiguracyjnego
configFile:
jiv.panel.0 : colin27
colin27 : colin27.raw_byte.gz
colin27.header : colin27.header
Zdefiniowane w nim parametry wskazuj plik z danymi wejciowymi
(colin27.raw_byte.gz) oraz plik nagwkowy opisujcy te dane (colin27.header).
8.5.3.1.1. Uwagi do formatu plikw dla zdj objtociowych
Modu Wizualizacja otwiera i wywietla dane zapisane w postaci binarnej, do ktrych
wymagany jest plik nagwkowy opisujcy jego struktur (m.in. dugo, szeroko, krok).
W odrnieniu od formatu DICOM nie jest to format ustandaryzowany, tylko zaproponowany
przez Montral Neurological Institute, McGill University [42]. Czynnik ten ogranicza
w duym stopniu system InterMed, czynic z niego rozwizanie o charakterze badawczym.
Przykadowy plik nagwkowy (colin27.header):
size : 181 217 181
start : -90 -126 -72
step : 1 1 1
order : z y x
56
8.5.3.2. Opis funkcjonalnoci
Przegldarka zdj objtociowych wywietla zdjcia, dodane przez lekarza, w trzech
Saszczyznach: X,Y,Z. Uytkownik poruszajc si po jednej z tych paszczyzn, obserwuje
zmieniajcy si obraz na pozostaych dwch.
Rysunek 8.25. Modu Wizualizacja: okno gwne
57
Na zdjciach mona zastosowa rne filtry graficzne, co zostao przedstawione na
poniszych rysunkach:
Zmiana koloru i nasycenia Segmentacja obrazu
Tabela 8.1. Filtry graficzne
8.5.4. Modu Komunikacja
8.5.4.1. Projekt techniczny
Modu Komunikacja zosta wykonany w tej samej technologii co Szkielet Systemu i w duym
stopniu bazuje na nim. Korzysta on z tych samych tabel (Lekarz, Badanie, Pacjent,
Diagnoza), gdzie zapisywane s wyniki kolejnych konsultacji.
Wysyanie wynikw do pacjenta poprzez wiadomo email, zostao wykonane za pomoc
znacznika html <a>: mailto.
Przykad 8.1. Skadnia znacznika mailto
mailto:adres@email.pl?subject=temat&body=tresc
Adresat, temat wiadomoci (subject) oraz tekst wiadomoci (body) zostaj automatycznie
uzupenione przez system.
58
Przykad 8.2. Przykad uycia znacznika mailto
mailto:mb1@poczta.pl?subject=Wyniki%20bada%C5%84&amp;body=tekst,%20tekst,%2
0tekst,%20tekst
8.5.4.2. Opis funkcjonalnoci
8.5.4.2.1. Konsultacje z innymi lekarzami
Kade badanie zapisane w systemie InterMed moe zosta skonsultowane z innymi
lekarzami. Lekarz przeprowadzajcy badanie, po wpisaniu wasnej diagnozy moe poprosi
innego lekarza o opini. Uzupenia w tym celu dodatkowy formularz, w ktrym wybiera
lekarza z listy oraz wpisuje krtk informacj do adresata wiadomoci.
Lekarz, ktry zosta poproszony o konsultacj, po zalogowaniu do systemu InterMed jest
powiadamiany o tym fakcie w postaci informacji w prawym grnym rogu ekranu. Klikajc
w link moe przeczyta, kto jest nadawc oraz zapozna si z treci wiadomoci. Na tej
stronie znajduje si formularz odpowiedzi, gdzie lekarz moe wpisa wasn diagnoz, jak
rwnie przycisk umoliwiajcy obejrzenie badania.
Rysunek 8.26. Ekran konsultacji
59
8.5.4.2.2. Informacja dla pacjenta
Wyniki kadego badania mog zosta wysane do pacjenta. Naley w tym celu klikn ikon
znajdujF si w oknie badania, co spowoduje utworzenie nowej wiadomoci email
w domylnym kliencie pocztowym uytkownika. Automatycznie zostanie wpisany adresat
wiadomoci (adres email pacjenta) oraz uzupeniona tre wiadomoci. Lekarz oczywicie
moe edytowa te informacje lub dopisa dodatkowy komentarz, np. propozycj kolejnej
wizyty.
Zaleca si aby przesanie tej wiadomoci zostao rwnie potwierdzone drog telefoniczn.
8.6. Opis instalacji i konfiguracji projektu.
System InterMed zosta wykonany przy uyciu oglno dostpnych (Open Source) narzdzi
i technologii, dziki czemu koszty wdroenia systemu bG znacznie nisze.
8.6.1. Przygotowanie infrastruktury sprztowej
Wymagania sprztowe systemu InterMed, w przewaajcym stopniu, zale od liczby
Xytkownikw systemu. Jest to gwny wskanik, ktry powinien by brany pod uwag
w trakcie wdroenia. Istotnym czynnikiem jest take sposb instalacji - moliwe warianty
zostay przedstawione w rozdziale 'Perspektywy zastosowania i rozwoju systemu'.
8.6.2. Przygotowanie niezbdnego oprogramowania
Wszystkie dane w systemie InterMed s skadowane w bazie danych MySQL, a caR
obsuguje serwer aplikacji Tomcat.
MySQL [43] jest jedn z najpopularniejszych baz danych dostpnych na licencji Open
Source. Dziki swojej wydajnoci, szybkoci dziaania i rozbudowanym
mechanizmom zabezpiecze jest wykorzystywana w bardzo wielu zastosowaniach.
Szczegln popularno zdoby w projektach opartych o sie Internet.
Apache Tomcat [44] jest serwerem aplikacji rozwijanym w ramach Apache Software
Fundation. Umoliwia uruchamianie aplikacji internetowych w technologiach Java
Servlets i JSP (Java Server Pages).
Sposb instalacji i konfiguracji powyszych narzdzi jest dostpny na stronach domowych
tych projektw.
60
8.6.3. Instalacja systemu InterMed
8.6.3.1. Konfiguracja bazy danych
8.6.3.1.1. Konto dla administratora bazy danych systemu InterMed
Powinno istnie konto uytkownika-administartora, ktry bdzie mia dostp do serwera bazy
danych.
8.6.3.1.2. Tworzenie struktury tabel
W bazie danych tworzona jest struktura tabel, w ktrych bG przechowywane dane. Skrypt
tworzcy znajduje si w zaczniku.
8.6.3.2. Konfiguracja serwera aplikacji
8.6.3.2.1. Utworzenie katalogu aplikacji
Trzeba zaR\ nowy katalog dla systemu InterMed w katalogu aplikacji serwera Tomcat
(\Tomcat 5.5\webapps\).
8.6.3.2.2. Ustawienie parametrw poczenia z baz danych
Naley ustawi parametry poczenia z baza danych w pliku \Tomcat
5.5\webapps\InterMed\WEB-INF\classes\foo\Connection.properties.
Przykadowa konfiguracja zostaa przedstawiona poniej:
HostName = localhost
SID = rpetryniak
Port = 3306
UserName = user
Password = user
8.6.4. Utrzymanie systemu
Zaleca si zatrudnienie administratora systemu, ktry po uprzednim przeszkoleniu bdzie dba
o poprawno pracy systemu. Do jego obowizkw naleDoby rwnie zakadanie kont
nowym uytkownikow (lekarzom) oraz dodawanie pacjentw do kartoteki. Czynnoci te
wykonywaby przy pomocy specjalnie przygotowanych skryptw SQL.
61
Rozdzia 9. Prba wizualizacji przestrzennej obrazu
Tematem tej pracy magisterskiej jest system informacyjny wspomagajcy lekarza
w diagnozowaniu na podstawie obrazw medycznych. Pocztkowo, nieodzowne wydawao
si zrealizowanie podsystemu wizualizacji trjwymiarowej, ktry dla serii paskich obrazw
medycznych tworzyby obraz przestrzenny. Cay ten proces odbywaby si w sieci Internet.
9.1. Wybr internetowej technologii wizualizacji przestrzennej.
Zadaniem techniki wizualizacji przestrzennej (3D) jest takie przedstawienie obrazu na
Saskim ekranie monitora, aby sprawia wraenie trjwymiarowoci. Istnieje bardzo wiele
algorytmw oraz narzdzi informatycznych, ktre pozwalaj osign ten efekt. Niektre
z nich przystosowane s take do pracy w sieci Internet. Ju teraz znajduj one zastosowanie
m.in. w turystyce (interaktywne wycieczki), budownictwie (plany domw), biznesie (reklama,
marketing) i oczywicie rozrywce (gry).
9.1.1. Przegld i krtka charakterystyka narzdzi wizualizacji w Internecie.
Istnieje wiele technologii wizualizacji przestrzennej, ale tylko niektre z nich s
przystosowane do uruchamiania w aplikacjach internetowych. Wybrane technologie oferujce
tak moliwo zostay opisane poniej.
Flash
Jest wykorzystywany gwnie do animacji obiektw paskich zapisanych w postaci
wektorowej. Dziki bardzo atwej integracji z jzykiem HTML, sta si nieodzownym
elementem multimedialnych witryn WWW.
http://www.adobe.com/products/flash/
Java3D
Jest to rozszerzenie jzyka Java, ktre pozwala na generowanie obiektw
trjwymiarowych. Bazuje na bibliotece OpenGL. Do uruchomienia wymaga
zainstalowanego rodowiska Java.
http://java.sun.com/products/java-media/3D/
VRML/X3D
VRML (z ang. Virtual Reality Modeling Language) to jzyk modelowania wirtualnej
rzeczywistoci trjwymiarowej [11].
Jego nastpca X3D zosta poddany standaryzacji przez konsorcjum ISO (International
Organization for Standardization).
http://www.web3d.org/
62
Technologi, jaka zostaa wybrana do wizualizacji by X3D. Ten niezalezny od platformy
format, dziki ustandaryzowaniu przez organizacj ISO daje pewno, e oprogramowanie,
ktre zostanie stworzone nie bdzie zalene od przyjtych zaRH. Rwnie fakt zapisu
plikw w formacie XML jest wielkim atutem, gdy mog one by odczytywane przez wiele
programw i poddawane dodatkowej analizie.
9.2. Przygotowanie danych
Aby mc generowa obiekt trjwymiarowy z paskich przekrojw (np. ze zdj .jpg), naleDo
odpowiednio przygotowa dane.
9.2.1. Wyznaczanie konturw
Pierwszym krokiem byo wyodrbnienie konturu.
Przeanalizowano grup narzdzi (bibliotek, programw), ktre daj moliwo wyznaczenia
konturw na analizowanym obrazie. Wikszo z nich jest oglnie dostpna (licencja Open
Source), jednake na przykadzie programu Corel PHOTO-PAINT zostaa sprawdzona
funkcjonalno komercyjnych rozwiza.
Analizowane narzdzia:
ImageJ
http://rsb.info.nih.gov/ij/
JH Labs
http://www.jhlabs.com/
JIMI
http://java.sun.com/products/jimi/
Corel PHOTO-PAINT
http://www.corel.com/
Uwagi:
Analiza porwnawcza moliwoci powyszych narzdzi w zakresie wykrywania
krawdzi zostaa przedstawiona w zaczniku w formie elektronicznej.
Proces wyodrbnienia konturu z obrazu polega na zastosowaniu kilku nastpujcych po sobie
filtrw graficznych. Ich wDciwy wybr oraz kolejno stosowania pozwoliy uzyska
oczekiwany rezultat.
63
ImageJ
rys 0. Obraz wejciowy
rys 1. Negatyw
rys 2. Filtr: Binaryzacja (Threshold)
64
ImageJ
rys 3. Filtr: Szukanie krawdzi (Find
Edges)
rys 4. Negatyw
Tabela 9.1. Zdjcia z badania rezonansem magnetycznym
Uwagi:
W przypadku zdj sabej jakoci wyznaczenie konturw nie zawsze jest moliwe.
Dlatego naley doR\ wszelkich stara, aby rejestrowanie obrazw odbywao si z jak
najwiksz starannoci.
9.2.2. Wyznaczanie wsprzdnych
Kolejnym krokiem byo wyznaczenie wsprzdnych konturu. Poniewa zazwyczaj kada
seria obrazw ma inne wymiary (dugo, szeroko) dlatego konieczne byo odpowiednie
przeskalowanie tych obrazw.
Poniej zostaa przedstawiona implementacja algorytmu wyznaczajcego poRenie punktw
konturu i skalujcego obraz:
//zbir punktw
Set spoint = new HashSet();
int xx,yy;
int width = bimage.getWidth( null );
int height = bimage.getHeight( null );
65
for( int x=0; x < width; x++ ) {
for( int y=0; y < height; y++ ) {
int pixel = bimage.getRGB(x, y);
//wyznaczenie skadowych piksela
int apixel = 0xff & (pixel>>24);
int rpixel = 0xff & (pixel>>16);
int gpixel = 0xff & (pixel>>8);
int bpixel = 0xff & (pixel);
//okrelenie, czy piksel naley do konturu
if ( (apixel > 200) && (rpixel<100) && (gpixel<100) &&
(bpixel<100)) {
//skalowanie (max: 100)
xx = (100 * x)/width;
yy = (100 * y)/height;
//zapis do zbioru punktw
spoint.add( new Point(xx,yy) );
}
}
}
Powyszy algorytm dla zadanego obrazu wejciowego generuje zbir punktw, ktry
zapisywany jest do pliku.
Przykadowy wygenerowany zbir wsprzdnych:
(48, 49), (62, 46), (53, 52), (59, 58), (54, 37), (62, 51), (55, 53), (52, 52), (60, 39), (61,
57), (60, 42), (60, 44), (49, 38), (52, 34), (63, 39), (47, 47), (62, 45), (50, 35), (58, 34),
(60, 41), (55, 37), (55, 34), (62, 44), (61, 36), (52, 55), (53, 33), (62, 41), (62, 50), (60,
48), (55, 58), (54, 33), (57, 59), (61, 56), (60, 35), (59, 39), (61, 55), (60, 49), (50, 38),
(60, 50), (60, 47), (48, 44), (56, 37), (53, 53), (62, 43), (60, 51), (59, 53), (46, 45), (52,
37), (63, 41), (47, 45), (60, 45), (48, 48), (54, 53), (49, 40), (56, 58), (53, 37), (46, 44),
(59, 52), (46, 38), (48, 43), (60, 52), (52, 54), (46, 43), (52, 53), (47, 46), (53, 34), (62,
38), (51, 51), (55, 54), (57, 37), (48, 40), (59, 59), (48, 45), (57, 34), (62, 52), (50, 50),
(49, 35), (60, 43), (49, 50), (48, 41), (54, 57), (56, 59), (60, 46), (58, 38), (63, 38), (62,
49), (46, 40), (59, 35), (62, 54), (50, 52), (49, 39), (48, 42), (62, 47), (47, 36), (53, 57),
(62, 36), (50, 34), (56, 53), (57, 38), (62, 37), (46, 42), (48, 35), (59, 54), (60, 57), (50,
51), (63, 40), (62, 55), (60, 58), (53, 55), (56, 34), (58, 54), (58, 59), (56, 54), (62, 42),
(46, 41), (53, 56), (60, 40), (51, 53), (49, 47), (49, 49), (49, 48), (46, 39), (50, 37), (57,
54), (60, 36), (50, 49), (59, 38), (51, 34), (51, 52), (54, 34), (55, 57), (46, 36), (62, 53),
(62, 48), (48, 46), (46, 37), (51, 37), (49, 46), (58, 35), (50, 39), (48, 47), (60, 59), (48,
36), ...
Mona zauwa\, e otrzymalimy bardzo duo danych dla jednego przekroju.
Przechowywanie ich wszystkich wydaje si jednak konieczne, aby nie straci dokadnoci
analizowanego obrazu podczas generowania wizualizacji.
66
9.3. Wizualizacja VRML / X3D
Majc ju przygotowany zbir punktw reprezentujcych kontury dla poszczeglnych zdj
przekrojowych, zostanie podjta prba ich wizualizacji w technologii VRML / X3D.
9.3.1. Technologia VRML / X3D
Technologia VRML / X3D umoliwia gwnie modelowanie ksztatw regularnych, ktre
mona opisa za pomoc wzorw. Posiada ona rwnie mechanizmy wizualizacji obiektw
o nieregularnym ksztacie (sposb zapisu oraz uzyskane obrazy podano poniej).
Przykad 9.1. X3D: znacznik PointSet
<PointSet>
<Coordinate point="0.2138 0.2339 0.09065, 0.1078 0.2532 0.1026, ... "/>
<Color color=" "/>
</PointSet>
Przykad 9.2. X3D: znacznik IndexedFaceSet
<IndexedFaceSet coordIndex=" 0 1 2 -1 3 4 1 -1 ... ">
<Coordinate point="0.2138 0.2339 0.09065, 0.1078 0.2532 0.1026, ... "/>
</IndexedFaceSet>
67
Przykad 9.3. X3D: znacznik ElevationGrid
<ElevationGrid
height="0.0233242 0.0461275 0.0679003 ... "
solid="false"
xDimension="21" xSpacing="0.2" zDimension="21" zSpacing="0.15">
<Color color="1 0 0 1 0 0 1 0 0 1 ... "/>
</ElevationGrid>
9.3.2. Wizualizacja punktowa
Dla zastosowanych danych, ktre skaday si z 80 obrazw przekrojowych otrzymano blisko
25 ty. punktw. Aby utworzy wizualizacj dyskretn (punktow) skorzystano ze znacznika
<PointSet>.
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE X3D PUBLIC "ISO//Web3D//DTD X3D 3.1//EN"
"http://www.web3d.org/specifications/x3d-3.1.dtd">
<X3D
version="3.1" profile="Immersive"
xmlns:xsd="http://www.w3.org/2001/XMLSchema-instance"
xsd:noNamespaceSchemaLocation="http://www.web3d.org/specifications/x3d-
3.1.xsd" >
<Scene>
<Viewpoint description="Front View" orientation="0 1 0 3.14"
position="0.5 0.5 -2"/>
<NavigationInfo type='"EXAMINE" "WALK" "FLY" "ANY"'/>
<Shape>
<Appearance>
<Material/>
</Appearance>
<PointSet>
<Coordinate point="0.1 0.89 0.01, 0.09 0.48 0.01, 0.08 0.45
0.01, 0.05 0.54 0.01, 0.21 0.56, "/>
<Color color="1 1 1 "/>
</PointSet>
</Shape>
</Scene>
</X3D>
68
Problemem okazao si odtworzenie tych wizualizacji za pomoc dostpnych przegldarek
VRML/X3D.
Uwagi:
Opis i porwnanie przegldarek VRML/X3D zamieszczono w zaczniku
w formie elektronicznej.
Tylko jedna z nich (Flux Player [57]) potrafia poradzi sobie w miar pynnie, kolejna
(Octaga Player [56]) potrzebowaa sporo czasu aby zaadowa dane, inne przegldarki
(Cortona Player [55]) nie uruchamiay si dla tego przykadu.
Rysunek 9.1. Wizualizacja punktowa obrazw przekrojowych wygenerowana
w technologii X3D
9.3.3. Wizualizacja paszczyzny - napotkane problemy
Kolejnym etapem bya wizualizacja powierzchni. Problemem, jaki pojawi si podczas prby
zastosowania wybranej technologii (X3D), bya konieczno podania wszystkich wieloktw
wypeniajcych t powierzchni.
Aby zrealizowa ten cel, naleDoby wykona nastpujce czynnoci:
wykazanie, ktre punkty nale do konturu
okrelenie iloci wystpujcych paszczyzn (ich obszarw, przeci)
poczenie odpowiednich punktw z jednej paszczyzny z punktami paszczyzny
Vsiadujcej
zastosowanie algorytmw morfingu
Po dokadnej analizie tych zada okazao si, e ich zRono wykracza poza zakres tej pracy
magisterskiej. Dlatego do opracowania moduu Wizualizacja wykorzystano gotowe
komponenty informatyczne, ktre oferoway oczekiwan funkcjonalno.
69
Rozdzia 10. Perspektywy zastosowania i rozwoju systemu
Okazuje si, e istnieje kilka sposobw wdroenia systemu: moe on funkcjonowa zarwno
jako usuga zewntrzna udostpniana/sprzedawana klientowi, jaki i zosta bezporednio
zainstalowany na komputerze klienta. Kada z tych opcji ma swoje zalety i wady.
Wiadomo, e warto narzdzia informatycznego wzrasta, gdy istnieje moliwo jego
integracji z innymi narzdziami informatycznymi. Architektura mojego systemu moe
pozwoli w przyszRci na jego integracj z innymi istniejcymi systemami w szpitalach
(PACS, RIS, HIS).
10.1. Scenariusze uycia systemu
Dziki temu, e system InterMed oparty jest o sie Internet, jego instalacja odbywa si na
jednym komputerze-serwerze. Jest to bardzo wygodne rozwizanie ktre pozwala na atwe
zarzdzanie i utrzymanie systemu. Daje ono rwnie swobod dopasowania systemu do
specyfiki danego klienta.
10.1.1. System jako usuga zewntrzna
Jedn z moliwych opcji jest sprzeda klientowi nie rozwizania (systemu), tylko usugi
(dostpu do systemu). Jest to nowoczesne podejcie do zarzdzania aplikacjami
informatycznymi, ktre pozwala klientowi skupi si na istocie problemu, przenoszc
odpowiedzialno utrzymania systemu na dostawc.
Wady i zalety takiego podejcia zestawiono poniej.
Z punktu widzenia klienta Z punktu widzenia dostawcy
Zalety
Utrzymanie sytemu przez specjalistw tworzcych
system, ktrzy najlepiej wiedz jak nim zarzdza
8ytkownik nie ponosi kosztw zwizanych z
zakupem dodatkowego sprztu
Zarzdzanie danymi po stronie usugodawcy (np.
kopie bezpieczestwa)
Korzystanie z usugi wtedy kiedy jest rzeczywicie
potrzebna
Moliwo usprawnienia pracy
systemu bez wiedzy klienta
atwo utrzymania sytemu
(instalacja w jednym miejscu)
Wady
Konieczno posiadania szybkiego cza
internetowego
Wiksze opnienie w dostpie do danych
Odpowiedzialno za dane wielu
klientw
Due wymagania sprztowe
(sie, dyski)
Potrzeba zatrudnienia osb
dbajcych o poprawn prac
systemu
Tabela 10.1. System jako usuga zewntrzna z punktu widzenia klienta i dostawcy
porwnanie
70
10.1.2. System u klienta
System moe by rwnie zainstalowany na sprzcie klienta i w takim przypadku to wDnie
na nim spoczywa cze prac zwizanych z zapewnieniem jego poprawnego dziaania
(zatrudnienie administratora, zakup sprztu).
Take serwisowanie sprztu w przypadku awarii, bG te potrzeba dodania nowej
funkcjonalnoci bG zwizane z dodatkowymi kosztami i opnieniami w pracy systemu.
W tabeli poniej zebrano wady i zalety takiego podejcia.
Z punktu widzenia klienta Z punktu widzenia dostawcy
Zalety Szybki dostp do danych Nie wymagana dodatkowa infrastruktura
Wady
Zakup infrastruktury
Potrzebna osoba dbajca o
system
Instalacja i serwis u wielu klientw w wielu
miejscach
Tabela 10.2. Instalacja systemu u klienta - porwnanie zalet i wad
10.2. Perspektywy rozwoju i integracji systemu
System InterMed zosta opracowany jako rozwizanie samodzielne, o architekturze
zamknitej. Nie czy si on z innymi systemami szpitala (lub innej instytucji) w celu pobrana
z nich informacji lub zapisu wynikw, co uniemoliwia wykorzystanie informacji w nim
zgromadzonych w innych systemach szpitalnych. Dlatego aktualna posta systemu moe
VX\ jako narzdzie badawcze, bG te prototyp docelowego systemu.
Obecna architektura systemu zostaa przedstawiona na diagramie architektury systemu.
W kolejnych punktach zostan opisane moliwe sposoby rozwoju systemu w celu uczynienia
z niego narzdzia znajdujcego zastosowanie we wspczesnych systemach informatycznych
szpitala.
10.2.1. Obrazy pobierane z systemu PACS
W chwili obecnej operator za pomoc specjalnego formularza aduje zdjcia medyczne na
serwer, gdzie s umieszczane w strukturze katalogw. Czynno ta zwizana jest oczywicie
z dodatkow prac i jest podatna na rne bdy (brak / niekompletno danych). Sam fakt
przechowywania danych obrazowych pacjenta na serwerze dostpnym w Internecie moe
budzi obawy zwizane z bezpieczestwem i rwnie wymaga dodatkowych zabiegw
administracyjnych.
Integracja systemu InterMed z systemem PACS szpitala pozwoliaby zniwelowa te problemy
i zwolniaby z systemu obowizek archiwizacji danych medycznych. Integracja taka powinna
zosta wykonana z zachowaniem istniejcych standardw (DICOM), aby system InterMed
mg wspdziaD z dowolnym systemem PACS.
Propozycja architektury systemu uwzgldniajcej opisane zmiany zostaa zamieszczona na
poniszym diagramie.
71
Rysunek 10.1. Integracja z systemem PACS
10.2.2. Informacja o badaniu pobierana z systemu RIS / HIS
Brak integracji systemu InterMed z systemami HIS i RIS jest rwnie powanym
ograniczeniem, ktre z jednej strony wymusza wprowadzenie wszystkich informacji
w systemie (np. dane pacjenta) i z drugiej strony nie pozwala na wykorzystanie tych
informacji poza systemem.
Dlatego poczenie systemu InterMed z innymi systemami informacyjnymi szpitala (HIS,
RIS) wydaje si jak najbardziej suszne.
Model systemu po integracji:
Rysunek 10.2. Integracja z systemami RIS i HIS
72
10.2.3. Usprawnienie komunikacji poprzez wideo-konferencje
Modu komunikacji zaprojektowany w systemie nie umoliwia interakcji midzy
Xytkownikami w czasie rzeczywistym. W sytuacji krytycznej, kiedy opinia innego lekarza
jest potrzebna natychmiast, takie rozwizanie nie spenioby na pewno swojej roli
(komunikacja) i wymagaoby wsparcia np. poprzez sie telefoniczn.
Najlepszym sposobem usprawnienia komunikacji s wideokonferencje, ktre umoliwiaj nie
tylko prowadzenie dyskusji w czasie rzeczywistym, ale rwnie daj moliwo wizualnego
przedstawienia rozwizania danego problemu.
Model systemu z uwzgldnieniem wideokonferencji przedstawiono poniej.
Rysunek 10.3. Wsparcie poprzez wideokonferencje
Uwagi:
Powyszy model prezentuje wszystkie opisane wczeniej usprawnienia
i integracje systemu InterMed.
73
11. Zakoczenie
11.1. Podsumowanie
System informatyczny zrealizowany w ramach tej pracy magisterskiej jest projektem
innowacyjnym. Dziki zastosowaniu nowoczesnych technologii zwizanych z Internetem,
pozwala rozszerzy obszar zastosowania szpitalnego systemu informacyjnego, przyczyniajc
si tym samym do poprawy opieki nad pacjentem i redukcji kosztw operacyjnych. Aby
narzdzie to nie pozostao tylko prac badawcz i zostao wdroone we wspczesnych
systemach musi spenia okrelone warunki. Sdz, e najatwiej bdzie to stwierdzi
odpowiadajc na par zasadniczych pyta, z ktrych najwaniejsze to:
Czy system wspomaga skadowanie i przesyanie danych (w tym obrazw medycznych) na
odlegR?
Czy umoliwia konsultacj dwch lekarzy oraz komunikacj lekarza z pacjentem znajdujcym
si w innym miejscu?
Na te pytania mog odpowiedzie twierdzco, poniewa zaprojektowany system posiada takie
moliwoci. System ten mona uzna w pewnym sensie za rozwizanie kompletne, poniewa
oferuje lekarzowi nie tylko moliwo zarzdzania kartotek bada (opcja dodawania,
przegldania, usuwania, edycji bada), ale rwnie pozwala na zdalne konsultacje z innym
lekarzem i wysyanie wynikw do pacjenta.
Kolejnym wanym pytaniem jest:
Czy zaprojektowany system jest rozwizaniem dostpnym ze wzgldu na koszt wdroenia
i utrzymania dla przecitnego szpitala?
Czynnik ten by bardzo wany w trakcie realizacji projektu i zosta poRony duy nacisk na
moliwie niski koszt gotowego projektu. Uycie darmowych narzdzi i aplikacji powoduje, e
przewaajce wydatki przy wdroeniu systemu bG zwizane z zapewnieniem infrastruktury
sprztowej, a w przypadku dostatecznej komputeryzacji zainteresowanej placwki, koszty te
EG sprowadza si do zapewnienia stabilnej pracy wdroonego systemu.
Warto rwnie przeanalizowa sabe strony powstaego systemu. Na pewno problemem moe
by wymaganie duej przestrzeni na dysku twardym komputera dla skadowanych danych
obrazowych, oraz dostp do szybkich cz internetowych w celu zminimalizowania czasu
oczekiwania. W obecnej chwili system InterMed nie umoliwia integracji z innymi
systemami szpitala, co ogranicza obszar jego stosowania (propozycje rozwizania tego
problemu zostay przedstawione w rozdziale 'Perspektywy rozwoju i integracji systemu').
74
11.2. Prezentacja projektu
Projekt zrealizowany w ramach pracy magisterskiej zosta zaprezentowany przez autora
podczas Midzynarodowej Konferencji Naukowej Studentw Uczelni Medycznych [45],
ktra odbywaa si w dniach 6-8 kwietnia 2006 roku na Uniwersytecie Jagielloskim.
Wystpienie miao miejsce w trakcie Sesji Telemedycyny i Biocybernetyki dnia 08.04.2006.
Rysunek 11.1. Certyfikat wygoszenia pracy na konferencji
Prezentacja bya jedn z niewielu, na ktrych przedstawiono nie tylko istot poruszanego
problemu (i moliwe sposoby jego rozwizania), ale rwnie zaproponowano wasne
rozwizanie informatyczne.
Udzia w konferencji by dla autora bardzo cennym dowiadczeniem, poniewa realizowany
temat pracy magisterskiej mg zosta skonfrontowany ze rodowiskiem medycznym, dla
ktrego jest dedykowany.
75
11.3. Prowadzenie prac
Podczas realizacji pracy magisterskiej skorzystano z kilku technologii i rozwiza, ktre
bardzo uatwiy prowadzenie prac.
Przyczyniy si one w duym stopniu do poprawy organizacji zada na kolejnych etapach
pracy i pomogy osign zamierzony efekt. Poniej zostay pokrtce przedstawione niektre
z nich.
11.3.1. Portal projektowy
Po wybraniu tematu pracy magisterskiej i dyskusji z promotorem na temat celu i zakresu jaki
miaa by obejmowa, autor postanowi przygotowa portal internetowy [54] powicony jej
realizacji. Chciano w ten sposb publicznie poinformowa co bdzie przedmiotem bada
i jakie efekty udao si osign.
Na portalu zostay wyrnione trzy kategorie:
Informacje
Przedstawiono tutaj temat, cel oraz zakres projektu.
Dokumentacja
Jest to miejsce gdzie znajduj si opracowania powstae na kolejnych etapach
realizacji projektu.
Projekt
Tutaj natomiast zostay opisane techniczne aspekty realizacji tematu, tzn. uyte
technologie, narzdzia programistyczne oraz zaprezentowano projekty interfejsu
Xytkownika i struktur bazy danych.
Portal zosta przygotowany z wykorzystaniem narzdzia Apache Forrest.
Forrest [47] jest narzdziem klasy Open Source opracowywanym pod patronatem
Apache Software Fundation [46]
Umoliwia on transformowanie dokumentw z ronych formatw wejciowych
w jednolit prezentacj w jednym lub wielu formatach wyjciowych. Wykorzystanie
XML i szablonw XSLT pozwala na cakowite oddzielenie struktury dokumentu od
warstwy prezentacji. Forrest moe generowa statyczne dokumenty, albo zosta uyty
jako dynamiczny serwer umoliwiajcy automatyczne publikowanie treci
w Internecie.
76
Narzdzie to umoliwio publikowanie dokumentw opracowanych w wybranym przez autora
standardzie dokumentacji technicznej DocBook.
Poniej przedstawiono stron gwn portalu:
Rysunek 11.2. Portal projektowy
11.3.2. System kontroli wersji
Zgodnie z rad Andrew Hunta i Devida Thomasa [5], autor zawsze stara si uywa systemu
kontroli kodu rdowego - nie tylko podczas tworzenie oprogramowania, ale rwnie
w trakcie edycji dokumentw. Systemy tego rodzaju s czsto wykorzystywane przez firmy
komputerowe, jednake zaleca si stosowanie ich wszdzie tam gdzie wane jest zarzdzanie
treci [28].
Jednym z tego typu systemw jest Subversion.
Subversion (SVN) [48] jest zaawansowanym systemem kontroli wersji, ktry zosta
opracowany jako nastpca bardzo popularnego narzdzia CVS (Concurrent Versions
System).
77
W repozytorium (miejscu skadowania dokumentw) zostay utworzone dwie struktury
katalogw, dla projektu i dla dokumentacji. Zostay one przedstawione na poniszych
rysunkach:
Rysunek 11.3. Repozytorium: dokumentacja
Rysunek 11.4. Repozytorium: projekt
Cechy systemu, ktre byy szczeglne przydatne dla autora podczas realizacji pracy
magisterskiej:
1. Centralne skadowanie wszystkich dokumentw
Znacznie poprawio bezpieczestwo pracy, jednoczenie znoszc obowizek ciJej
archiwizacji kolejnych wersji.
2. Dostp do kadej poprzedniej wersji
Umoliwio podgld historii zmian, a take w szczeglnych przypadkach ich
anulowanie.
78
Dziki zaawansowanym mechanizmom porwnywania plikw mona byo w kadej chwili
dowiedzie si np. ktra zmiana spowodowaa bd wywietlania fragmentu dokumentacji lub
jaka bya poprzednia wersja danego tekstu.
Rysunek 11.5. Porwnywanie wersji
11.3.3. Format zapisu dokumentacji technicznej
Caa dokumentacja projektu, jak rwnie tre pracy magisterskiej, zostay opracowane
w ustandaryzowanym formacie dokumentacji technicznej DocBook.
DocBook [50] jest standardem dokumentacji technicznej, opracowywanym przez
organizacj OASIS (The Organization for the Advancement of Structured Information
Standards) [49], ktra rwnie rozwija inne znane standardy takie jak np.
OpenDocument. Jest to jzyk cile zdefiniowanych znacznikw XML (dawniej
rwnie SGML) opisujcych struktur dokumentu. Dziki dostpnoci wielu
gotowych szablonw transformacji (XSLT) istnieje moliwo wygenerowania
dokumentw w rnych formatach i nadanie im podanego wygldu.
Format ten zosta wybrany, poniewa pozwoli on skupi si na treci dokumentu, a nie jego
wygldzie. Za pomoc dostpnych znacznikw XML zdefiniowano co dany tekst oznacza
i jaka jest jego funkcja w strukturze dokumentu.
79
Poniszy przykad przedstawia jak zosta zapisany fragment definiujcy nazw systemu:
<para>6ownik terminw (terminw, akronimw, skrtw):</para>
<variablelist>
<varlistentry>
<term id="slownik_system">InterMed</term>
<listitem>
<para>
Skrt od nazwy analizowanego systemu: InterMed Internetowy system
wspomagajcy lekarza w diagnozowaniu na podstawie obrazw medycznych.
</para>
<para>synonim: system</para>
</listitem>
</varlistentry>
</variablelist>
Wybierajc ten standard zostaa osignita niezaleno si od systemu operacyjnego oraz
programu edycyjnego. W kadym momencie mona otworzy dokument w dowolnym
edytorze tekstu i wprowadzi poprawki. Czsto korzystano jednak z oglnodostpnego
programu XMLMind (XMLmind XML Editor Standard Edition) [51], ktry dba o poprawne
korzystanie ze standardu Docbook i umoliwia wygodn prac w trybie WYSIWYG.
Dziki temu, e dokumenty s zapisywane w postaci tekstowej mona nimi swobodnie
zarzdza przechowujc je w systemie zarzdzania treci. Umoliwio to atwy dostp do
poprzednich wersji i analiz rnic midzy nimi.
Dokumenty raz opracowane mona byo przetwarza do innych formatw wyjciowych lub
wywietla je na portalu projektowym.
11.3.4. WIKI
Na etapie przygotowywania treci pracy magisterskiej bardzo pomocne okazao si narzdzie
DokuWIKI. Umoliwio ono gromadzenie i opracowywanie treci w wygodny sposb
z dowolnego komputera podczonego do sieci Internet.
DokuWIKI [53] jest narzdziem typu WIKI, ktre umoliwia tworzenie i edytowanie
treci przez wielu uytkownikw bezporednio z poziomu przegldarki internetowej
(podobnie jak np. Wikipedia [52])
Narzdzie to przechowuje nie tylko aktualn wersj redagowanego tekstu, ale rwnie
wszystkie poprzednie, umoliwiajc w ten sposb analiz poczynionych zmian i
ewentualnie ich anulowanie.
Moliwa jest kontrola dostpu do systemu dziki zastosowaniu mechanizmw
autoryzacji.
80
Poniej przedstawiono sposb edycji spisu treci:
Rysunek 11.6. WIKI: edycja strony
81
12. Wnioski
1) Przygotowany projekt, po etapie dokadnej analizy, zosta zaimplementowany i jest
gotowy do wdroenia.
2) Dziki zastosowaniu darmowych narzdzi i oglnie przyjtych standardw moe by
on dalej rozwijany i dostosowywany do specyficznych wymaga uytkownikw.
3) Zrealizowany system jest rozwizaniem kompleksowym w zakresie, jaki obejmuje
(skadowanie i przegldanie zdj, komunikacja midzy lekarzami). Jednake
z powodu braku integracji z innymi moduami szpitalnego systemu informatycznego
moe by on traktowany jedynie jako projekt badawczy.
4) Pomimo badawczego charakteru, w peni realizuje on stawiane mu wymagania.
Zostaa umoliwiona komunikacja osb pracujcych nad danym badaniem, ktre
znajduj si w rnych miejscach geograficznych. W trakcie tworzenia systemu,
uwzgldniono potrzeb dostarczenia filtrw graficznych, pozwalajcych na
przetwarzanie obrazw w celu wydobycia istotnych informacji dla osoby
przegldajcej zdjcia.
82
13. Literatura
Ksiki
[1] Robert Rudowski. Copyright 2003 Wydawnictwo naukowe PWN SA. 83-011-4056-
9. Wydawnictwo naukowe PWN. Informatyka medyczna.
[2] Ewa Pitka. Copyright 2003 Wydawnictwo naukowe PWN SA. 83-011-4221-9.
Wydawnictwo naukowe PWN. Zintegrowany system informacyjny w pracy szpitala.
[3] Jayaram Udupa i Gabor Herman. Copyright 2000 CRC Press. 08-493-3179-X. CRC
Press. 3D Imaging in Medicine.
[4] Nadia Magnenat-Thalmann i Daniel Thalmann. Copyright 2004 John Wiley and Sons.
04-700-2316-3. John Wiley and Sons. Handbook of Virtual Humans.
[5] Andrew Hunt i David Thomas. 83-204-2672-3. WNT. 2000. Pragmatyczny programista. Od
czeladnika do mistrza..
[6] Dick Hamlet i Joe Maybee. 83-204-2844-0. WNT. 2003. Podstawy techniczne inynierii
oprogramowania.
[7] Sommerville Ian. 83-204-2795-9. WNT. 2003. Inynieria oprogramowania.
[8] Martin Fowler i Kendall Scott. 83-725-5171-5. LTP. 2002. UML w kropelce.
[9] Shneiderman Ben. 0-321-26978-0. Addison Wesley. 2004. Designing the User Interface.
[10] Goodwill James. Helion. 83-7197-358-6. 2001. Java Server Pages - podrcznik z przykadami.
[11] Dbkowski Kamil. Mikom. 1998. VRML97. Trzeci wymiar Sieci.
[12] Wojnar Leszek i Mirosaw Majorek. Fotobit Design. 1994. Komputerowa analiza obrazu.
Rozprawy doktorskie
[13] Aneta Gdek. Wydzia Mechaniczny Politechniki Krakowskiej. 2005. Komputerowa analiza
obrazu regeneratu kostnego w metodzie Lizarowa.
[14] Zbigniew Lataa. Wydzia Mechaniczny Politechniki Krakowskiej. 2002. Zastosowanie
komputerowej analizy obrazu ultrasonograficznego do badania serca.
Artykuy
[15] Biuletyn Informatyki Medycznej. UHC sp. z o.o.. 12 kwietnia 2005. Szpitalny system
informatyczny yjcy organizm. 3-6.
[16] Biuletyn Informatyki Medycznej. UHC sp. z o.o.. 12 czerwca 2005. Nowe przegldarki
DICOM. 5.
83
[17] Biuletyn Informatyki Medycznej. UHC sp. z o.o.. 24 lutego 2006. Cyfrowa radiologia -
Kilka wyjanie co do terminologii. 5-6.
[18] Podstawowe problemy Informatyki Medycznej. Pawe Mikoajczak. Pracownia Technologii
Informatycznych, Instytut Fizyki, Uniwersytet M. Curie - Skodowskiej w Lublinie.
[19] Rewolucja informatyczna w medycynie. Prof.. Wodzisaw Duch. Katedra Metod
Komputerowych, Uniwersytet Mikoaja Kopernika.
[20] Computerworld. IDG. 26 kwietnia 2004. Zdrowie w normie. Edward Byczyski i Marek
Wesoowski.
[21] Telemedycyna w praktyce - modele telekonsultacji medycznych oraz ich wykorzystywanie w
ramach Krakowskiego Centrum Telemedycyny. dr in.. Aleksander Laurentowski, mgr in.. Dominik
Radziszowski, i Adam Koprowski.
[22] Internet medyczny - wpyw nowych rodkw komunikacji na wspczesne oblicze medycyny. Piotr
Kasztelowicz. Polskie Stowarzyszenie Internetu Medycznego, Odzia Grulicy i Chorb Puc,
Wojewdzki Szpital im. Ludwika Rydygiera w Toruniu.
[23] Biuletyn NASK. NASK. 2003. 1509-3603. Konsultacje medyczne za porednictwem
Internetu. 12-13.
[24] Nowoczesne architektury systemw telemedycznych. ukasz Czekierda, Joanna Kosiska, i Pawe
Rzepa. Katedra Informatyki EAIiE, Akademia Grniczo-Hutnicza.
[25] Analiza obrazw Tomografii Komputerowej. Rafa Stgierski i Pawe Mikoajczak. Pracownia
Technologii Informatycznych, Instytut Fizyki, Uniwersytet M. Curie - Skodowskiej w Lublinie.
[26] Wykorzystanie technik wizualizacji danych w medycynie. Bodak Cezary. Politechnika
Biaostocka, Instytut Informatyki.
[27] Vogel Burda Communications. Chip. marzec 2005. Sprztowe generowanie grafiki 3D. Biekowski
Marcin.
[28] Gazeta IT. 19 padziernika 2005. CVS system nie tylko dla programistw. Owsiak Micha.
http://www.gazeta-it.pl/rozmaitosci/git39/cvs.html.
Adresy WWW
[29] http://creativecommons.org/licenses/by-nc-sa/2.5/pl/
[30] http://www.acr.org/
[31] http://www.nema.org/
[32] http://medical.nema.org/
[33] http://www.k-pacs.net/
[34] http://homepage.mac.com/rossetantoine/osirix/
[35] http://www.hl7.org/
84
[36] http://www.uml.org/
[37] http://www-306.ibm.com/software/awdtools/architect/swarchitect/
[38] http://pribadi.or.id/diary/2005/05/27/clean-look-theme-for-wordpress-15/
[39] http://mars.elcom.nitech.ac.jp/dicom/index-e.html
[40] http://java.sun.com/applets/
[41] http://www.bic.mni.mcgill.ca/users/crisco/jiv/
[42] http://www.bic.mni.mcgill.ca/
[43] http://www.mysql.com/
[44] http://tomcat.apache.org/
[45] http://www.stn.cm-uj.krakow.pl/conf2006/
[46] http://apache.org/
[47] http://forrest.apache.org/
[48] http://subversion.tigris.org/
[49] http://www.oasis-open.org/
[50] http://www.docbook.org/
[51] http://www.xmlmind.com/xmleditor/stdedition.html
[52] http://pl.wikipedia.org/
[53] http://wiki.splitbrain.org/wiki:dokuwiki
[54] http://saturn.mech.pk.edu.pl/usr/rpetryniak/work/praca_mgr/
[55] http://www.parallelgraphics.com/products/cortona/
[56] http://www.octaga.com/download_octaga.html
[57] http://www.mediamachines.com/playerproductpage.html
85
Dodatek A. Zaczniki
A.1. Struktura katalogw aplikacji WWW
\Apache Software Foundation\Tomcat 5.5\webapps\praca_mgr
| about.html
| badanie.jsp
| badanieCTR.jsp
| home.jsp
| index.jsp
| konsultacje.jsp
| konsultacjeCTR.jsp
| konsultacjeLista.jsp
| lista.jsp
| listaCTR.jsp
| new.jsp
| search.jsp
| start.jsp
| user.jsp
|
+---help
| badanie.html
| konsultacje.html
| lista_badan.html
| lista_konsultacji.html
| logowanie.html
| nowe_badanie.html
| szukaj_badania.html
|
+---narzedzia
| help_window.js
| ogonki.jsp
| utf8.txt
|
+---res
| | pomoc.gif
| | style.css
| |
| \---buttons
| editperson.gif
| mail.gif
| newtopic.gif
| trash.gif
|
\---WEB-INF
| web.xml
|
\---classes
| !readme.txt
|
+---dates
| JspCalendar.class
|
\---foo
| Connection.properties
| logbean.class
| logbean.java
|
\---polapol
ConnectionPool.class
ConnectionPool.java
PooledConnection.class
PooledConnection.java
86
A.2. Skrypty tworzce schemat bazy danych
-- ------------------------------------------------------------
-- Tabela zawiera informacje w danym badaniu.
-- ------------------------------------------------------------
CREATE TABLE badanie (
kodbad VARCHAR(20) NOT NULL,
pacjent_kodpac VARCHAR(20) NOT NULL,
lekarz_kodlek VARCHAR(20) NOT NULL,
databad DATE NULL,
zdicom VARCHAR(255) NULL,
zvolume VARCHAR(255) NULL,
PRIMARY KEY(kodbad, pacjent_kodpac, lekarz_kodlek),
INDEX badanie_FK_lek(lekarz_kodlek),
INDEX badanie_FK_pac(pacjent_kodpac)
);
-- ------------------------------------------------------------
-- Tabela przechowujca opisy diagnoz wystawione przez poszczeglnych lekarzy
-- (lekarza przeprowadzajcego badanie i lekarzy konsultantw).
-- ------------------------------------------------------------
CREATE TABLE diagnoza (
badanie_lekarz_kodlek VARCHAR(20) NOT NULL,
badanie_pacjent_kodpac VARCHAR(20) NOT NULL,
badanie_kodbad VARCHAR(20) NOT NULL,
diagnoza TINYTEXT NULL,
konsultant VARCHAR(20) NULL,
INDEX diagnoza_FK_bad_pac_lek(badanie_kodbad, badanie_pacjent_kodpac,
badanie_lekarz_kodlek)
);
-- ------------------------------------------------------------
-- Tabela z danymi lekarza, ktry przeprowadza badanie.
-- Tabela ta jest rwnie tabel uytkownikw systemu (kodlek + haslo)
-- ------------------------------------------------------------
CREATE TABLE lekarz (
kodlek VARCHAR(20) NOT NULL,
haslo VARCHAR(40) NULL,
imie VARCHAR(20) NULL,
nazwisko VARCHAR(30) NULL,
instytucja VARCHAR(100) NULL,
PRIMARY KEY(kodlek)
);
-- ------------------------------------------------------------
-- Tabela z danymi pacjenta, dla ktrego jest przeprowadzane badanie.
-- ------------------------------------------------------------
CREATE TABLE pacjent (
kodpac VARCHAR(20) NOT NULL,
imie VARCHAR(20) NULL,
nazwisko VARCHAR(30) NULL,
adres VARCHAR(100) NULL,
PRIMARY KEY(kodpac)
);
87
Dodatek B. Zaczniki w postaci cyfrowej
Spis zacznikw w postaci cyfrowej:
Uwagi:
Wszystkie opisane poniej zaczniki znajduj si na CD doczonym do pracy
oraz zostay umieszczone na stronie WWW [54].
1. System InterMed
Prototyp systemu - posta statyczna systemu InterMed, w ktrej poszczeglne
strony zawieraj zapisane na stae, przykadowe dane.
Schemat bazy danych - peny schemat bazy danych wraz z przykadowymi
danymi (dostpne tylko na CD doczonym do pracy).
Kod rdowy aplikacji - peny kod rdowy systemu InterMed (dostpne
tylko na CD doczonym do pracy).
2. Analiza wymaga
Architektura systemu - (IBM Rational Software Architekt) - wydzielone
diagramy UML, zapisane w osobnym pliku.
Architektura systemu - (IBM Rational Software Architect) - raport
szczegowy wygenerowany automatycznie przez program.
3. Przegld narzdzi wizualizacji medycznej
Uwagi:
W celu obejrzenia poniszych zacznikw wymagany jest dostp do sieci Internet.
Kada z poniszych stron prezentuje narzdzia jakie byy uywane / analizowane podczas
reazlizacji tej pracy magisterskiej, zarwno w postaci oryginalnej, jak i zmodyfikowanej.
Przegldarka DICOM - strona WWW, ktra prezentuje moliwoci moduu
DICOM.
Wizualizacja medyczna - strona WWW, ktra prezentuje moliwoci moduu
Wizualizacja.
The Visible Human Project - strona WWW, na ktrej zostaa zainstalowana
aplikacja Visible Human Viewer.
4. Prba wizualizacji przestrzennej obrazu
Wyznaczanie konturw - analiza porwnawcza wybranych narzdzi
programistycznych do wykrywania konturu obrazu.
Wizualizacja zdj tomograficznych - prba wizualizacji przestrzennej
obrazw przekrojowych w technologi X3D. Dane pochodz z badania
tomografem komputerowym.
Test Przegldarek VRML/X3D - analiza porwnawcza najpopularniejszych
przegladarek VRML/X3D.
88
Dodatek C. Tre i warunki licencji
Uznanie autorstwa-Uycie niekomercyjne-Na tych samych warunkach 2.5 Polska
Wolno:
kopiowa, rozpowszechnia, odtwarza i wykonywa utwr
tworzy utwory zalene
Na nastpujcych warunkach:
Uznanie autorstwa. Utwr naley oznaczy w sposb okrelony przez
Twrc lub Licencjodawc
8ycie niekomercyjne. Nie wolno uywa tego utworu do celw
komercyjnych.
Na tych samych warunkach. Jeli zmienia si lub przeksztaca
niniejszy utwr, lub tworzy inny na jego podstawie, mona
rozpowszechnia powstay w ten sposb nowy utwr tylko na podstawie
takiej samej licencji.
W celu ponownego uycia utworu lub rozpowszechniania utworu naley wyjani innym
warunki licencji, na ktrej udostpnia si utwr.
Kady z tych warunkw moe zosta uchylony, jeli uzyska si zezwolenie wDciciela
praw autorskich.
Powysze postanowienia w aden sposb nie naruszaj uprawnie wynikajcych z
dozwolonego uytku ani adnych innych praw.
89
Spis rysunkw
1.1. Zdjcie rentgenowskie doni ony Roentgena wykonane przez samego K.W. Roentgena w 1896
1.2. Zdjcie tomograficzne dziewicioletniej dziewczynki
1.3. Zdjcie przekrojowe gowy czowieka wykonane w badaniu rezonansem magnetycznym
1.4. Ultrasonografia czteromiesicznego podu
2.1. Budowa systemu PACS
6.1. Koncepcja systemu
7.1. Model przepywu informacji
7.2. Model architektury systemu
7.3. Przegld aktorw systemu
7.4. Kluczowe przypadki uycia
7.5. Diagram czynnoci dla kluczowych funkcji systemu
7.6. Wymagania sprztowe
8.1. Diagram klas dla przypadku uycia 'Dodaj badanie'
8.2. Diagram sekwencji dla przypadku uycia 'Dodaj badanie'
8.3. Diagram komunikacji dla przypadku uycia 'Dodaj badanie'
8.4. Diagram pakietw
8.5. Diagram wdroenia
8.6. Projekt bazy danych
8.7. Projekt interfejsu
8.8. Iteracyjny proces budowania systemu
8.9. Proces V budowania i testowania poszczeglnych moduw
8.10. Dekompozycja systemu
8.11. Okienko logowania
8.12. Strona gwna (powitalna)
8.13. Nowe badanie
8.14. Nowe badanie - pomoc
8.15. Wykonane badanie
8.16. Potwierdzenie usunicia badania
8.17. Wykonane badanie - pomoc
8.18. Widok listy bada
8.19. Wyszukiwanie bada
8.20. Informacja o systemie
8.21. Modu DICOM
8.22. Modu DICOM - opcja 'ZOOM'
8.23. Modu DICOM filtry(1)
8.24. Modu DICOM filtry(2)
8.25. Modu Wizualizacja: okno gwne
8.26. Ekran konsultacji
9.1. Wizualizacja punktowa obrazw przekrojowych wygenerowana w technologii X3D
10.1. Integracja z systemem PACS
10.2. Integracja z systemami RIS i HIS
10.3. Wsparcie poprzez wideokonferencje
11.1. Certyfikat wygoszenia pracy na konferencji
11.2. Portal projektowy
11.3. Repozytorium: dokumentacja
11.4. Repozytorium: projekt
11.5. Porwnywanie wersji
11.6. WIKI: edycja strony
90
Spis tabel
7.1. Wymagania dot. bezpieczestwa systemu 3DVS
7.2. Wymagania dot. sprztu
7.3. Pozostae wymagania dot. systemu 3DVS
8.1. Filtry graficzne
9.1. Zdjcia z badania rezonansem magnetycznym
10.1. System jako usuga zewntrzna z punktu widzenia klienta i dostawcy - porwnanie
10.2. Instalacja systemu u klienta - porwnanie zalet i wad
Spis przykadw
8.1. Skadnia znacznika mailto
8.2. Przykad uycia znacznika mailto
9.1. X3D: znacznik PointSet
9.2. X3D: znacznik IndexedFaceSet
9.3. X3D: znacznik ElevationGrid

You might also like