automatiserad motion tracking950036/fulltext01.pdf · tracking är dyra och brister i olika...
TRANSCRIPT
INOM EXAMENSARBETE TEKNIK,GRUNDNIVÅ, 15 HP
, STOCKHOLM SVERIGE 2016
Automatiserad Motion Tracking
MATILDA OLSSON
REBECCA SAHLÉN
KTHSKOLAN FÖR TEKNIK OCH HÄLSA
Detta examensarbete har utförts i samarbete med enheten för Neuronik på STH Uppdragsgivare: Svein Kleiven
Automatiserad Motion Tracking
Automatic Motion Tracking
M a t i l d a O l s s o n & R e b e c c a S a h l é n
Examensarbete inom medicinsk teknik Grundnivå, 15 hp
Handledare på KTH: Gösta Hellström Examinator: Gösta Hellström
Skolan för teknik och hälsa
Kungliga Tekniska Högskolan KTH STH
SE-141 86 Flemingsberg, Sweden http://www.kth.se/sth
2016
SammanfattningHjärnskadorärvanligtförekommandeinomishockeyochförattkunnautvecklabättre
skyddsutrustningkrävsinformationomkroppensrörelse.Medhjälpavmotiontracking
kanmanfåframrörelsersochkollisionershastigheter.Automatiseradmotiontracking
skullekunnauteslutafelkällortillföljdavanvändareetc.
TvåolikaMatlabprogramförmotiontrackingrekonstrueradesföratt
undersökamöjlighetenattiframtidenautomatiseratekniken.LeonidSigal,forskarevid
DisneyresearchPittsburgh,harutvecklatettprogramsomgickattrekonstrueraoch
användapåutvaldavideosekvenser.Förattuppnåkorrektmotiontrackingmåste
initialiseringenförvarjevideosekvensberäknas.
AbstractBraininjuriesarecommoninicehockeyandknowledgeaboutthebodyandits
movementisnecessarytodevelopsafetyequipmenttopreventsuchinjuries.The
velocityofthemovementincollisionscanbedetectedwithmotiontracking.Automatic
motiontrackingcanreducetheimpactoferrorsourcessuchasthosecausedbytheuser.
TwodifferentMatlabprogramswerereconstructedtoanalysethe
possibilitiestodevelopanautomatictechniqueformotiontracking.LeonidSigal,
scientistatDisneyresearchPittsburgh,hasdevelopedoneoftheprogramsformotion
tracking.Itwaspossibletoreconstructhisprogramanduseitforselectedvideo
sequences.Initialvaluesforeachvideosequencehadtobecalculatedtoachieve
accuratemotiontracking.
Innehållsförteckning
Inledning 1Avgränsning 2Syfteochmål 2
Bakgrund 3
Metodochgenomförande 6
Resultat 8
Diskussion 9
Referenser 12
1
InledningAvallaskadorinomishockeyärenstorandelhjärnskador(Tegner,Gustafsson,
Forssblad,Lundgren&Sölveborn2007).Detskulleinnebärastorafördelarommanmedhjälpavteknikkundeseochförståvilkakroppsrörelsersomledertillvilkatyperav
hjärnskadorförattiframtidenkunnautvecklaskyddsutrustningsomkanförhindra
dessa.Ettsådantdatorprogramsomuppfyllerdehögakravsomfinnspåprecisionoch
hastighetskullekunnatillämpasäveninomandraidrotter,t.ex.boxning.
Eftersommanuellmotiontrackingäranvändarberoende,tidskrävandeoch
begränsadavmiljönvillmanautomatiseraprocessenochpåsåsättgöradensnabb,
noggrannochtillförlitlig.Pågrundavfaktorersomklädselochkroppsvariationfinnsdet
svårigheteriattföljakroppsrörelsermanuellt(Tian,T-P.,Sclaroff,S.&Yang,M-H.2009).
Mångaavdeprogrammensomfinnsidagslägetavseddaförautomatiseradmotion
trackingärdyraochbristeriolikasituationer.Detskanuundersökasom
automatiseringengårattgenomföraspåutvaldavideosekvensermedettredan
färdigutvecklatdatorprogramförmotiontracking.Omprogrammetskullegebra
resultatförvideosekvenseravishockeykandetskapastoramöjligheterförforskningen
inomneuronik.
HedvigKjellström,docentvidenhetenfördatorvetenskappåKTH,har
utvecklatettprogramförmotiontracking.VårtprojektbyggerdelspåHedvig
KjellströmstidigarearbeteochbefintligaMatlabprogramförmotiontrackingochdelspå
LeonidSigalochMichaelJ.BlacksutvecklingavKjellströmskod.Sigalharskriviten
avhandlingochskapatprogrammettillsammansmedsinhandledareBlack,professor
vidBrownUniversity.BlackvarävenKjellströmshandledare.
Kjellströmskodmåsterekonstruerasochuppdaterasförattuppnåsamma
resultatidagensMatlabsomKjellströmfickår2002.Programmetharidagslägetenbart
använtspåbilderochenklavideosekvensermedförutsägbararörelser.Sigals
vidareutvecklinghardäremotredananväntspåmeravanceradevideosekvenserdär
verkligaboxningssituationerefterliknats.Ävendennakodkräverrekonstruktionföratt
sedankunnatestaspåishockeysekvenser.
2
IshockeysekvenservaldesutmedhjälpavdentidigarestudentenvidKTH,
JonasSvenssonsmasterthesisdärhaneftervideoanalysidetfritttillgängliga
programmetförvideomotionSkillspectorlyckatstaframhastigheterförett
tacklingsögonblick.ISvenssonsrapportfinnsenlistapådevideosekvenserhananvänt
sigav(Svensson2015).
Genomattföljarörelsemekanismerochframföralltolikahastigheterkan
hjälmarochannanskyddsutrustningutvecklas.Någotavdeaktuellaprogrammenskulle
kunnaanvändastilldettasyfteefterytterligarevidareutveckling.
SyfteochmålMåletvarattundersökamöjligheternaattrekonstrueraKjellströmsellerSigalsprogram
ochsamtidigtåterskaparesultatensomdetidigareuppnått.Detmestlämpade
programmetförautomatiseradmotiontrackingskullesedantestaspåutvalda
videosekvenser.Syftetvarattgenomettautomatiseratprogramförmotiontrackingfå
framrörelsershastigheter.
AvgränsningEndastdetvåbefintligaprogrammenåterskapadesförattsenarekunnaanvändassom
grundförattutvecklaettavanceratprogramsomislutändan,eftermerarbete,ska
kunnaföljakroppsrörelseriolikasportsekvenser.
3
BakgrundMotiontrackingärenmetodförattlokaliseraochföljakroppsrörelseribilderochvideor.
Tidigarehardetvaritavstortintresseattutvecklaensådanteknikförblandannat
övervakning.Onormalahändelserochavvikandekroppsrörelserskullekunnaidentifieras
ochdåautomatisktlarmavidtillexempelrånellermisshandel.Användningsområdetär
brettochensådanekonomiskthållbarochtillförlitligteknikhadegynnatmånga
(Karlsson2010).
Fördettaprojektärdetmestrelevantahurmotiontrackingkangeviktig
informationomrörelsershastigheter,vilketäravstortintressevidutvecklingav
skyddsutrustning.Genomattutnyttjaberäknadesannolikhetsmodelleravobjektoch
miljöersamtstatistikgårdetattfåenförståelseförhurmänniskoruppträderochrörsigi
olikatyperavsituationer(Liu,Liu,Dauwels&Seah2015).
KjellströmssamtSigalsprogramochforskningkommerattliggatillgrundför
projektet.Kjellströmharuppnåttresultatförmotiontrackingi2D-bildergenomatt
studerasåkalladecuesochkommitframtillattbästresultatgesmedenkombinationav
treolikasådana.Cuesärfilterförorienteringibilderochdistributionenavdemär
framtagengenomattstuderamänniskanslemmarsamtkroppsrörelser.Dessafilter
benämnsridgecue,edgecueochmotioncue.Deförstärkervarförsigolikadelaravbilden
medhjälpavderivatoribådehorisontell-ochvertikalled.Påsåsätthargränsenmellan
objektochbakgrundkunnaturskiljasochmedhjälpavsannolikhetsmodellerharmotion
trackingkunnatutföras(Sidenbladh&Black2002).
4
Figur1:Kjellströmsresultatvidanvändningavolikafilter.Rad1:motioncue.Rad2:edge
cue.Rad3:ridgecue.Rad4:kombinationenavallatrecues.
Ifigur1gårdetattseKjellströmsresultat(Sidenbladh&Black2002).Rad4visar
kombinationenavallatrecues,vilketocksåärdebildsekvenserdärkroppsrörelsenföljs
allrabäst.DefaktorersomvisatsigvaraviktigastförKjellströmsresultatärbearbetning
avstatistikenochvaletavcues.Iavhandlingendrasslutsatsenattdetkrävsmer
bakgrundsstatistikförattkunnaförbättramotiontracking.
Sigalsarbetebyggerpåsjuolikakameravinklar,treifärgochfyrasvartvita,se
figur2.Datasamladesinvidgång,jogging,gestikulerandesamtvidbollkastandeoch
boxning.Medhjälpavstoramängderdataberäknadesengroundtruthförvarje
videosekvens.Groundtruthagerarutgångspunktförtrackingen.Medhjälpavvideo-och
bildsekvenseranvändessedanallinsamladdataföratttränaalgoritmer.Måletvarattfå
algoritmernaattföljakroppsrörelserpåettkorrektsätt.Medhjälpavgroundtruthkunde
algoritmernajämförasochpåsåsättavslöjafelochavvikelseritrackingen.Denna
jämförelsekanävenutförasmellan2D-och3Dsekvenser.
5
Figur2:VisarkamerauppställningförinspelningavSigalsvideosekvenser.
Sigalanvändesigavsekvenserdärverkligaboxningsrörelserefterliknatsoch
uppnåddedåettmycketbraresultatäveni3D.Debegränsningarnasomhan
uppmärksammadeberoddepåavsaknadenavflervideosekvenseri3Dmedbestämd
groundtruth.Sigalstöttenämligenpåsvårigheteriberäkningenavutgångspunkten,
förmodligentillföljdavbristandeurvalavlämpadevideosekvenser(Sigal&Black2006).
Vidanvändningavflertaletkamerorförmotiontrackingi3Därkravensomställs
påteknikenhöga.Algoritmernasomdatorprogrammetanvändersigavmåstekunna
hanteraochbearbetastoramängdericke-linjärdataavhögadimensioner.Programmet
börocksåkunnaföljamänniskorskroppsrörelserunderlångtidochanvändasirealtid
(Cai,Q&Aggarwal,J.K.1996).Enrobusttekniksomuppfyllerdessakravskulletillgodose
debehovsomfinnsföranalyseringavsåvälsportskadorsomövervakningsfilmer.
6
MetodochgenomförandeArbetetbörjademedattläsaavhandlingarocharbeteninommotiontrackingföratt
kunnasättasiginiämnet.Mycketavkunskapenhämtadesävenfrånmötenmed
handledareSveinKleiven.ÅterskapandetavKjellströmskodochändringarnaavkoden
gjordesgenomattnogasättasiginiKjellströmsavhandlingochkodsamtmedhjälpav
http://www.mathworks.comnärfrågorkringkodenuppstod.
Detförstastegetmotskapandetavenfungerandekodförmotiontrackingvar
attkontrollerasåattKjellströmskod”Matlabimplementationoftheexperimentin
Figure7,ICCV01”från2002fungeradeiMatlabversionenMATLAB_R2015bpåen
Macbook.KjellströmsMatlabkoderochresultatkanladdasnerfrån
http://www.csc.kth.se/~hedvig/data.html.Förattfåcylindrarnaattföljakroppenlika
brasomifigur1vardetnödvändigtattbearbetakoden.
Förattfåkodenattfungerakontrolleradesdoubleprecision,ettkommandoför
attkonverteraparametrartillettvisstformat,samtattallacuesutnyttjadesföratt
uppnåönskatresultat.Ävencylindrarnasplaceringpåkroppenistartlägetstuderades.
SedanpåbörjadesarbetetmedSigalsprogram,vilketkanladdasnerfrån
http://humaneva.is.tue.mpg.de/datasets_human_2.Kunskapensombehövdesföratt
sättasiginikodenfannstillstordelpåhttp://humaneva.is.tue.mpg.de.Sigalsprogram
bestodavstoramängderkodochhandledareshjälpkrävdesförattförstådelaravkoden
ochförattkunnapåbörjarekonstruktionen.
Sigalsprogramvarsenastredigerat2007ochhaderedananväntstill
videosekvenser.ProgrammetvarredankompatibeltmeddagensMatlab_R2014bpåen
WindowsAsusUltrabook.Destorafilernasomladdadesnerförattkunnakörakoden
behövdeextraherasochplacerasienochsammamapp.Förstexekveradesfunktionen
ComputeError3DExampleochdärefterkundearbetetmedBaselinealgorithmpåbörjas.
Algoritmenochanvändarmanualenkanladdasnerfrån
http://humaneva.is.tue.mpg.de/baseline.Baselinealgorithmärendelavkodenoch
dennadelansågsisamrådmedhandledarevaratillräckligförattkunnauppnåönskat
resultat.
7
FörattkunnaköraBaselineAlgorithmföljdesettantalsteg(se
användarmanualen).R_quickConfigScriptiBaselineAlgorithmkördessedansom
huvudprogramfördelsSigalsvideosekvensermenocksåfördeutvalda
ishockeysekvenserna.
DeutvaldabildsekvensernaplaceradesiprogrammetsmappS2ochirad7
ändradesSEQtill1iställetför2.Rad17ändradesfrånGenerictillAllochirad21
ändradesantalkameravinklarfrån4till1.Ändringarnagjordesförattanpassakodentill
våravideosekvenser.Dehärradernabehöverändrasförvarjenyvideosekvenssom
önskastestas.
UtvaldahockeysekvenserfrånJonasSvenssonsrapportladdadesnerfrån
http://youtube.commedhjälpavYTDVideodownloaderochkundepåsåsättsparaspå
datornförsenareredigering.Efteratthastuderatfilmsekvensernaochvaltutett
lämpligttidsintervallförmotiontrackingutfördesklippningeniWindowsMoviemaker.
Klippensparadessommp4-filer.SekvensernakonverteradessedantillfilformatetAVI
onlineviahttp://video.online-convert.com/convert-to-aviförattkunnaanvändasi
Sigalskod.Filmsekvensernaplaceradessedanisammamappsomövrigkod.
Hockeysekvensernakonverteradesdäreftermedhjälpavsammahemsidatill
bildsekvenseripng-formatförattsevilketresultatsomkundeuppnåsnärbilder
användesiställetförvideo.Bildernasstorlekändradestill656x490bildpunkter,vilket
ärsammastorleksomSigalanvänt.
Sammasakupprepadesförboxningssekvenser.Filmerdärenpersonboxadepå
säckladdadesnerfrånhttp://youtube.comochallaovanståendestegupprepadesföratt
sedansättainbildsekvensernaikoden.
DäreftersparadesbilderochfilmerfråntrackingenundernamnetrezFileför
utvärdering.Förattvisaresultatetsomenfilmanvändeskommandot
ShowResults(rezFile,0).
Arbetetmedkodernautfördespåegenhandisåstorutsträckningsommöjligt.
NärvårprogrammeringskunskapinteräcktetillgavXiaogaiLi,postdoktorvidSTH,tips
ochrådsomgjordeattarbetetmedkodenkundefortsätta.
8
ResultatKjellströmskodgickinteattanvändatillfilmsekvenserochdetvarintemöjligtatt
återskapasammaresultatsomuppnåttsiavhandlingen.
IKjellströmskodredigeradesvariablernaSEQUENCE_STARTpårad63från1
till0ochSEQUENCE_LENGTHpårad64ändradesfrån51till50eftersomantaletbilderi
dettaförsökär51stycken.Idenbefintligakodenanvändesfilformatetmpegmenvalet
avfilformatfölliställetpåMatlabsinbyggda,Matlabmovie.Kodensomkrävdesföratt
skapaenMatlabmoviefannsredaniKjellströmsprogramochdärföravmarkeradesdet
aktuellaavsnittet,rad523till526,ochenfilmavbildsekvensernaskapades.
Pårad148väljsantalmätvärden,såkalladesamples.Värdetpådessavarförvalt
till1000menjusteradestill5000dådetenligtavhandlingenvardetvärdesom
användesförattuppnåbästresultat(Sidenbladh&Black2002).
Figur1sominnehöllridgecue,edgecueochmotioncuekundeåterskapasmed
braresultatmenintecylindrarnasomskulleföljakroppenocharmen.Parametrarna
sombeskrevstartvärdenapåcylindrarnastämdemenfunktionensomskulleberäkna
sannolikhetenförkommanderörelseuppnåddeinteönskatresultat.
Sigalsprogramgickattrekonstrueraochköraförbådeishockey-och
boxningssekvenserutanändringarmentrackingenföljdeintekropparnaeftersomden
utgickfråninitialvärdeninställdaförSigalsegnabildsekvenser.ResultatetfinnsiFigur3
därenbildfrånvarjevideosekvensvisas.FörattkunnarekonstrueraSigalskodkorrekt
krävsberäkningavnyainitialvärden.
Figur3:Bild1visarSigalsursprungligasekvens,bild2visarutvaldishockeysekvensoch
bild3visarutvaldboxningssekvens.
9
DiskussionEftersomKjellströmhadevaltattprogrammeraiMatlabvardetsjälvklartförossatt
väljasammaprogrammeringsspråk.VihadetroligtvisvaltMatlabändåförattdetärdet
programmeringsspråkvianväntossmestavochharmestkunskapi.Matlabärettspråk
somärväldigtbraförberäkningarsamtbildbehandlingvilketantagligenäranledningen
tillattKjellströmvaldedetfrånbörjan.NärdetsedangälldeSigalskodhadedetidigare
resultatenuppnåttsgenomMatlabpåendatormedWindowsellerLinuxochdetfanns
därföringaalternativivalavprogrammeringsspråk.ÖnskatresultatuppnåddesintegenomanvändningavKjellströmskodpågrund
avettflertalanledningar.Dethuvudsakligaproblemetlågantagligenideparameterval
somKjellströmgjortförattuppnåsittresultat.Grundentilldessavalfannsinte
dokumenteradiavhandlingenellerförklaradikodenochdetvardärföristortsett
omöjligtattgöraegnavalsomkundeförbättraresultatet.Eftersomtrackingenoftastvar
mycketbradeförstabildsekvensernalågfeletinteiinitialvärdenautansnarareiövriga
parameterval.
Enannanfaktorsomspelatinärattdenursprungligakodenvar15årgammal
ochunderdentidenharbådedatorerochprogrammeringsspråkutvecklatsavsevärt
vilketkanhaskapatproblemmedkompatibilitet.Förattlösaensådansituationkrävdes
merkunskapändenvihade.EfterhandledningavXiaogaiLikontrolleradesdouble
precisionochandratyperavlösningarutanframgång.IrapportennämnerKjellström
hurhonuppnåttsinaresultatgenomjavaimplementation,någotsomkanhabetydelse
dåvienbartanväntossavMatlab.
Kjellströmhadevaltattanvändafilformatetmpegtillvideosekvensernasom
skapades.Eftersomviintefickmpgwrite,enfunktionförattomvandlafilformatettill
mpeg,attfungeratrotshjälpfrånpersonalpåSTHvaldeviiställetattanvändamatlabs
inbyggdafilformat,matlabmovie.Viansågattresultatetintepåverkadesavvårtval.
Däremotkanfilformatetspelaenviktigrolldåfilmernaskaanvändasiandra
sammanhang,eftersomdettaaldrigblevaktuelltförossuppstodingaproblem.
Medmerkunskapocherfarenhetskulleförmodligenkodenkunnautvecklasoch
användastillavsettändamålmendärbristervårkompetens.Iställetförattförloratid
ochändåinteuppnåönskatresultatvaldeviisamtalmeduppdragsgivareKleivenochLi
attavbrytaarbetetmedKjellströmskodochiställetfokuserapåSigalskod.
10
FördelarnamedSigalskodvarmånga,blandannathadeettännumerrelevant
ochintressantresultatredanuppnåttsmedhjälpavdennakodochvikundedärför
fokuserapåatttestaishockeysekvenserna.Kodenhaderedananväntspå
videosekvenserochharkunnatutföraautomatiseradmotiontracking.Pådettasättfick
vimertidtillattutvärderakodenochmöjlighetenattdraenslutsatsutifrånarbetetmed
detvåolikaprogrammen.
EttproblemsomuppstodvidbyteavkodvarattSigalsprogramvarbetydligt
meromfattandeänKjellströmsochdenknappatidenbegränsadevåramöjligheteratt
hinnaförståkodenidetalj.Fokuslågiställetpåattundersökahurkodenskulle
exekverasochvilkadelarsomvarviktigastattförståförattkunnauppnåettbra
resultat.
AnledningentillattvivaldeattanvändasammahockeysekvensersomJonas
Svenssongjortisittarbetevarattdetkundegeossmöjlighetattjämförahastigheterna
vipotentielltskullekunnataframmedhanshastigheter.ISvenssonsrapportfanns
tydligaresultatövervilkahastigheterhanuppmättmedhjälpavvideoanalysi
Skillspector.Eftersomvårtrackinginteuppnåddeönskatresultatblevdetaldrigaktuellt
attjämförahastigheter.
Storlekenpåbildernabehövdeändrasförattkunnaköraprogrammet.Dethär
ärenstornackdelmedkodendådetblirmycketextraarbeteochviantaratttrackingen
påverkasavattförhållandenaibildenändras.
Vivaldeattäventestakodenförboxningssekvensereftersomviinteuppnådde
önskatresultatförishockeysekvenser.Dettagavossingetbättreresultatutanklargjorde
iställetproblemetmedinitialiseringen.Omvärdenaförinitialiseringenberäknasoch
bytsutikodenkanettbättreresultatförutspås,vilketskullekunnavaraettarbeteför
framtiden.
Någotannatsomkanvaraanledningtillattviintelyckadesuppnåönskat
resultatärattviendastkördeendelavkodensomheterR_quickConfigScriptiBaseline
Algorithm.Ommaniställethadekörthelakoden,inklusivetraining,validationoch
testingsets,trorviattgroundtruthskullekunnabestämmasävenförishockey–och
boxningssekvenserna.Training,validationochtestingsetsärfunktionersomtränar
algoritmernatillattföljakroppenvilketkrävdesvidbyteavvideosekvens.Groundtruth
beräknasmedhjälpdessafunktionerochfungerarsedanutgångspunktförtrackingen.
11
Användandetavbildsekvenserfrånolikasportsituationerförsvårartrackingen
dåbildeninnehållerflerapersonerochenstörandebakgrundsmiljö,somtillexempel
publik.DärförkanSigalsvalavbildsekvensliggatillgrundförhansgodaresultat,då
dennaenbartinnehållerenpersonochenmycketenkelbakgrund.Dennafaktorgördet
svårtattestimeraresultatetförenheltannantypavsekvens.
VikandraslutsatsenattSigalsprogramkommerattkunnaanvändasför
trackingavkroppsrörelseri3Dmendåmåsteinitialiseringenochgroundtruthberäknas
korrekt.
Efteratthaarbetatmedkodernakanvikonstateraattdetärväldigtsvårtatt
sättasiginirespektiveändraikodsomskrivitsavnågonannan.Dethärgjordedet
tydligtförosshurstorbetydelsedetharattskrivamångaochtydligakommentarernär
manskriveregenkod.
12
Referenser
Cai,Q&Aggarwal,J.K.(1996).TrackingHumanMotionUsingMultipleCameras.
Karlsson,D.(2010).HumanMotionTrackingUsing3DCamera.
Svensson,J.(2015).Analysisofconcussionsinprofessionalicehockey.
Sidenbladh,H.&Black,M.(2002).LearningImageStatisticsforBayesianTracking.
Sigal,L.&Black,M.(2006).HumanEva:SynchronizedVideoandMotionCaptureDatasetforEvaluationofArticulatedHumanMotion.
Liu,J.,Liu,D.,Dauwels,J.,Seah,HS.(2015).3DHumanmotiontrackingbyexemplar-basedconditionalparticlefilter.
Tegner,Y.,Gustafsson,B.,Forssblad,M.,Lundgren,L.,SölvebornSA.(2007).Brainconcussionandsports-newguidelinesformanagement.Läkartidningen.
Tian,T-P.,Sclaroff,S.&Yang,M-H.(2009).3DHumanMotionTrackingwithaCoordinatedMixtureofFactorAnalyzersRuiLi.
www.kth.se