Praksis hos NordicNeuroLab (NNL) – Del 1

Hei, jeg heter Herman og studerer medisinsk teknologi på UIB. Sammen med Martin er jeg for tiden i praksis hos NordicNeuroLab (NNL).

NNL utvikler hardware og software for funksjonell MR (fMRI), som brukes til å kartlegge hjernens aktivitet i klinikk og forskning. Produktene NNL har inkluderer MR-kompatible skjermer, stimulus-systemer, VSHD, pasientkomfort-løsninger og programvare for bildeanalyse og arbeidsflyt. Det har vært spennende å få jobbe med teknologi som faktisk brukes i medisinsk praksis.

Den første perioden hos NNL har overgått mine forventninger. Jeg har blitt både inspirert og faglig utfordret, og interessen min for medisinsk teknologi har vokst.

Hos NNL har jeg jobbet innenfor eyetracking med VSHD siden NNL ønsker en eyetracking-algoritme som er robust for endringer (bruker eller VSHD som beveger seg). En mulig løsning på dette har vært å utforske Pupil Labs Core. Denne eyetracking-algoritmen lager både en 3d-modell av øyet (pye3d) som er ganske robust for endringer, men også en 2d-modell som bruker regresjon og er sensitiv for små endringer i miljøet. Målet er å kunne bruke både 3d-modellen og 2d-modellen slik som Pupil Labs selv har brukt denne softwaren. Dette ville ført til en eye-tracking software som fungerer bra selv om brukeren beveger seg underveis. Min del av prosjektet har vært å evaluere hvor godt Pupil Labs Core (både 2d og pye3d) sin eyetracking software fungerer i samspill med NNL sin egen hardware som er Visual System HD (VSHD). Jeg har også lagd to python-script for å samle inn data for en potensiell eyetracking-løsning som bruker nevrale nettverk i form av deep learning.  

Figur viser Pupil Labs Capture under kalibrasjon. 3D-modell (nede til høyre). Pupill segmentering opp til høyre.

Underveis mens jeg har prøvd å evalure Pupil Labs Core har jeg møtt på noen problemer. Et problem er knyttet til refleksjonene (glint) som følge av IR-kameraet ved øyet. VSHD brillene lager fire refleksjoner på hornhinnen i motsetning til Pupil Labs som bare har to og gjerne på en mer gunstig plassering. Disse gjør det vanskelig for algoritmen å finne pupillen under testing. Dette gjorde det vanskelig for meg å evaluere softwaren på en rettferdig måte. En annen utfordring var knyttet til vinkelen på kameraet i forhold til øyet. Pye3d-algoritmen er avhengig av at pupillen ser ulik ut fra ulike blikkretninger – noen ganger mer ellipseformet, andre ganger mer sirkelformet. Denne variasjonen brukes til å beregne hvor i rommet øyet befinner seg. Men når kameraet er på samme akse som øyet (høyre bilde på figuren under) varierer formen lite mellom ellipse og sirkel. I tillegg vil refleksjonene gjøre målinger hvor brukeren ser lengre borte fra sentrum vanskelig (disse er viktige for å definere et pålitelig sentrum). Begge disse problemene sammen gjør det vanskelig for algoritmen å få nok god informasjon til å bygge en pålitelig øyemodell.

Pupil Labs (venstre) og NNL-VSHD (høyre) sine øyekamera. 

Til tross for utfordringene har arbeidet vært svært lærerikt, og jeg ser frem til fortsettelsen.