Praktični del magistrske naloge smo opravili na Tehnični Univerzi Berlin (TUB), Fakulteti IV, na Oddelku za Strojno Učenje (angl. Machine Learning Department) v Laboratoriju za Inteligentno Biomedicinsko Zaznavo (IBS Lab angl. Intelligent Biomedical Sensing Lab).
Cilj IBS Laba je povečanje razumevanja fizičnega in mentalnega zdravja in bolezni z uporabo tehnologij za spremljanje aktivnosti v možganih in telesu. Pri tem uporabljajo multimodalno zaznavanje in strojno učenje za obdelavo in ovrednotenje rezultatov. Razvijajo prenosne biomedicinske senzorje za ne invazivno spremljanje delovanja telesa, ki so namenjeni dolgoročni uporabi. Ena izmed uporabljenih tehnologij je funkcionalna bližnje infrardeča spektroskopija (fNIRS angl. functional near-infrared spectroscopy) za spremljanje možganskih aktivnosti. Z uporabo fNIRS signalov, lahko zaznamo možganska področja z večjo prekrvavljenostjo, kar pomeni tudi večjo živčno aktivnost.
Meritve fNIRS potekajo z optodami – senzorji, ki bodisi oddajajo – oddajniki – bodisi sprejemajo svetlobo – detektorji. Optode so pritrjene na elastično kapo, ki jo nadenemo na glavo osebe pred opravljanjem meritev. Zaradi različnih velikosti in oblik glav merjencev, so koordinate optod na površini glave merjenca, različne za vsakega posameznika. Za interpretacijo zajetih fNIRS podatkov, potrebujemo model glave merjenca, ki predstavlja anatomsko zgradbo glave. Poleg tega, potrebujemo tudi koordinate na površini glave merjenca, kjer so se optode nahajale med zajemanjem fNIRS podatkov. Običajno je anatomski atlas uporabljen kot model anatomske zgradbe glave, koordinate na površini anatomskega atlasa pa so uporabljene kot lokacije optod med zajemom fNIRS podatkov.
Če poznamo koordinate optod na glavi merjenca, lahko izboljšamo obdelavo zajetih fNIRS signalov. Anatomski atlas lahko preslikamo na poznane 3D koordinate na površini glave merjenca, kar omogoča boljši približek anatomske zgradbe glave merjenca.
V nalogi je predstavljen pristop za določitev koordinat optod na površini glave v tridimenzionalnem pristopu (3D) ob izvajanju meritev z fNIRS. Koordinate so podane glede na referenčne točke, ki označujejo pomembnejše anatomske strukture na glavi. Pripravili, preizkusili in ovrednotili smo postopek in algoritem za zajem koordinat optod s 3D skenerjem.
Funkcionalna bližnje infrardeča spektroskopija (fNIRS)
Med zajemanjem podatkov fNIRS, svetloba potuje od svetlobnih oddajnikov skozi kožo na glavi, lobanjo, cerebrospinalno tekočino in možgansko tkivo do svetlobnih detektorjev. Uporabljena je svetloba z valovnimi dolžinami med 650 nm in 950 nm, ker lahko dobro prodre skozi tkivo. Med potovanjem skozi različna tkiva se svetloba absorbira, siplje in odbija.
V možganskih korteksih je najpomembnejša molekula, ki absorbira svetlobo, hemoglobin. V krvi nastopa v dveh oblikah oksi- (HbO) in deoksi-hemoglobina (HbR), ki imata različna absorpcijska spektra. Pri valovnih dolžinah λ > 800 nm ima višji absorpcijski koeficient HbO, pri valovnih dolžinah pa λ < 800 nm pa HbR. Če merimo absorpcijo svetlobe pri vsaj dveh valovnih dolžinah, lahko zaznamo bolj prekrvavljena možganska področja, to pa so tudi področja, v večjo živčno aktivnostjo.
Postopek skeniranja
Slika kape z optodami je prikazana na sliki 4C. Na vrh ohišij optod smo prilepili barvne nalepke rumene barve. Kot referenčne točke na glavi smo označili točke Nasion (Nz), Inion (Iz), Right pre-auricular point (Rpa), Left pre-auricular point (Lpa) in vrh glave (Cz). Referenčne točke smo označili z modrimi nalepkami.
Kapo z optodami in barvnimi nalepkami smo nadeli na glavo merjenca. Med procesom skeniranja je moral merjenec držati glavo pri miru, saj je bil sicer rezultat skeniranja zamegljen. Skenirali smo z ročnim Einstar 3D skenerjem, ki lahko kreira oblak točk z resolucijo 0.1 mm. Po končanem skeniranju, smo skenirane podatke obdelali v programski opremi Exstar, ki je bila priložena uporabljenemu skenerju.
Pri postopku skeniranja, smo bili pozorni na pravilno delovanje skenerja, ki je generiral oblak točk iz zajetih podatkov. Skener je deloval po principu poravnave že generiranega oblaka točk iz do tedaj zajetih podatkov, na trenutno zajete podatke. Zaradi neprestanih poravnav, je bilo pomembno, da smo skenerja premikali počasi in brez sunkovitih gibov, saj sicer programska oprema poravnave več ni izvedla. Pomembno je bilo tudi, da med skener in merjenčevo glavo ni prišel nepričakovan predmet, npr. prst ali skenerjev priključni kabel, kar bi lahko uničilo do tedaj zajete podatke. Pred začetkom skeniranja smo se prepričali, da so nalepke na glavi merjenca jasno vidne in niso prekrite s priključnimi kabli optod. Poizkusili smo zagotoviti čimbolj enakomerno osvetlitev merjenčeve glave, saj je to pomenilo boljšo kvaliteto optično prebranih dokumentov (skenov) zaradi boljše zaznave barvnih nalepk. Posledično so bile 3D koordinate optod lahko določene bolj natančno.
Algoritem za detekcijo optodnih in referenčnih točk
Ko smo končali postopek skeniranja, sta bili generirani datoteki .obj in .jpg, ki sta vsebovali informacije o poziciji skeniranih točk in o njihovi barvi. Postopek obdelave podatkov je opisan na sliki 6. Iz datotek .obj in .jpg smo generirali matriki koordinat vseh točk in njihovih barvnih vrednosti v barvnem prostoru Barva Nasičenost Vrednost (HSV – angl. Hue Saturation Value). Pred obdelavo smo določili barvno masko, ki je zajemala HSV vrednosti skeniranih rumenih in modrih nalepk. To je omogočilo, da so bile točke, ki so pripadale rumenim in modrim nalepkam, ločene od ostalih skeniranih točk.
V naslednjem koraku, smo skenirane rumene in modre točke razvrstili v skupine, na podlagi njihovih 3D koordinat. Tako so bile v isto skupino razvrščene tiste skenirane točke, ki so si bile v 3D prostoru dovolj blizu in so predstavljale isto skenirano nalepko. Potem, so bile določene koordinate središča vsake skupine skeniranih točk. Poleg tega, je bila na točke iz vsake skupine poravnana tudi ravnina, ki se je točkam najbolj prilegala po metodi najmanjših kvadratov. Iz vsake skupine smo odstranili tiste skenirane točke, ki so bile od poravnane ravnine oddaljene več kot 2 mm in zatem na preostale točke zopet poravnali ravnino.
Od središča vsake skupine skeniranih točk, smo odšteli velikost ohišja optode v smeri normale na poravnano ravnino proti površini glave. To smo storili zato, ker nalepke za označevanje optod niso bile nalepljene na površino glave merjenca, ampak na vrh ohišja optode, kot je vidno na sliki 4. Tako smo izračunali 3D koordinate vsake točke, kjer so se optode dotikale površine glave merjenca – optodne točke. Nalepke za referenčne točke niso bile pritrjene na površino ohišja optode, ampak direktno na kapo ali na površino glave, zato za referenčne točke velikosti ohišja optode ni bilo potrebno odšteti.
Referenčne točke smo morali urediti v določen vrstni red, da je bilo jasno, katere 3D koordinate predstavljajo katero izmed referenčnih točk. Vrstni red je bil določen na podlagi enega izmed uporabljenih dveh algoritmov; bodisi s petimi bodisi s šestimi referenčnimi nalepkami. Izbira algoritma je bila odvisna od tega, koliko referenčnih nalepk je bilo na glavi merjenca med skeniranjem. Algoritem s šestimi referenčnimi nalepkami je bil bolj robusten in je bil napisan kasneje kot algoritem s petimi referenčnimi nalepkami.
Pri algoritmu s petimi referenčnimi nalepkami, je vsaka referenčna nalepka predstavljala eno referenčno točko (Nz, Iz, Rpa, Lpa, Cz). Za določevanje katere 3D koordinate zaznanih referenčnih nalepk predstavljajo katero referenčno točko, smo najprej izračunali razdalje med koordinatami vsakega para zaznanih referenčnih nalepk. Potem smo za vsako referenčno nalepko izračunali standardno deviacijo razdalj do vseh ostalih referenčnih nalepk. Zaradi oblike glave, je točko na vrhu glave – Cz – predstavljala referenčna nalepka z najmanjšo standardno deviacijo razdalj do ostalih referenčnih nalepk. Izmed preostalih referenčnih nalepk, je referenčno točko Iz predstavljala tisto zaznana referenčna nalepka, ki je imela najmanjšo povprečno razdaljo do najbližjih 5 optodnih točk. Optode smo na glavo namestili tako, da je to veljalo pri vsakem skeniranju. Naslednjo smo določili referenčno točko Nz kot zaznano referenčno nalepko, ki je bila najbolj oddaljena od referenčne točke Iz. Referenčni točki Rpa in Lpa smo določili z vektorskim produktom vektorjev med že poznanimi referenčnimi točkami.
Pri algoritmu s šestimi referenčnimi nalepkami, je pet referenčnih nalepk označevalo enake referenčne točke kot so bile označene pri algoritmu s petimi referenčnimi nalepkami. Šesta referenčna nalepka je služila temu, da je bila ena izmed referenčnih točk lažje določena. Šesto referenčno nalepko smo pritrdili na kapo pod nalepko, ki je označevala referenčno točko Iz. Točko Iz in šesta referenčno nalepko smo tako lahko določili kot referenčni nalepki, ki sta imeli najmanjšo medsebojno razdaljo izmed vseh parov referenčnih nalepk. Točko Nz smo določili kot referenčno nalepko, ki je bila najbolj oddaljena od referenčne točke Iz oziroma šeste referenčne nalepke. Točko Cz smo določili kot referenčno nalepko, ki je bila najbližje ravnini, ki jo tvorijo Nz, Iz in šesta referenčna nalepka. Potem, ko smo poznali lokacijo referenčne točke Cz, smo iz para – Iz in šesta referenčna nalepka – določili točko Iz kot referenčno nalepko, ki je bila bližje referenčni točki Cz. Referenčni točki Rpa in Lpa smo določili z vektorskim produktom vektorjev med že poznanimi referenčnimi točkami.
Ko smo določili katera referenčna nalepka predstavlja katero referenčno točko, smo lahko kot izhodne podatke podali koordinate referenčnih točk in njihove oznake. Prav tako smo kot izhodne podatke podali koordinate vseh optodnih točk.
Verifikacija
Kot izračun točnosti smo izračunali odstopanje izmerjenih 3D koordinat od dejanskih vrednosti, ki bi morale biti izmerjene. S 3D tiskalnikom smo natisnili model glave, ki je prikazan na sliki 8. Dejanske 3D koordinate smo izmerili tako, da smo barvne nalepke pritrdili na površino model glave, na mesta označena z majhnimi udrtinami. Slika 9 predstavlja natisnjen model glave z barvnimi nalepkami na površini glave. Referenčne točke smo označili z modrimi referenčnimi nalepkami, da smo končen sken modela glave lahko pravilno orientirali. Natisnjen model z barvnimi nalepkami na površini glave smo skenirali deset-krat. Skene smo nato med seboj poravnali na osnovi znanega zaporedja referenčnih točk in izračunali povprečne koordinate vsake optodne točke.
Po skeniranju modela z barvnimi nalepkami na površini glave, smo skenirali tudi model glave, na katero smo nadeli kapo z optodami. Vrhove optod smo pred skeniranjem označili z rumenimi barvnimi nalepkami. Za razliko od prejšnje serije skenov opisane v prejšnjem odstavku, barvne nalepke pri tej seriji skenov niso bile pritrjene na površino glave. Od izračunanih središč zaznanih nalepk smo zato odšteli velikost ohišja optode v smeri normale ravnine zaznane nalepke proti površini glave, da smo dobili koordinate točk, kjer so se optode dotikale površine glave. Tako kot v prejšnjem primeru, smo enake referenčne točke označili z modrimi nalepkami, da smo skene lahko med seboj poravnali. Model glave s kapo in optodami smo skenirali devetkrat in izračunali povprečne vrednosti koordinat optodnih točk.
Zaradi iste postavitve referenčnih točk pri skeniranju modela glave in modela glave s kapo in optodami, smo lahko primerjali koordinate obeh serij skenov in izračunali povprečne razdalje med dejanskimi in izmerjenimi koordinatami optodnih točk. Rezultati skeniranja modela glave z barvnimi nalepkami na površini glave so predstavljali dejanske koordinate optod; rezultati skeniranje modela glave s kapo in optodami pa so predstavljali izmerjene koordinate optod. Povprečna razdalja od izmerjenih do dejanskih 3D koordinat je bila 0,85 mm ± 0,37 mm (povprečje in standardna deviacija) za referenčne točke in 1,67 mm ± 0,62 mm za optodne točke.
Skenirali pa smo tudi glave šestih oseb. Za izračun ponovljivosti smo vsak sken ponovili najmanj šestkrat. Pred skeniranjem smo na glavo merjenca nadeli kapo z optodami in barvnimi nalepkami. Glave petih oseb smo skenirali tako, da je bila kapa z optodami med posameznimi skeni na glavi merjenca, medtem ko smo pri enem merjencu kapo odstranili in jo ponovno nadeli na glavo po vsakem skenu. Glave merjencev, ki so imeli kapo ves čas skeniranja na glavi, smo skenirali osem oziroma desetkrat; glavo merjenca, pri katerem smo kapo odstranili po vsakem skenu, pa smo skenirali šestkrat. Zopet smo vrhove optod označili z rumenimi nalepkami, referenčne točke pa z modrimi nalepkami. Zaradi enake postavitve referenčnih nalepk na vsakem skenu, smo lahko vse skene med seboj poravnali. Tako smo lahko izračunali standardne deviacije 3D koordinat vsake optodne točke.
Povprečna standardna deviacija za serije skenov, ko je bila kapa z optodami ves čas na glavi merjenca je bila 0,71 mm za referenčne točke in 0,93 mm za optodne točke. Za merjenca, ki smo mu kapo po vsakem skenu znova nadeli na glavo, je bila povprečna standardna deviacija 2,44 mm za referenčne točke in 2,29 mm za optodne točke.
Pri skeniranju natisnjenega modela z nalepkami na površini glave je bila povprečna standardna deviacija 0,55 mm za referenčne točke in 0,89 mm za optodne točke; pri skeniranju natisnjenega modela s kapo in optodami, pa je bila povprečna standardna deviacija 0,43 mm za referenčne točke in 0,59 mm za optodne točke.
Primerjanje z že objavljenimi pristopi
Izmed ostalih že objavljenih pristopov za fotogrametrično merjenje 3D koordinat optodnih točk [1], [2], [3], [4], [5], so nekateri avtomatski [2], [3], [5], in nekateri polavtomatski [1], [4]. Pri polavtomatskih pristopih, je potrebno v skeniranem oblaku točk, ročno označiti mesta, kjer so vidne optode. Med avtomatskimi pristopi je pristop Mazzonetta s sodelavci [5], podoben pristopu, ki je opisan v tej magistrski nalogi: vsako mesto optode, je barvno označeno algoritem pa označeno optodo avtomatsko zazna. Jaffe-Dax s sodelavci [2] je uporabil v naprej določena razmerja med 3D koordinatami referenčnih in optodnih točk. Erel s sodelavci [3] pa je uporabil v naprej naučeno nevronsko mrežo, ki je določila koordinate optodnih točk na podlagi 10 sekundnega video posnetka glave. Pred snemanjem posnetka so z barvnimi nalepkami označili referenčne točke, ki so lahko vidne na posnetku. Za učenje nevronske mreže so bili vhodni podatki video posnetek merjenčeve glave in koordinate optod na površini merjenčeve glave. Koordinate optod so bile izmerjene z elektromagnetnim 3D digitalizatorjem, ki deluje na principu merjenja elektromagnetnega polja. Nevronska mreža je na videu zaznala referenčne točke in druge značilne točke obraza, naučena pa je bila katere koordinate optodnih točk pripadajo določenemu videu. Po končanem učenju, je nevronska mreža lahko predvidela koordinate optodnih točk na površini merjenčeve glave iz podanega video posnetka glave merjenca.
Nekateri omenjeni pristopi [2], [3], [4], [5] so uporabljali 3D model glave, ki je generiran iz video posnetka glave; v pristopu [1] pa je 3D model glave generiran iz 150 slik glav merjenca. Pristopi [1], [4], [5] so uporabljali kamero z 8 MP, medtem ko pristopa [2], [3] uporabljata kamero z 2.1 MP. Pristop, opisan v tej magistrski nalogi, je uporabljal 3D skener, ki je generiral oblak točk z ločljivostjo 0.5 mm, kar je približno sedem-krat manj natančno kot pristopi, ki so uporabljali kamero z 8 MP.
Čas zajema pristopa [3], je bil najkrajši ~5 s, pristopa [5] in pristopa, predstavljenega v tej magistrski nalogi pa najdaljši ~3 min, preostali pristopi so imeli čas zajema 1 ali 2 min. Čas obdelave je bil najkrajši pri pristopu [3], < 1 s, najdaljši pa pri pristopu [5] 65-171 min; čas obdelave ostalih pristopov [1], [2], [4] in pristopa, predstavljenega v tej magistrski nalogi so bili med 6 in 10 min. Zajem 3D koordinat modela dejanskih vrednosti, ki je bil uporabljen za izračun točnosti metod, je bil pri večini pristopov [2], [3], [4], [5] opravljen s 3D digitalizatorjem. V pristopu [1] so bile koordinate optodnih točk modela dejanskih vrednostih izmerjene z magnetno resonančnim slikanjem.
Pristopa [2], [3] sta edina od primerjanih pristopov, ki sta poročala rezultate o ponovljivosti metode. Meritev merjenja 3D koordinat optodnih točk je bila opravljena dva krat, pri čemer je bila poročana razdalja med rezultati prvega in drugega merjenja 2,0 mm ± 0,5 mm (povprečje in standardna deviacija) pri pristopu [2] in 3,0 mm ± 1,6 mm (povprečje in standardna deviacija) pri pristopu [3]. Za primerjavo, povprečna standardna deviacija razdalj 3D koordinat optodnih točk iz predstavljenega pristopa v tej magistrski nalogi je 0,93 mm.
Izmerjena točnost metod je bila poročana v vseh primerjanih pristopih. Za izračun točnosti metode, so bili primerjani rezultati uporabljene metode opisane v posameznem pristopu z rezultati merjenja 3D koordinat optodnih točk modela dejanskih vrednosti. Najboljši rezultati so bili poročani v pristopu [5], 0,5 mm ± 0,2 mm (mediana in mediana absolutnih odklonov angl. median absolute deviation); najslabši rezultat je bil poročan v pristopu [4], 9,4 mm, 32,8 mm (mediana in maksimalna vrednost). Ostali pristopi so poročali vrednosti 6,66 mm (povprečna vrednost) v pristopu [1], 3,4 mm ± 0,9 mm (povprečje in standardna deviacija) pri pristopu [2] in 6,47 mm ± 1,32 mm (povprečje in standardna deviacija) pri pristopu [3]. Za primerjavo rezultat pristopa iz te magistrske naloge je 1,67 mm ± 0,62 mm (povprečje in standardna deviacija). Ob enem je potrebno omeniti, da sta pristop opisan v tej magistrski nalogi in pristop [5] uporabila s 3D tiskalnikom natisnjen model glave za izračun točnosti metode. Hkrati sta to edina pristopa, pri katerih so bile barvno označene vse referenčne in optodne točke, kar je omogočilo avtomatsko zaznavo vsake izmed točk.
|