Orvosi alkalmazások Orvosi alkalmazások grafikus grafikus
megjelenítésemegjelenítése
Megyesi ZoltánMegyesi ZoltánDr. Tornai RóbertDr. Tornai Róbert
2007. november 23. 9. Gyires Béla Informatikai Nap 2
ÁttekintésÁttekintés
►Együttműködés a Komputergrafika Együttműködés a Komputergrafika és a Nukleáris Medicina tanszékek és a Nukleáris Medicina tanszékek közöttközött
►Az orvosi képalkotás teljes Az orvosi képalkotás teljes folyamatát lefedő szoftverfejlesztésfolyamatát lefedő szoftverfejlesztés
►Partnerkapcsolat a Partnerkapcsolat a MEDISO MEDISO Kft.-velKft.-vel►A fejlesztőcsoport vezetőjeA fejlesztőcsoport vezetője Dr. Emri Dr. Emri
MiklósMiklós
2007. november 23. 9. Gyires Béla Informatikai Nap 3
A képalkotás fizikai háttereA képalkotás fizikai háttere
2007. november 23. 9. Gyires Béla Informatikai Nap 4
Az orvosi képalkotás Az orvosi képalkotás folyamatafolyamata
► AdatgyűjtésAdatgyűjtés► Képrekonstrukció a gyűjtött adatokbólKéprekonstrukció a gyűjtött adatokból► A rekonstruált képek feldolgozásaA rekonstruált képek feldolgozása► VizualizációVizualizáció
2007. november 23. 9. Gyires Béla Informatikai Nap 5
Adatgyűjtés - MiniPETAdatgyűjtés - MiniPET
► Ethernet technológiaEthernet technológia► Minden detektor külön IP-címmel rendelkezikMinden detektor külön IP-címmel rendelkezik► A gyűjtött adatokat UDP protokollon keresztül A gyűjtött adatokat UDP protokollon keresztül
küldjük a serveralkalmazásnakküldjük a serveralkalmazásnak► Az adatgyűjtés vezérlése TCP protokollonAz adatgyűjtés vezérlése TCP protokollon► Real-time koincidencia válogatás (időablak 5-Real-time koincidencia válogatás (időablak 5-
6 ns) 6 ns) ► LOR (Line of Response) file: adott LOR (Line of Response) file: adott
koincidenciavonalban a mért események koincidenciavonalban a mért események számaszáma
2007. november 23. 9. Gyires Béla Informatikai Nap 6
AdatgyűjtésAdatgyűjtés
2007. november 23. 9. Gyires Béla Informatikai Nap 7
KéprekonstrukcióKéprekonstrukció
► Analitikus módszerAnalitikus módszer► Iteratív módszerIteratív módszer
Egy túlhatározott egyenletrendszer megoldása Egy túlhatározott egyenletrendszer megoldása statisztikus közelítéssel(maximum likelihood becslés statisztikus közelítéssel(maximum likelihood becslés alkalmazása a paraméter legvalószínűbb értékére). alkalmazása a paraméter legvalószínűbb értékére). Iteratív módszert használunk a közelítéshez.Iteratív módszert használunk a közelítéshez.
SM * LOR = IMGSM * LOR = IMGSM: A detektorrendszer geometriáját, ill. a voxelek SM: A detektorrendszer geometriáját, ill. a voxelek egymáshoz viszonyított kapcsolatát írja leegymáshoz viszonyított kapcsolatát írja leSM[i,j]: Mekkora a valószínűsége, hogy a SM[i,j]: Mekkora a valószínűsége, hogy a rekonstruálható térfogat i-edik voxele valamilyen rekonstruálható térfogat i-edik voxele valamilyen mértékben hozzájárul a j-edik LOR-hozmértékben hozzájárul a j-edik LOR-hoz
2007. november 23. 9. Gyires Béla Informatikai Nap 8
KéprekonstrukcióKéprekonstrukció
►MLEM, OSEM algoritmusokMLEM, OSEM algoritmusok
(OSEM: MLEM+Lor subset, gyorsabban (OSEM: MLEM+Lor subset, gyorsabban konvergál)konvergál)
►SM tárolása kritikusSM tárolása kritikus
Memória, háttértár, cluster, valósidejű Memória, háttértár, cluster, valósidejű előállításelőállítás
►SM generálása: CPU/GPU technológiákSM generálása: CPU/GPU technológiák►Monte-Carlo sMonte-Carlo szzimulációimuláció
2007. november 23. 9. Gyires Béla Informatikai Nap 9
System matrixSystem matrix
► Valós példa MiniPET:Valós példa MiniPET:
(detektorok * kristályok * detkoinc) / 2 = LOR(detektorok * kristályok * detkoinc) / 2 = LOR
1.6 millió LOR1.6 millió LOR
Voxelszám 128^3Voxelszám 128^3► LOR * Voxelszám = SMLOR * Voxelszám = SM
shortban iterációnként shortban iterációnként 6.1 TB6.1 TB►Memóriába nem fér, háttértár lassúMemóriába nem fér, háttértár lassú
Realtime SM számítás CPU cluster, vagy GPURealtime SM számítás CPU cluster, vagy GPU
2007. november 23. 9. Gyires Béla Informatikai Nap 10
Architektúra, teljesítményArchitektúra, teljesítmény
2007. november 23. 9. Gyires Béla Informatikai Nap 11
KépfeldolgozásKépfeldolgozás
►Multimodális orvosi képfeldolgozásMultimodális orvosi képfeldolgozás
Funkcionális (PET) és anatómiai (CT) Funkcionális (PET) és anatómiai (CT) fúziója fúziója
►2D Slice, 3D Volume, 4D Gated2D Slice, 3D Volume, 4D Gated►Volume-ok memóriában szegmentált Volume-ok memóriában szegmentált
területenterületen►GPU memóriában 2D vagy 3D texturábanGPU memóriában 2D vagy 3D texturában►Regisztráció, ROI/VOI, Transzformációk Regisztráció, ROI/VOI, Transzformációk
2007. november 23. 9. Gyires Béla Informatikai Nap 12
Eszközkészletünk egy része:Eszközkészletünk egy része:
2007. november 23. 9. Gyires Béla Informatikai Nap 13
VizualizációVizualizáció
►Célja az orvosok támogatása a képek Célja az orvosok támogatása a képek értelmezésében (szakorvosi igények)értelmezésében (szakorvosi igények)
►OpenGL környezetOpenGL környezet►Különféle vizualizációs módok Különféle vizualizációs módok ►CG, GLSL shaderekCG, GLSL shaderek►Filterezés, palettakezelésFilterezés, palettakezelés►Eredmény: Eredmény: 66 FPS -> FPS -> 9090 FPS FPS
2007. november 23. 9. Gyires Béla Informatikai Nap 14
Legújabb fejlesztéseinkLegújabb fejlesztéseink
2007. november 23. 9. Gyires Béla Informatikai Nap 15
BrainCADBrainCAD
►AA BrainCAD jelenleg az agy BrainCAD jelenleg az agy megjelenítésében csak az ortogonális megjelenítésében csak az ortogonális
metszeteket használjametszeteket használja
2007. november 23. 9. Gyires Béla Informatikai Nap 16
Új megjelenítési módokÚj megjelenítési módok
►Egy új, Egy új, ObliqueOblique-nak nevezett metszet -nak nevezett metszet típuson dolgozunk a BrainCAD típuson dolgozunk a BrainCAD szoftverhez, ami a volume-ok meglévő szoftverhez, ami a volume-ok meglévő Coronal, Axial és Sagittal Coronal, Axial és Sagittal megjelenítését egészíti majd kimegjelenítését egészíti majd ki
►Négydimenziós megjelenítés a térbeli Négydimenziós megjelenítés a térbeli képek sorozatához (például képek sorozatához (például szívfelvételek)szívfelvételek)
►Sávkiemelt kép készítése egy adott Sávkiemelt kép készítése egy adott intenzitásérték környezetébenintenzitásérték környezetében
2007. november 23. 9. Gyires Béla Informatikai Nap 17
Tetszőleges irányú Tetszőleges irányú metszetekmetszetek
A modern grafikus kártyák 3D és multitextúrázás funkcióira
nagymértékben építünk
2007. november 23. 9. Gyires Béla Informatikai Nap 18
Diffusion Tensor ImagingDiffusion Tensor Imaging
►A vizsgálat tárgyaA vizsgálat tárgyaAz emberi agy fehérállományaAz emberi agy fehérállománya
►CélCélAz agy belső struktúrájának a vizualizációjaAz agy belső struktúrájának a vizualizációja(C++, OpenGL)(C++, OpenGL)
►MMódszeródszerFiber tracking, Fiber tracking, amit amit White MatterWhite MatterTractographyTractography-nak is hívnak -nak is hívnak (WMT)(WMT)
►FeladatFeladat Elkészíteni a megjelenítendő adatokat aElkészíteni a megjelenítendő adatokat adiffuzióval súlyozott MRI adatokbóldiffuzióval súlyozott MRI adatokból
2007. november 23. 9. Gyires Béla Informatikai Nap 19
Alapvető fogalmakAlapvető fogalmak
►Tract: olyan szálak együttese, amelyek Tract: olyan szálak együttese, amelyek aazonos zonos kiindulási és végződési ponttal kiindulási és végződési ponttal rendelkeznekrendelkeznek►White Matter TractographyWhite Matter Tractography (WMT): (WMT):
a fehérállomány szálainak iránybecslésén a fehérállomány szálainak iránybecslésén alapulalapul
felhasználva a víz diffúziós tulajdonságátfelhasználva a víz diffúziós tulajdonságát►Anizotropikus diffúzió: az Anizotropikus diffúzió: az iiránnyal változó ránnyal változó
didiffffúziós tulajdonság úziós tulajdonság ►Diffúziós tenzor: egyDiffúziós tenzor: egy másodrendű másodrendű
szimmetrikus tenzor, ami szimmetrikus tenzor, ami leírja az anizotropikus diffúziótleírja az anizotropikus diffúziót
zzzyzx
yzyyyx
xzxyxx
DDD
DDD
DDD
D
2007. november 23. 9. Gyires Béla Informatikai Nap 20
Diffúziós tenzorDiffúziós tenzor
N irányban végrehajtott diffúzióval súlyozott mérésekből a következő mátrix egyenletet írhatjuk fel:ahol B az összes kódoló gradiens hatását tartalmazza,
és A tartalmazza a megfelelő logaritmikus jelarányokat
TT AdB
Nb
b
b
B
.
.
.2
1
00
2
0
1 lnlnlnS
S
S
S
S
SA N
2007. november 23. 9. Gyires Béla Informatikai Nap 21
►Az algoritmus bemeneteAz algoritmus bemenete
ddiffiffúzúziióval súlyozott óval súlyozott képsorozatképsorozat (25) (25)
egy alapképegy alapkép
Az alkalmazott algoritmusAz alkalmazott algoritmus
2007. november 23. 9. Gyires Béla Informatikai Nap 22
A kiértékelésA kiértékelés► Az egyes voxelekhez tartozó összes adatot Az egyes voxelekhez tartozó összes adatot
egyszerre el lehet érni iegyszerre el lehet érni iterteráátortorok használatávalok használatával► A A voxelvoxelek adatait összegyűjtjükek adatait összegyűjtjük► Amennyiben ez lehetséges, a Amennyiben ez lehetséges, a gradiensgradienseketeket ( (BB) )
kiszámoljuk, egyébként alapértékeket használunkkiszámoljuk, egyébként alapértékeket használunk► AzAz AA vektor komponenseit meghatározzukvektor komponenseit meghatározzuk► A túlhatározott egyenletrendszert a legkisebb A túlhatározott egyenletrendszert a legkisebb
négyzetek módszerével oldjuk meg (ehhez a négyzetek módszerével oldjuk meg (ehhez a matematikai eszközöket a matematikai eszközöket a GSLGSL függvényei függvényei biztosítják)biztosítják)
► A voxelenként kapott A voxelenként kapott 6 6 értéket állományokba írjukértéket állományokba írjuk
2007. november 23. 9. Gyires Béla Informatikai Nap 23
Az alkalmazott algoritmusAz alkalmazott algoritmus
►Az algoritmus kimeneteAz algoritmus kimenete
6 6 állomány, amely tartalmazza a megfelelő állomány, amely tartalmazza a megfelelő tenzor elemeket az egyes voxelekheztenzor elemeket az egyes voxelekhez
DzzDxx Dyy Dxy Dxz Dyz
2007. november 23. 9. Gyires Béla Informatikai Nap 24
DiffDiffúziósúziós ellips ellipszzoidoid
►A A diffdiffúzúziiósós ten tenzzor or ortogonális vektorrendszertortogonális vektorrendszert (x’, y’(x’, y’ és és z’) z’) határoz meg az határoz meg az egyes egyes voxelvoxelekek sajátsajátvevekktortorai ai alapjánalapján. .
►A A diffdiffúziót egy úziót egy ellipsellipszozoididdaldal ábrázolhatjuk, a főtengelyek ábrázolhatjuk, a főtengelyek hosszát a hosszát a tentenzzor or sajátértékeinek gyökei sajátértékeinek gyökei határozzák meg, az irányait határozzák meg, az irányait pedig a pedig a tentenzzor or sajátvektoraisajátvektorai..
2007. november 23. 9. Gyires Béla Informatikai Nap 25
►3 sajátvektor 3 sajátvektor 9 állomány 9 állomány
Az előfeldolgozás eredményeAz előfeldolgozás eredménye
λ1
λ2 λ3
E1x E1y E1z E2x E3y E3zE2zE2y E3x
►3 sajátérték 3 sajátérték 3 állomány 3 állomány
2007. november 23. 9. Gyires Béla Informatikai Nap 26
A A DTIDTI kiterjesztése kiterjesztése
►Összehasonlítási és kiindulási alapként a Összehasonlítási és kiindulási alapként a csapat implementálta a csapat implementálta a standard Fiber standard Fiber imaging algoritimaging algoritmusokatmusokat ( (plpl.: Diffusion .: Diffusion Tensor Imaging)Tensor Imaging)
►Jelenleg a DTI javításán dolgozunk, Jelenleg a DTI javításán dolgozunk, különös tekintettel a szálak elágazásának különös tekintettel a szálak elágazásának és összefésülésének problémájáraés összefésülésének problémájára
2007. november 23. 9. Gyires Béla Informatikai Nap 27
Ellipszoidos megjelenítésEllipszoidos megjelenítés
A A DTIDTI eredményének egy eredményének egy lehetségeslehetséges
vizualizációs módjavizualizációs módja
2007. november 23. 9. Gyires Béla Informatikai Nap 28
Statikus szálmegjelenítésStatikus szálmegjelenítés
forrásforrás: wikipedia.org: wikipedia.org
Ennek a módszernek Ennek a módszernek a részecskerendszeres a részecskerendszeres animált fejlesztése animált fejlesztése indult el egy indult el egy szakdolgozat keretén szakdolgozat keretén belül ebben a belül ebben a félévben.félévben.
2007. november 23. 9. Gyires Béla Informatikai Nap 29
Kombinált módszerKombinált módszer
Azt tervezzük, hogy az Azt tervezzük, hogy az elkészült ellipszoid és elkészült ellipszoid és részecske rendszert részecske rendszert tetszőleges állású vágósíkok tetszőleges állású vágósíkok segítségével kombináltan segítségével kombináltan tudjuk megjelenítenitudjuk megjeleníteni
2007. november 23. 9. Gyires Béla Informatikai Nap 30
3D irányítás3D irányítás
►3D 3D mousemouse - Connexion SpaceTraveler - Connexion SpaceTraveler►6 6 szabadsági fokkal rendelkezikszabadsági fokkal rendelkezik►A meglévő egerünket egészíti kiA meglévő egerünket egészíti ki
2007. november 23. 9. Gyires Béla Informatikai Nap 31
http://petdisk.atomki.hu/m3ihttp://petdisk.atomki.hu/m3i
Köszönjük a kitüntető Köszönjük a kitüntető figyelmüket!figyelmüket!