• No results found

Sportanalys för skytte : En metod för automatisk detektion och analys av träffar

N/A
N/A
Protected

Academic year: 2021

Share "Sportanalys för skytte : En metod för automatisk detektion och analys av träffar"

Copied!
33
0
0

Loading.... (view fulltext now)

Full text

(1)

Sportanalys

för skytte

En metod för automatisk

detektion och analys av träffar

HUVUDOMRÅDE: Datateknik FÖRFATTARE: Elinore Stenhager HANDLEDARE:Niklas Lavesson JÖNKÖPING 2019 08

(2)

Detta examensarbete är utfört vid Tekniska Högskolan i Jönköping inom datateknik. Författarna svarar själva för framförda åsikter, slutsatser och resultat.

Författare: Elinore Stenhager Examinator: Karl Hammar Handledare: Niklas Lavesson Omfattning: 15 hp

(3)

Förord

Examensarbetet utförs inom ramen för forskningsprojektet Mining Actionable Patterns from complex Physical Environments (MAPPE) som utförs i samverkan med SAAB AB Training and Simulation och finansierats genom anslag från KK-stiftelsen via forskningsmiljön SPARK vid Jönköping University. Projektet MAPPE syftar till att undersöka och utveckla metoder för att automatiskt skapa förståeliga modeller med maskininlärningstekniker. Skytteträning ingår som ett av två scenarion som studeras för att identifiera intressanta problem och föreslå lösningar inom ramen för projektets huvudsakliga mål. Ett stort tack till Niklas Lavesson som med enormt engagemang bidragit med ett inspirerande och utvecklande handledarskap, samt betrott mig med ett relevant och stimulerande examensarbete. Jag vill också tacka min fästman som med mycket tålamod stöttat mig under hela arbetet och försett mig med all korrekturläsning, rådgivning och emotionellt stöd som behövts för att driva igenom detta arbete.

Slutligen vill jag tacka min familj som trots min frånvaro uppmuntrat mig och gett mig den viljekraft jag behövt när styrkan svikit.

(4)

Abstract

Score calculation and performance analysis on shooting targets is an important aspect in development of shooting ability. An image based automatic scoring algorithm would provide automation of this procedure and digital visualization of the result. Prevailing solutions are high quality algorithms detecting hit points with high precision. However, these methods are adapted to unrealistic use cases where single-used, high-quality target boards are photographed in favourable environments. Usually gun shooting is performed outdoors where bullet holes are covered with stickers between shooting rounds, and targets are reused until they fall apart. This bachelor thesis introduces a method of automatic hit point detection adapted to realistic shooting conditions and relies solely on available image processing techniques. The proposed algorithm detects holes with 40 percent detection rate in low-quality target boards, reaching 88 percent detection rate in targets of higher quality. However, producing a significant number of false positives. The result demonstrates the possibilities of developing such a system and highlights the difficulties associated with such an implementation.

Keywords: sports analysis, sports shooting, target board, hit point, accuracy, precision, image processing, machine learning, object classification

(5)

Sammanfattning

Poängräkning och resultatanalys vid skytteträning är en viktig aspekt i utvecklingen av skyttens skjutförmåga. En bildbaserad träffpunktdetektionsalgoritm skulle automatisera denna process och bidra med digital presentation av resultatet. Befintliga lösningar är högkvalitativa metoder som detekterar träffpunkter med hög precision. Dessa lösningar är dock anpassade efter orealistiska användningsfall där måltavlor i gott skick som beskjutits vid ett enda tillfälle fotograferas i gynnsamma miljöer. Realistiska skytteförhållanden förekommer utomhus där träffpunkterna täcks med klisterlappar mellan skottrundorna och måltavlorna återanvänds tills dem faller sönder. Detta kandidatarbete introducerar en metod för automatisk detektion av träffar anpassad efter realistiska användningssituationer och bygger på tillgängliga bildanalystekniker. Den föreslagna metoden detekterar punkter med 40 procent noggrannhet i lågkvalitativa måltavlor och uppnår 88 procents noggrannhet i måltavlor av hög kvalitet. Dock produceras ett betydande antal falska positiva utfall. Resultatet påvisar möjligheten att utveckla ett sådant system och belyser de problem som tillkommer en sådan implementation.

Nyckelord: sportanalys, sportskytte, måltavla, träffpunkt, träffbild, spridning, bildbehandling, maskininlärning, objektklassificering

(6)

Figurförteckning

Figur 1 Internationella pistoltavlan (Svenska Pistolskytteförbundet, 2018)... 8

Figur 2 Representation av typiska träffbilder och spridningar ... 8

Figur 3 Resultat av binärisering. 10 juni, 2018 ... 9

Figur 4 Resultat av morfologisk erosion (Bradski & Kaehler, 2008) ... 9

Figur 5 Resultat av bildsegmentering (Shotton, Johnson, & Cipolla, 2008) ... 9

Figur 6 Måltavlor som återanvänts av olika grad och resulterat i olika kvalitet ...11

Figur 7 Beskärning av måltavlan ...12

Figur 8 Extraktion av riktprick...12

Figur 9 Avgränsa intresseområdet...13

Figur 10 Extraktion av båglinjer ...14

Figur 11 Visualisering av linjerna ℓ𝑛 i 𝐿ℓ ...15

Figur 12 Behandling av linjernas skärningspunkter ...15

Figur 13 Resultat av punktanalys och linjeextraktion ...16

Figur 14 Resultat av yttre poängringsestimering ...16

Figur 15 Representation av ovissheten i riktprickens kvalitet ...17

Figur 16 Resultat av inre poängringestimering ...17

Figur 17 Beräkning av Histogram av Orienterade Gradienter ...19

Figur 18 Avbilderna ska delas in i fyra kategorier efter kvalitet ...20

Figur 19 Exempel på datagruppering ...20

Figur 20 Resultat av poängringsestimering ...24

Figur 21 Histogram 𝐻𝑑𝑛𝑝 ...28

Figur 22 Minnesanvändning för måltavla 4 ...31

(7)

Innehållsförteckning

Introduktion ... 7

Bakgrund ... 8

Pistolskytte ... 8 Datorseende ... 9 Relaterat arbete ...10

Problemformulering ... 11

Projektmål ...11 Avgränsningar ...11

Bildbaserad träffpunktdetektion ... 12

Målsegmentering ...12 Identifiera poängringar ...13 Träffpunktdetektion ...18

Metod ... 20

Experiment ...20 Datainsamling ...20

Resultat och analys... 22

Analys ...22

Diskussion... 25

Slutsatser ... 26

Referenser ... 27

Bilaga A ... 28

Bilaga B ... 29

Bilaga C ... 31

(8)

INTRODUKTION

Introduktion

I sportanalys analyseras olika parametrar under sportsliga aktiviteter. Genom att registrera rörelsemönster hos spelare och deras hantering av redskap och bollar, bidrar sportanalys med möjlighet för prognoser och förbättrad coachning (Van Haaren, et al., 2018). På grund av den teknologiska utvecklingen kan sportanalys till viss del automatiseras. Med hjälp av exempelvis avancerade sensorer och kameror som används för att samla in data, identifierar det utvecklade systemet mönster som sedan kan användas för att framställa prediktioner och prestationsanalyser (Gowda, et al., 2017).

I skytteträning övar skytten sin skjutförmåga då denne avlossar en serie skott mot en måltavla. Serien analyseras därefter utifrån resultatet i syfte att förbättra skyttens skicklighet. För att automatisera denna process har flera metoder testats, däribland metoder baserade på bildbehandlingsalgoritmer. Dock har de bildbaserade metoderna ännu inte anpassats för måltavlor som använts i realistiska skytteförhållanden, där måltavlan används tills den faller sönder. För att undersöka möjligheten att inkludera dessa fall utvecklas en bildbaserad metod för automatisk träffpunktdetektion. Metoden utvärderas baserat på dess förmåga att detektera träffar på måltavlor som använts i realistiska skytteförhållanden och dess användbarhet i skytteträningssituationer. Ett lyckat arbete skulle utmynna i en metod för effektiv automatiserad poängräkning och träffbildsanalys för skyttar och föreningar.

(9)

BAKGRUND

Bakgrund

Pistolskytte

I pistolskytte avfyras ett handeldvapen mot ett stationärt eller rörligt mål och utövas i militära, polisiära och sportsliga sammanhang. I sportskytte testas skyttens skjutförmåga under tidspress och utövas på pistolbanor. På banorna kan skytten antingen öva skytteträning eller delta i tävlingar anknutna till någon av sportens grenar, som precisionsskjutning.

Precisionsskjutning. Under utövandet av precisionsskjutning har skytten en stillastående

skjutställning utan stödhand. Skytten siktar på ett mål 25 meter bort och avlossar en serie skott med ett handeldvapen. En tävling omfattar vanligtvis sex serier eller mer, varav en serie består av fem skott avlossade inom fem minuter (Svenska Pistolskytteförbundet, 2018).

Internationella Pistoltavlan. Målet som används i precisionsskjutning är den internationella pistoltavlan. Tavlan är uppdelad i elva poängringar där ringarna 7–11 är svarta och utgör måltavlans riktprick. De nio yttersta poängringarna är numrerade 1 till 9 och anger antalet poäng skytten erhåller från att träffa motsvarande ring. De två innersta poängringarna är båda onumrerade och representerar 10 poäng vardera, där den innersta kallas innertian. Dessa är separerade för rangordning av skyttar då det uppstår jämna resultat under tävling.

Efter att skytten avlossat en serie skott markeras tavlan. En markering innebär att en kontrollant summerar poäng, kritar kulhålen och döljer dem med klisterlappar. Efter att samtliga serier genomförts sammanställs skyttens totala poäng och resultatet protokollförs (Svenska Pistolskytteförbundet, 2018).

Träffbildsanalys. Vid skytteträning kan skytten utföra en

träffbildsanalys av den skjutna serien. Analysen utförs genom att studera resultat, träffbild och spridning, vilket ger insikt i hur skyttens teknik kan korrigeras avseende faktorer som rörelser, ställning och andning.

Idag utförs poängräkning och träffbildsanalys vanligen manuellt. En ansats för att automatisera dessa steg för sportskyttar är att utveckla ett mjukvaruverktyg som kan installeras på vanliga smartphones. Verktyget låter skytten ta en digital avbild av måltavlan. Den digitala avbilden behandlas sedan av verktyget för att bidra med poängräkning och träffbildsanalys. En utmaning med denna ansats är att utveckla en robust metod för extrahering av träffar från en digital avbild av en måltavla. Detta kräver tillämpning av en lämplig och för ändamålet kalibrerad kedja av bildbehandlings- och bildanalystekniker.

Figur 1 Internationella pistoltavlan (Svenska Pistolskytteförbundet, 2018)

Figur 2 Representation av typiska träffbilder och spridningar

(10)

BAKGRUND

Datorseende

Datorseende (eng: Computer Vision) är ett övergripande område inom datateknik som omfattar bildbehandling, bildanalys och bildkompression. Med hjälp av stillbilder och videokameror bidrar datorseende med visuell tolkning av omvärlden och vägledning för datorer och system (Bradski & Kaehler, 2008).

Bildbehandling. I bildbehandling (eng: Image Processing) bearbetas bilder grafiskt i form av omformning, framhävning eller utjämning. En teknik inom bildbehandling är bildmorfologi (eng: Image Morphology). I morfologi bearbetas pixlarnas intensitet baserat på de angränsande pixlarna, där erosion och utvidgning är de grundläggande operationerna. Bildmorfologi används främst för att avlägsna brus och isolera eller sammanfoga element (Bradski & Kaehler, 2008).

En annan bildbehandlingsteknik kallas bildtröskling (eng: Image Thresholding) och är ett användbart förbehandlingssteg inför olika bildanalysmetoder. Givet en bild och ett definierat tröskelvärde behandlas varje pixel i bilden baserat på dess intensitet i förhållande till tröskelvärdet. Ett exempel på bildtröskling kallas binärisering (eng: Image Binarization) där samtliga pixlar översätts till antingen svart eller vitt (Bradski & Kaehler, 2008).

Bildanalys. Bildanalys (eng: Image Analysis) är tolkandet av

digitala avbilder där meningsfull information utvinns i syfte att styra ett system. Vanliga koncept inom bildanalys är kategorisering, segmentering och identifiering av objekt och andra element i bilder (Bradski & Kaehler, 2008).

I en studie av Shotton et al. (2008) presenteras ett tillvägagångssätt för bilsegmentering. Syftet med bildsegmentering är att urskilja och portionera objekt i bilder. Segmenten kan därefter användas av systemet i vidare beräkningar. Metoden baseras på semantiska textonskogar1 i vilka pixlar bearbetas för att identifiera objektens position och storlek (Shotton, Johnson, & Cipolla, 2008).

1En grupp av datastrukturer med lagrade bildpixlar (Shotton, Johnson, & Cipolla, 2008)

Figur 3 Resultat av binärisering. 10 juni, 2018

Figur 4 Resultat av morfologisk erosion (Bradski & Kaehler, 2008)

Figur 5 Resultat av bildsegmentering (Shotton, Johnson, & Cipolla, 2008)

(11)

BAKGRUND

En annan form av bildanalys presenteras i en studie av Cherabit, Chelali och Djeradi (2012) där en metod för irisdetektion utforskas baserad på cirkeldetektionsalgoritmen Hough Cirkeltransformering (HCT) (eng: Hough Circle Transform). En cirkel med mittkoordinaten (𝑎, 𝑏) och radien 𝑟 kan beskrivas med ekvationen

(𝑥 − 𝑎)2+ (𝑦 − 𝑏)2 = 𝑟2.

Formel 1 Cirkelns ekvation (Cherabit, Chelali, & Djeradi, 2012)

Givet en punkt (𝑥, 𝑦) kan samtliga giltiga parametrar (𝑎, 𝑏, 𝑟) beräknas med Formel 1. Detta kan visualiseras som en inverterad tredimensionell kon placerad på punkten (𝑥, 𝑦, 0). Då är samtliga genomskärningar i denna kon möjliga parametrar (𝑎, 𝑏, 𝑟) (Cherabit, Chelali, & Djeradi, 2012).

Beräkningen av HCT baseras på en voteringsprocess där Formel 1 nyttjas. Givet en kantlinje bestående av punkterna (𝑥𝑖, 𝑦𝑖) definieras cirklarna (𝑥𝑖, 𝑦𝑖), 𝑟 för en bestämd mängd radier 𝑟. För varje 𝑟 registreras antalet skärningspunkter (voteringar) (𝑎, 𝑏) mellan dessa cirklar. Den punkt (𝑎, 𝑏) och radie 𝑟 som resulterar i flest voteringar är den detekterade cirkelns bestämda parametrar (Cherabit, Chelali, & Djeradi, 2012).

Relaterat arbete

Dagens skyttebransch nyttjar främst elektroniska skyttesystem baserade på akustik. Metoden går ut på att avläsa de ljudvågor som uppstår då kulan perforerar träffytan och därigenom lokalisera träffpunkten. Systemen är dock ytterst resurskrävande och kostnaden per enhet överstiger normalt 30 000 SEK, dessutom kräver de regelbundet underhåll då både komponenter och tavlor slits ut vid användning (Bergman, 2016).

Bildbaserade metoder har utvecklats och testats som alternativ för ljudlokalisering. I en studie av Ali och Mansoor (2008) presenteras en metod för bildbaserad träffpunktlokalisering. Den utvecklade metoden resulterade i en noggrannhet på 98,3%, och baserades huvudsakligen på bildsegmentering och erosion. Först segmenterades måltavlans riktprick för att behandlas separat från resten av målytan. Genom erosion blev sedan träffpunkterna framhävda och lokaliserade. Nackdelen med metoden är att den blev utvecklad för avbilder av pistoltavlor tagna under förhållanden som inte korrelerar till realistiska användningssituationer, då pistoltavlorna inte utsatts för förslitning eller återbruk.

En annan metod för bildbaserad träffpunktdetektion presenteras i studien av Rudzinski och Luckner (2013). Studien resulterade i en högkvalitativ metod som detekterar träffpunkter med 92% noggrannhet. Träffpunktdetektionen anpassades till måltavlor som beskjutits vid ett enda tillfälle med högkalibrig ammunition och som fotograferats i en annan miljö än skyttemiljön. Den rekommenderade metoden baserades på tre huvudproblem, nämligen att identifiera tavlans beståndsdelar (riktprick och poängringar), att detektera träffpunkter och att bestämma dess poänghalter. Lösningen grundar sig i befintliga bildanalystekniker som cirkeldetektionsalgoritmen HCT, Prewitt kantdetektion och färgfyllnadsmetoden överflödig fyllning (eng: Flood Fill). Då studien avgränsades till avbilder där varken måltavlan eller dess omkringliggande miljö återspeglar verkliga användningssituationer, tillkommer problem vid användning på måltavlor som brukats under mer realistiska förhållanden. Normalt beskjuts måltavlan utomhus, där den återanvänds och markeras tills den faller sönder. För att inkludera dessa användningsfall i dagens bildbaserade träffpunktlokaliseringssystem kräver befintliga metoder ytterligare bearbetning och utveckling. Dock ger studien en god inblick i de bildbehandlingstekniker som kan anses lämpliga för ändamålet.

(12)

PROBLEMFORMULERING

Problemformulering

En lösning för automatiserad träffpunktdetektion och resultatanalys skulle vara ett mjukvarubaserat verktyg som kan installeras på en modern mobiltelefon. Med verktyget bör användaren kunna ta en digital avbild av måltavlan med den integrerade kameran. Avbilden behandlas sedan för att extrahera och lokalisera träffpunkterna, som till sist presenteras visuellt för användaren. För att vara applicerbar i verkliga situationer bör verktyget vara tillräckligt avancerat för att identifiera träffpunkter oavsett måltavlans skick och kvalitet.

Projektmål

Avsikten med detta kandidatarbete är att utveckla och utvärdera en metod för automatiserad träffpunktdetektion för pistoltavlor använda i precisionsskjutning. Metoden omfattar ett mjukvarubaserat system som genom en digital avbild av måltavlan använder bildbehandlings- och bildanalystekniker för att extrahera träffpunkterna. För att uppnå ett sådant resultat strävar arbetet efter att nå följande mål:

Mål 1. Utveckla en lämplig metod för identifiering av träffpunkter på en digital avbild av en måltavla som brukats under realistiska användningssituationer

Mål 2. Utvärdera metoden avseende kvalitetsparametrarna korrekthet och beräkningseffektivitet

Avgränsningar

För att uppnå projektmålen utvecklas metoden för identifiering av träffpunkter enbart på den internationella pistoltavlan som används i precisionsskytte. Metodens testobjekt omfattar digitala avbildningar av dessa måltavlor, vilka samlas in från lokala skytteklubbar. Måltavlorna är av olika kvalitet och avbilderna tas under olika ljusförhållanden.

Visionen för projektet är att det färdiga systemet ska kunna användas på en modern smartphone. Dock utvecklas metoden inte för mobila enheter och ingen hänsyn tas till energikonsumtion eller användarvänlighet. Metoden utgör alltså en prototyp som påvisar möjligheten att utnyttja bildbehandlings- och bildanalystekniker för det avsedda ändamålet, där resultatet analyseras avseende effektivitet i exekveringstid samt korrekthet i hur många träffar den kan identifiera och lokalisera.

(13)

BILDBASERAD TRÄFFPUNKTDETEKTION

Bildbaserad träffpunktdetektion

Den utvecklade metoden är uppdelad i tre moment. Först förbehandlas avbilden där måltavlan avgränsas till poängytan och riktpricken identifieras. Därefter urskiljs och lagras måltavlans poängringar. Till sist detekteras träffpunkterna och resultatet beräknas.

Målsegmentering

För att underlätta målsegmenteringen utförs en beskärning av måltavlan. Beskärningsprocessen inleds med att binärisera avbilden med Otsus algoritm (Otsu, 1979). Ur resultatet extraheras måltavlans kontur som därefter kan beskäras (Suzuki & Abe, 1985). Den resulterande bilden används sedan som grund för den resterande förbehandlingsprocessen.

Detektion av riktprick. Måltavlans riktprick är en central beståndsdel av måltavlan och utgör

en lämplig referenspunkt för målsegmenteringen. Eftersom måltavlan projiceras på avbilden i en vinkel framträder riktpricken som en roterad ellips. Genom att binärisera avbilden med binäriseringsalgoritmen av Otsu (1979) framträder riktpricken tydligt vars kontur kan extraheras med algoritmen av Suzuki och Abe (1985) och definieras som en ellips 𝐸0.

𝐸0 = (𝑂0, 𝑎0, 𝑏0, 𝜃0)

Formel 2 Riktpricken representerad som ellipsen 𝐸0 och kan beskrivas genom dess mittkoordinat 𝑂0, huvudaxlarna

𝑎0 och 𝑏0 samt dess orientering 𝜃0.

(a) (b) (c)

Figur 7 Beskärning av måltavlan (a) Algoritmens indata (b) Resultat av binärisering (c) Resultat av segmentering

(a) (b)

(14)

BILDBASERAD TRÄFFPUNKTDETEKTION

Avgränsa intresseområdet. Avbildens intresseområde (eng: Region of Interest) är området

inom måltavlans yttre poängring och omfattar måltavlans totala poängyta. Genom bildmaskering (eng: Image Masking) kan intresseområdet isoleras. Bildmaskering innebär att man behandlar vardera pixel utanför ett område genom att multiplicera dess intensiteter med ’0’. Resultatet är att bildytan inom intresseområdet är bevarat medan den resterande ytan är svart.

Poängytans dimensioner är proportionella mot måltavlans riktprick vars verkliga mått är 500 mm respektive 200 mm i diameter. Därav kan poängytans område estimeras med en ellips 𝐸𝑟𝑜𝑖. Dock påverkas måltavlans proportioner av kamerans vinkel, vilket i förlängning påverkar relationen mellan poängytan och riktpricken. För att försäkra att hela poängytan avskiljs utökas därför konstanten 𝑘 med 0,3 andelar.

𝐸𝑟𝑜𝑖 = (𝑂0, 𝑘𝑎0, 𝑘𝑏0, 𝜃0), där 𝑘 = 2,8

Formel 3 Intresseområdet definierat med ellipsen 𝐸𝑟𝑜𝑖 baserat på ellipsen 𝐸0.

Med ellipsen 𝐸𝑟𝑜𝑖 skapas en maskeringsbild där området 𝐸𝑟𝑜𝑖 är vitt (’1’) och det resterande

området är svart (’0’). Resultatet av att multiplicera avbilden med maskeringsbilden är en avbild avgränsad till poängytan. Denna används sedan som indata för resterande implementationer.

Identifiera poängringar

Beroende på avbildens perspektiv projiceras poängringarna i varierande grad som ellipser. Detta innebär att deras mittkoordinater varierar och att dess dimensioner ökar oproportionerligt. Att estimera dessa poängringar utifrån riktprickens dimensioner och position skulle resultera i en poängestimering vars precision korrelerar till kamerans vinkel. Därför utvecklas en metod som baseras på poängringarnas visibilitet i avbilden. Då riktpricken tenderar att förslitas i högre grad än den resterande målytan blir dessa poängringar oftast mindre synliga. Därav kommer poängringsdetektionen delas upp i två metoder, där poängringarna på den ljusa målytan detekteras separat från poängringarna på riktpricken.

Yttre poängringar. Den yttre träffytan består av 6 poängringar, 24 poängsiffror, samt

klisterlappar som i olika grad täcker träffytan och skapar ett ytmönster. Beroende på mängden klisterlappar döljs delar av poängringarna och fragmenterar dessa till båglinjer. Målet med denna metod är att extrahera båglinjernas konturer, bestämma dess poängringnivå och estimera ellipser utifrån dem.

(a) (b)

Figur 9 Avgränsa intresseområdet (a) Maskeringsmatris med ellipsen 𝐸𝑟𝑜𝑖 markerad (b) Resultat av

(15)

BILDBASERAD TRÄFFPUNKTDETEKTION

Den inledande operationen är att urskilja poängringarna från resten av bilden. I Figur 10 demonstreras processen stegvis utifrån avbilden 10(a). Först binäriseras avbilden, vilket ger en detaljerad representation av bildens konturer. Resultatet 10(b) innehåller ett överflöd av information i form av ytmönster, kanter och poängsiffror. Först elimineras de grövre konturerna; genom morfologisk öppning urskiljs de i en separat bild 10(c). Då kan de grövre konturerna helt elimineras från den binära avbilden genom en differentialmetod 10(d) = 10(b)\10(c). Därefter behandlas det brus som emanerat från träffytans ytmönster. Detta kan rensas bort genom att avgränsa konturernas storlek samt rätlinjighet. Resultatet 10(e) innehåller konturer som utgör måltavlans poängringar där mycket få irrelevanta konturer kvarstår. Dessa konturer lagras sedan i en tvådimensionell lista 𝐿𝐾.

𝐿𝐾 = [ 𝜎00 𝜎01 … 𝜎10 𝜎11 … ⋮ ⋮ ⋱ 𝜎0𝑚 𝜎1𝑚 ⋮ 𝜎𝑖0 𝜎𝑖1 … 𝜎𝑖𝑚 ] där { 0 ≤ 𝑖 < |𝐿𝐾| 0 ≤ 𝑚 < |𝐾𝑖|

Formel 4 Lista 𝐿𝐾 som består av konturerna 𝐾𝑖’s koordinater 𝜎𝑖𝑚. Listans rader 𝑖 motsvarar konturernas

index i listan och kolonnerna 𝑚 motsvarar koordinatens index i konturen.

(a) (b) (c)

(d) (e)

Figur 10 Extraktion av båglinjer (a) Algoritmens indata (b) Resultat av applicerat tröskelvärde (c) Resultat av morfologiskt extraherade konturer (d) Differensen (𝑑) = (𝑏)\(𝑐). (e) Resultat efter rensning

(16)

BILDBASERAD TRÄFFPUNKTDETEKTION

Nästkommande steg i metoden är att kategorisera konturerna efter respektive poängringnivå. Processen inleds med att placera totalt 60 punkter 𝑃𝑛 längs avbildens fyra kanter. Genom att skapa linjerna ℓ𝑛 = 𝑂̅̅̅̅̅̅ kan varje pixel längs vardera linje analyseras. Pixelns koordinater 0𝑃𝑛 och intensitet lagras då i en tvådimensionell lista 𝐿ℓ.

Därefter extraheras skärningspunkterna 𝑘𝑛𝑝 där 𝑖𝑛𝑝 = 255 . Då det eventuellt medföljer irrelevanta skärningspunkter beräknas ett gränsvärde för att säkerhetsställa att endast båglinjekonturernas skärningspunkter extraheras:

1. Skapa en lista 𝐿𝑑𝑖𝑠𝑡 bestående av avstånden 𝑑𝑛𝑝 > 1 mellan varje skärningspunkt 𝑘𝑛𝑝

𝐿𝑑𝑖𝑠𝑡 = [𝑑00, 𝑑01, … , 𝑑(𝑛)(𝑝−1), 𝑑𝑛𝑝], där 𝑑𝛼𝛽 = |𝑘̅̅̅̅̅̅̅̅̅̅̅̅̅̅̅̅|. 𝛼𝛽𝑘(𝛼)(𝛽+1)

2. Skapa ett histogram 𝐻𝑑𝑛𝑝 som innehåller fördelningen 𝑓𝑑𝑛𝑝 av värdena 𝑑𝑛𝑝 (se Bilaga A) 𝐻𝑑𝑛𝑝 = [𝑓0, 𝑓1, … , 𝑓𝑑(𝑛)(𝑝−1), 𝑓𝑑𝑛𝑝], där 𝐻𝑑𝑛𝑝[𝑑𝛼𝛽] = 𝑓𝑑𝛼𝛽.

3. Returnera ett lämpligt avstånd 𝑑𝑙𝑖𝑚 som gränsvärde för minsta avståndet mellan två skärningspunkter 𝐿ℎ𝑖𝑠𝑡[𝑑𝑙𝑖𝑚] = [𝐻𝑑𝑛𝑝[> 𝑎] ≥ 𝑏] [0] för bestämda tal 𝑎, 𝑏 där {𝑎 ∈ 𝐿𝑏 ∈ 𝐻𝑑𝑖𝑠𝑡 𝑑𝑛𝑝 . (a) (b) (c)

Figur 12 Behandling av linjernas skärningspunkter (a) Linjer som skär igenom en oönskad kontur 𝐾𝜔

(b) Samtliga avstånd 𝑑𝑛𝑝 mellan skärningspunkterna 𝑘𝑛𝑝 registreras i listan 𝐿𝑑𝑖𝑠𝑡 varpå ett histogram 𝐿ℎ𝑖𝑠𝑡

skapas. Notera att avståndet 𝑑𝛼𝛽 är mindre än det generella avståndet mellan linjernas skärningspunkter

(c) Resultat av applicerat gränsvärde där skärningspunkterna genom konturen 𝐾𝜔 ignoreras

Figur 11 Visualisering av linjerna ℓ𝑛 i 𝐿ℓ 𝐿= [ (𝑘00, 𝑖00) (𝑘01, 𝑖01) … (𝑘10, 𝑖10) (𝑘11, 𝑖11) … ⋮ ⋮ ⋱ (𝑘0𝑝, 𝑖0𝑝) (𝑘1𝑝, 𝑖1𝑝) ⋮ (𝑘𝑛0, 𝑖𝑛0) (𝑘𝑛1, 𝑖𝑛1) … (𝑘𝑛𝑝, 𝑖𝑛𝑝)] där { 0 ≤ 𝑛 < 60 0 ≤ 𝑝 < |ℓ𝑛| 𝑖𝑝𝑛 = (0|255)

Formel 5 Matris 𝐿ℓ vars rader 𝑛 motsvarar linjerna ℓ𝑛 och kolonner 𝑝

motsvarar pixelns position på linjen. Elementet (𝑘𝑛𝑝, 𝑖𝑛𝑝) anger pixelns

(17)

BILDBASERAD TRÄFFPUNKTDETEKTION

Genom att applicera gränsvärdet på matrisen 𝐿 avgränsas matrisen till båglinjekonturernas skärningspunkter. Då poängringarna projiceras som ellipser är det dock osäkert att förlita sig på längden mellan mittpunkten och varje koordinat. Ett riskabelt scenario är ifall avståndet till två koordinater indikerar att dessa tillhör samma poängring trots att detta inte är fallet. Därför extraheras de linjer där |ℓ𝑛| = 6, d.v.s. de linjer som skär genom varje poängring. Resultatet är en 𝑛 × 6-matris 𝑀. Genom att transponera matrisen ges 6 × 𝑛-matrisen 𝑀𝑇 där vardera rad består av koordinater från respektive poängringnivå.

Då koordinaterna i 𝑀𝑇 tillhör konturer i listan 𝐿𝐾 kan dessa användas för att extrahera konturerna där 𝑘𝑛𝑝 ∈ 𝐿𝐾[𝑖] och kategorisera dessa efter poängringnivå.

Därefter kan konturerna i 𝐿𝐾 extraheras och kategoriseras efter poängringnivå. Konturernas koordinater 𝜎𝑖𝑚 används därefter som referenspunkter för att utforma och lagra de ellipser poängringarna utgör i en lista 𝑃𝑅[0: 7] = [𝑂0, 𝐸1, … , 𝐸6] där 𝐸𝛾 = (𝑂𝛾, 𝑎𝛾, 𝑏𝛾, 𝜃𝛾).

Figur 13 Resultat av punktanalys och linjeextraktion 𝑀𝑇 = ( 𝑘00 𝑘10 … 𝑘01 𝑘11 … ⋮ ⋮ ⋱ 𝑘𝑛0 𝑘𝑛1 ⋮ 𝑘0𝑝 𝑘1𝑝 … 𝑘𝑛𝑝 ), där {0 ≤ 𝑝 < 6 0 ≤ 𝑛

Formel 6 Matrisen 𝑀𝑇 som består av skärningspunkternas koordinater 𝑘

𝑛𝑝. Rad 𝑝 motsvarar koordinatens poängringnivå

och kolonn n motsvarar dess relativa position på poängringen.

𝐿𝑃𝑅 = [ 𝑖00 𝑖10 … 𝑖01 𝑖11 … ⋮ ⋮ ⋱ 𝑖𝑛0 𝑖𝑛1 ⋮ 𝑖0𝑝 𝑖1𝑝 … 𝑖𝑛𝑝 ],där { 0 ≤ 𝑛 0 ≤ 𝑝 < 6

Formel 7 Lista 𝐿𝑃𝑅 som består av relevanta konturindex från konturlistan 𝐿𝐾. Raderna 𝑝 motsvarar konturens

poängringnivå och kolonnerna 𝑛 motsvarar konturens position i poängringen.

(a) (b)

Figur 14 Resultat av yttre poängringsestimering (a) De extraherade och kategoriserade konturerna 𝐿𝐾[𝑖]

(18)

BILDBASERAD TRÄFFPUNKTDETEKTION

Inre poängringar. Den inre poängytan består av 5 poängringar inklusive poängringen som

utgör måltavlans riktprick. På grund av poängringarnas storlek tenderar de att i hög grad täckas av klisterlappar. Detta gör det i vissa fall svårt att så mycket som urskilja dem i avbilden. Av denna anledning är det fruktlöst att utveckla en metod som baseras på poängringarnas visibilitet. Metoden går istället ut på att estimera poängringarna utifrån måltavlans riktprick.

Målet med metoden är att beräkna de ellipser poängringarna utgör utifrån riktpricken 𝐸0 = (𝑂0, 𝑎0, 𝑏0, 𝜃0). Då 𝑎0 ≠ 𝑏0 beräknas först antalet pixlar per millimeter vardera axel utgör

genom (𝑝𝑥 𝑚𝑚)𝑎 = 𝑎0 𝑟 (𝑚𝑚𝑝𝑥 ) 𝑏 = 𝑏0 𝑟 ,

där 𝑟 är riktprickens radie i mm. Därefter definieras poängringarna (𝐸7, … , 𝐸11) där 𝐸7 = 𝐸0 och resterande poängringar beräknas genom

𝐸𝛾 = (𝑂0, 𝑎𝛾, 𝑏𝛾, 𝜃0) för 8 ≤ 𝛾 ≤ 11 där 𝑎𝛾 = 𝑎𝛾−1+ 𝑘 (𝑝𝑥 𝑚𝑚)𝑎 𝑏𝛾 = 𝑏𝛾−1+ 𝑘 (𝑝𝑥 𝑚𝑚)𝑏 , där 𝑘 = {50 25 𝑜𝑚 𝑜𝑚 8 ≤ 𝛾 < 11 𝛾 = 11 .

Slutligen läggs de inre poängringarna till i listan 𝑃𝑅 så att 𝑃𝑅[7: 12] = [𝐸7, … , 𝐸11]. Resultatet

är en lista 𝑃𝑅 = [𝑂0, 𝐸1, … , 𝐸11] bestående av riktprickens mittpunkt och måltavlans poängringar. Dessa kan sedan användas för att bestämma dels träffpunktens position på måltavlan, dels dess poänghalt.

(a) (b)

Figur 16 Resultat av inre poängringestimering (a) Demonstration av lyckade fall (b) Ett exempel där avbildens perspektiv påverkat poängringsestimeringens precision

(19)

BILDBASERAD TRÄFFPUNKTDETEKTION

Träffpunktdetektion

En träffpunkt framstår som ett cirkulärt element på måltavlan. Beroende på kontrasten mellan målytan och träffen framstår dess konturer som mer eller mindre synliga. Denna faktor påverkas dels av bildens ljusförhållanden, vilket kan orsaka en enhetlighet i nyans och intensitet mellan träffpunkten och den omkringliggande målytan. Dels av måltavlans kvalitet, där en stor mängd klisterlappar på måltavlan resulterar i ett ytmönster i form av skarpa konturer och ljusskiftningar. Detta kan leda till att målytan och träffpunkten till viss del integreras och gör det svårt att särskilja träffen från övriga områden. Dessa komplikationer gör processen att automatiskt identifiera träffpunkter med elementära form- och kantdetektionsalgoritmer problematisk.

Den utvecklade träffpunktdetektionen inleds med att identifiera intressepunkter på målytan i form av potentiella träffar. Dessa bearbetas till Histogram av Orienterade Gradienter (HOG) (eng: Histogram of Oriented Gradients) i syfte att tolka intressepunktens attribut. Därefter används en tränad klassificerare som separerar faktiska träffpunkter från falska element. En Stödvektormaskin (SVM) (eng: Support Vector Machine) bedöms som lämplig för detta ändamål på grund av dess höga generaliseringsförmåga i kombination med HOG (Chapelle, Haffner, & Vapnik, 1999).

Identifiera intressepunkter. Ett intresseområde kan klassas som en mindre yta på måltavlan

som innehåller en potentiell träffpunkt. Dessa områden identifieras med cirkeldetektionsalgoritmen Hough Cirkeltransformering (HCT). Då vissa träffpunkter inte är perfekta cirklar och ibland framstår som en del av ytmönstret krävs det att algoritmens känslighet är hög. Detta medför en stor mängd falska positiva resultat i form av poängsiffror, klisterlappar och ljusskiftningar.

Beroende på hur tydligt träffpunktens konturer framträder på målytan påverkas cirkeldetektorns förmåga att identifiera den korrekt, där träffens estimerade storlek och position kan felbedömas. Detta innebär att den detekterade cirkelns mittpunkt inte garanterat befinner sig inuti träffpunkten. Den eventuella bristen på referenspunkt i träffen utesluter tidigare använda metoder för rensning av irrelevanta punkter, såsom överflödig fyllning, vilken förespråkades i studien av Rudzinski och Luckner (2013). Istället extraheras pixelzoner baserade på de detekterade intressepunkterna för analys och klassificering.

För att exkludera onödig information genomgår den detekterade pixelzonen en förbehandlingsprocess med en kantdetektionsalgoritm, resultatet är en generaliserad representation av pixelzonens objekt. Ur dessa beräknas slutligen Histogram av Orienterade Gradienter. Behandlingen av pixelzoner visualiseras i Figur 17.

Histogram av Orienterade Gradienter (HOG). Formen av ett objekt i en bild kan beskrivas

genom dess konturer, där en kurva eller linje kan tolkas med en samling vektorer. I bildbehandling kan dessa vektorer beräknas genom Histogram av Orienterade Gradienter (HOG). Beräkningen inleds med att dela upp pixelzonen i mindre regioner (celler) som representerar ett rutnät. Därefter beräknas ett HOG för varje cell baserat på de befintliga pixlarna. För att normalisera histogrammen grupperas cellerna i 2 × 2 överlappande block där histogrammen sammanfogas och dess normer beräknas. Slutligen normaliseras varje cell med sina relaterade normer. Resultatet är en simplifierad tolkning av bildobjektets form som består av en samling vektorer (Dalal & Triggs, 2010).

(20)

BILDBASERAD TRÄFFPUNKTDETEKTION

Stödvektormaskin (SVM). SVM är en maskininlärningsmodell som används för att

klassificera nya datapunkter baserat på tidigare observerad data. Givet en mängd träningsdata där vardera datapunkt tillhör en av två kategorier (klasser) beräknar modellen ett hyperplan. Målet är att definiera hyperplanet optimalt så att samtliga datapunkter från samma klass ligger på samma sida om hyperplanet. Den tränade modellen kan därefter användas för att klassificera nya datapunkter baserat på vilken sida av hyperplanet dem hamnar (Chapelle, Haffner, & Vapnik, 1999). En avgörande faktor för modellens förmåga att klassificera datapunkter är den relativa frekvensfördelningen mellan klasser vid träning. En överrepresenterad klass i mängden data resulterar i vad som kallas överflödig matchning (eng: Overfitting). Konsekvensen är att den underrepresenterade klassen inte detekteras.

I syfte att träna modellen separeras mängden avbilder i två kategorier; träning och testning. Ur träningsbilderna extraheras samtliga HOG och används som datapunkter i träningsprocessen. Dessa klassificeras manuellt där vardera datapunkt markeras som antingen träffpunkt (positiv) eller icke-träffpunkt (negativ). Resultatet är att klassen av positiv data är extensivt underrepresenterad. För att undvika överflödig matchning begränsas därför mängden negativa datapunkter. Syftet med urvalet är att generalisera de attribut som förekommer på målytan, exempelvis klisterlappar, symboler, text och poängsiffror. Den relativa frekvensen för positiva datapunkter efter urvalsprocessen är 33%.

Hyperplanet som beräknas i träningsprocessen består av både rörliga och statiska parametrar. De rörliga parametrarna genereras vid träningen och de statiska parametrarna 𝐶 , 𝛾 och kärnfunktion definieras på förhand. För att bestämma de optimala värdena för dessa parametrar används en sökmetod. Sökmetoden beräknar det optimala hyperplanet genom att jämföra olika kombinationer av givna värden för parametrarna. Resultatet är {𝐶 = 10

𝛾 = 10−5 och en radiell

basfunktionskärna (RBF) (eng: Radial Basis Function Kernel). Det resulterande hyperplanet

kan därefter användas för att prediktera nya datapunkter.

Figur 17 Beräkning av Histogram av Orienterade Gradienter. Uppifrån: Träffpunkter detekterade med HCT; Resultat av kantdetektion; Histogram av Orienterade Gradienter (HOG) visualiserade i rasterformat. De två högra kolumnerna visar detekterade punkter som kan klassificeras som ett falskt negativt element och ett falsk positivt element

(21)

METOD

Metod

Forskningssatsningen avser att utveckla en artefakt enligt Mål 1. Artefakten implementeras och valideras experimentellt med riktiga data efter de parametrar som definieras under Mål 2. Den experimentella processen avser att besvara på frågeställningar härledda från parametrarna (Dodig-Crnkovic, 2002).

Fråga 1 Hur korrekt identifierar artefakten träffpunkter vid tillämpning på avbilder av måltavlor av olika kvalitet, tagna i olika ljusförhållanden?

Fråga 2 Hur beräkningseffektiv är metoden under dessa förhållanden beträffande exekveringstid?

Experiment

Den experimentella processen bygger på att en mängd avbilder av varierande kvalitet matas in i artefakten. Därefter granskas det resulterande utdatat. Processen inleds med att behandla mängden avbilder inför experimenten, där de kategoriseras efter måltavlans kvalitet och avbildens ljusförhållanden i enlighet med Figur 18. Syftet är att ge en insikt kring relevanta faktorer som påverkar metodens prestanda. Kategoriseringen baseras på verktyget datagruppering (eng: Data Clustering) där samtliga pixlar kategoriseras efter deras värden i färgrymden RGB. Teorin är att en måltavla av lägre kvalitet genererar ett större mängd omfattande kluster, jämfört med en måltavla av högre kvalitet där ett fåtal färger dominerar. Därefter inspekteras intensiteten av den dominanta färgkategorin, vilket prognostiserar måltavlans ljusförhållanden.

Artefakten genomgår fyra tester där avbilderna i vardera avbildskategori används som inmatningsdata för respektive test. Insamlandet såväl som tolkningen av data sker först på avbildsnivå där vardera resultat analyseras och värderas utifrån kvalitetsparametrarna. Därefter fördelas resultaten efter vardera avbildskategori där ett medelvärde för vardera parameter beräknas. Med dessa värden utvärderas generella avvikelser och ett slutgiltigt resultat beräknas.

Datainsamling

I syfte att beräkna metodens korrekthet och beräkningseffektivitet inspekteras metodens indata respektive utdata utifrån två perspektiv. Först observeras mängden indata respektive utdata från klassificeraren som används vid träffpunktdetektionen. Utifrån utdatat beräknas mängden korrekt identifierade träffpunkter och mängden falska positiva element. Med dessa parametrar beräknas metodens totala korrekthet i form av dess precision och känslighet (eng: recall). Slutligen mäts metodens exekveringstid i syfte att uppskatta dess beräkningseffektivitet.

Figur 18 Avbilderna ska delas in i fyra kategorier efter kvalitet och ljusförhållanden.

(a) (b)

Figur 19 Exempel på datagruppering (a) En måltavla med bra kvalitet och dåliga ljusförhållanden (b) En måltavla med dålig kvalitet och bra ljusförhållanden

(22)

METOD

𝑃𝐼 och negativ indata 𝑁𝐼. Därefter behandlas det resulterande utdatat där mängden korrekt

positiva element 𝑇𝑃, falska positiva element 𝐹𝑃 och falska negativa element 𝐹𝑁 beräknas.

Tolkning av data. Beräkningen av träffpunktsdetektionens korrekthet sker dels på avbildsnivå,

dels för vardera avbildskategori och presenteras som relativa frekvenser för parametrarna

precision och känslighet. Metodens precision representerar mängden korrekt identifierade

träffpunkter i förhållande till totala mängden utdata och beräknas genom 𝑇𝑃

𝑇𝑃+𝐹𝑃. Dess

känslighet beräknas därefter genom 𝑇𝑃

𝑃𝐼 som representerar mängden korrekt identifierade

träffpunkter i relation till den totala mängden träffar.

Nästkommande steg i utvärderingsprocessen är att mäta metodens exekveringstid 𝑇. Genom att sammanställa exekveringstiderna från vardera avbildskategori kan resultaten jämföras och värderas. Exekveringstiden kommer bemötas i relation med vad som anses rimligt under realistiska användningssituationer.

(23)

RESULTAT OCH ANALYS

Resultat och analys

Metodens förmåga att detektera träffpunkter prövades experimentellt på 15 måltavlor med totalt 65 träffpunkter. Bilderna togs under varierande ljusförhållanden och vinklar där måltavlorna var av olika kvalitet. Metoden detekterade totalt 210 element varav 41 var korrekt identifierade träffpunkter och 169 var falska positiva utfall. De sammanställda resultaten för vardera avbildkategori redovisas i Tabell 1 och utgår från resultaten för vardera måltavla som presenteras i Tabell 3 under Bilaga B.

Analys

Den utvecklade metoden testades på 15 måltavlor av olika kvalitet tagna i olika ljusförhållanden med totalt 65 individuella träffpunkter. Bilderna varierade mellan 0.5–3 MB - RGB i filformatet .jpg. Metoden utvecklades i Python v3.6 på en Intel Core i5 processor med 8 GB RAM och 2.71 GHz.

Träffpunktdetektion. Resultaten påvisar möjligheten att använda bildanalystekniker för

träffpunktdetektion i måltavlor av varierande kvalitet. Den avbildkategori som genererade de bästa resultaten var Kategori 4: Hög kvalitet och Låg ljusstyrka, där 88% av träffpunkterna detekterades. Dock bestod 71% av totala mängden detekterade element av falska positiva utfall. Jämförelsevis med Kategori 1: Hög kvalitet och Hög ljusstyrka där endast 72% av träffpunkterna detekterades, genererades dock en lägre andel falska positiva element som stod för 68% av resultatet. De sämsta resultaten genererades av Kategori 3: Låg kvalitet och Låg

ljusstyrka. Metoden identifierade bara 40% av totala mängden träffpunkter och av totala

mängden datapunkter bestod 85% av falska positiva element.

Metodens beräkningseffektivitet mättes i exekveringstid. Resultatet visar en tydlig korrelation till metodens precision där en högre andel falska positiva element bidrar till en högre exekveringstid. För att identifiera ytterligare samband mellan metodens kvalitetsparametrar analyseras klassificerarens prestanda. Resultatet presenteras i Tabell 2 nedan. En ökad mängd indata resulterar i lägre precision, ökad mängd falska positiva element och ökad exekveringstid.

Tabell 1

Resultat av experiment för vardera avbildskategori

Kategori Antal Måltavlor 𝑃𝐼 𝑇𝑃 Käns-lighet 𝐹𝑃 Precision Exekverings-tid (s) Poäng-estimering* (%) 1 2 11 8 0.72 17 0.32 7.26 100 2 6 24 16 0.66 74 0.21 9.27 100 3 5 21 9 0.40 53 0.15 10.92 0.55 4 2 9 8 0.88 25 0.29 8.83 100

Anteckning. 𝑃𝐼 = Positiv Indata, 𝑇𝑃 = Korrekt Identifierade Träffar, 𝐹𝑃= Falska Positiva

Element. Känslighet = 𝑇𝑃

𝑃𝐼 Precision = 𝑇𝑃 𝑇𝑃+𝐹𝑃.

*Poänghalten representerar antalet korrekt estimerade poäng i relation till antalet korrekt identifierade träffpunkter. 100% positivt utfall betyder därför inte att poängringarna detekterades med 100% precision.

(24)

RESULTAT OCH ANALYS

I studien av Rudzinski och Luckner (2013) presenterades en förbehandlingsprocess för att rensa bort majoriteten falska positiva datapunkter. Processen baserades på en klusterdetektor (eng: blob detection) som beräknar storleken på en grupp pixlar baserat på dess intensiteter. Vid implementation i den slutliga metoden gav processen positiva resultat i de fall träffpunkterna framstod tydligt på träffytan. I de fall träffpunktens konturer framstod mindre tydligt felestimerades dess mittpunkt till utanför den faktiska träffpunkten och orskade att metoden rensade bort vissa positiva datapunkter. Denna förbehandlingsprocess ansågs därför vara riskabel och användes inte i den slutliga metoden. I vidare eftertanke skulle denna metod vara en potentiell lösning på en del av problematiken kring både exekveringstid och falska positiva element.

Poängringsestimering. Poängestimeringen utvärderades genom att inspektera träffpunktens

position i förhållande till de verkliga poängringarna. Det verkliga resultatet jämfördes sedan med resultatet av träffpunkten i förhållande till de estimerade poängringarna. Resultatet är att 90% av de detekterade träffpunkterna tilldelades korrekta poänghalter. Av totalt 15 måltavlor resulterade 10 måltavlor i mycket hög precision av poängringsestimering. På 2 måltavlor estimerades poängringarna med lägre precision och på de resterande 3 måltavlorna detekterades inga poängringar. Poängringsestimeringen precision påverkades i låg grad av falska positiva poängringskonturer, vilket visualiseras i Figur 20(b). Starka kontraster på målytan i form av kontrasterande klisterlappar och skarpa skuggor, samt mycket låg kvalitet påverkade precisionen i högre grad och presenteras i 20(c).

Valet av den utvecklade metoden för poängringestimeringen baserades på de problem som uppstår med måltavlans kvalitet och kamerans vinkel till måltavlan. Flera olika metoder testades innan den aktuella metoden implementerades. En metod baserades på den utmärkande riktpricken och dess proportionerliga form och storlek. Resultatet visade hur kamerans vinkel till måltavlan påverkade proportionaliteten och hur poängringarnas centrum varierade.

En annan metod som övervägdes utgick ifrån den yttersta poängringen. Genom att fördela poängringarna baserat på avstånden mellan den yttre poängringen och riktpricken skulle poängringarna potentiellt kunna estimeras. Dock uppskattades den metoden som osäker på grund av två möjliga scenarion. Konturer utanför den yttersta poängringen skulle medföra att måltavlor som kan uppfattas som högkvalitativa riskerar att estimera poänghalter negativt.

Tabell 2

Resultat av SVM-klassificeraren för vardera avbildskategori

Kategori Antal Måltavlor 𝐼𝑁𝑇𝑂𝑇 𝑃𝐼 𝑁𝐼 𝐹𝑃 𝑓(𝐹𝑃) 𝐹𝑁 𝑓(𝐹𝑁) Exekverings-tid (s) 1 2 220 11 209 17 0.08 3 0.27 7.26 2 6 964 24 940 74 0.08 8 0.33 9.27 3 5 1351 21 1331 53 0.04 12 0.57 10.92 4 2 293 9 284 25 0.09 1 0.11 8.83

Anteckning. 𝐼𝑁𝑇𝑂𝑇= Total mängd Indata till klassificeraren, 𝑃𝐼 = Positiv Indata till

klassificeraren, 𝑁𝐼 = Negativ Indata till klassificeraren, 𝐹𝑃 = Falsk Positiv utdata från

klassificeraren, 𝐹𝑁= Falsk Negativ utdata från klassificeraren. 𝑓(𝐹𝑃) =𝐹𝑃

𝑁𝐼, 𝑓(𝐹𝑁) = 𝐹𝑃

𝑃𝐼

(25)

RESULTAT OCH ANALYS

Scenario två bygger på att potentiella klisterlappar som täcker poängringen skulle påverka estimeringen av dess kontur och bidra med en dålig poängringsestimering. Detta trots att potentiellt synliga poängringar skulle kunna bidra med bättre resultat. Den aktuella poängringsestimeringen valdes utifrån att studera de tillgängliga måltavlorna och konstatera att dessa scenarion är mindre troliga att påverka resultatet.

Minnesanvändning. Metodens minnesanvändning under exekvering mättes genom

pythonbiblioteket memory-profiler vars resultat redovisas grafiskt i Bilaga C. Mätningen gjordes på totalt två avbilder. Först mättes metoden på den avbild med kortast exekveringstid på 6.79 sekunder. Därefter gjordes mätningen på avbilden med längst exekveringstid, vilket var 16.81 sekunder. Förutom exekveringstiden blev de två resultaten relativt likartade i minnesanvändning, där poängringsestimeringen varierade mellan 240 − 365 MB. Träffpunktdetektionens minnesanvändning låg generellt mellan 265 − 350 MB med en topp på 555 MB för cirkeldetektionsmetoden. Resultatet visar att användandet av en SVM-klassifierare inte påverkar minnesanvändningen till den grad att metoden skulle vara otänkbar som en mobilapplikation.

(a) (b) (c)

Figur 20 Resultat av poängringsestimering. Kolumner från vänster: (a) Poängringsestimering med hög precision (b) Poängringsestimering med lägre precision: estimerade poängringar är markerade som linjer och verkliga poängringar markerade med punkter (c) Måltavlor där inga poängringar identifierades

(26)

DISKUSSION

Diskussion

Poängräkning och resultatanalys vid skytteträning är en viktig aspekt i utvecklingen av skyttens skjutförmåga. En bildbaserad träffpunktdetektionsalgoritm som kan installeras på en modern smartphone skulle automatisera denna process och bidra med digital presentation av resultatet, samt tillåta skytten att följa sina framsteg över tid. Målet med denna studie är att utforska möjligheterna att utveckla ett sådant system och bidra med en grundförutsättning för framtida mobilapplikationer inom skytte. Resultatet är en metod som detekterar träffpunkter med en känslighet på 40% och precision på 15% för måltavlor av låg kvalitet. För måltavlor av högre kvalitet uppmättes känsligheten till 88% och dess precision till 29%. Hänsyn bör dock tas till den begränsade och ojämnt fördelade mängden testdata. På grund av detta genererades otydlig representation av metodens totala känslighet och precision. Dock ger mätvärdena en inblick i metodens styrkor och förbättringsmöjligheter.

Den bildbaserade metoden bygger i större delen på elementära bildbehandlingsmetoder som bildsegmentering och cirkeldetektion. För att utvinna måltavlans träffpunkter används maskinlärningsmodellen SVM. Som bidragande faktor av SVM får metoden en hög exekveringstid på 10.92 sekunder för måltavlor av lägre kvalitet. För måltavlor av högre kvalitet mättes exekveringstiden till 7.26 sekunder. Metodens förbrukning av RAM-minne mättes till ~350 MB med maxförbrukning på 555 MB. Resultatet visar att en metod som antingen utesluter användandet av en SVM-klassificerare och endast bygger på elementära bildbehandlingsalgoritmer, eller en mer effektivt tränad klassificerare, skulle vara till fördel för en framtida mobilapplikation. Då studiens huvudfokus är detektion av träffpunkter på måltavlor av låg kvalitet skulle uteslutandet av en klassificerare vara en utökad, men troligtvis nödvändig utmaning för framtida lösningar.

Jämfört med andra studier innefattar denna lösning ett större problemområde avseende de användningsfall metoden är ämnad för. Då tidigare studier utvecklar metoder för måltavlor som använts vid ett tillfälle och var av god kvalitet blir jämförelsen mellan dessa resultat och denna studie svår att genomföra. I studien av Rudzinski och Luckner (2013) detekterar den föreslagna metoden 92% av träffpunkterna. Den metod som presenteras i denna stuide detekterar träffpunkter i liknande omfattning när måltavlor av liknande standard observeras. För att uppnå liknande resultat för samtliga måltavlor krävs en fördjupning i alternativa lösningar.

En ansats för att uppnå önskade resultat vore att implementera en metod för ytterligare rensning innan klassificeraren analyserar datapunkterna. Ett exempel på en sådan metod vore fyllningsmetoden Överflödig Fyllning. Risken med denna metod är att vissa träffpunkter sorteras bort på grund av osäker cirkeldetektion. Dock skulle det rensa bort en ansenlig mängd falska positiva datapunkter och klassificeringsprocessen skulle vara betydligt snabbare. Med denna studie har behovet av en automatisk detektion av träffar med utökad kravspecifikation uppmärksammats där befintlig problematik med en sådan lösning analyserats och belysts. I framtida studier kan dessa resultat användas som vägledning i vilka behov och utmaningar en liknande metod innefattar.

(27)

SLUTSATSER

Slutsatser

I detta kandidatarbete studeras och presenteras en metod för automatisk träffpunktdetektion baserad på simpla bildbehandlingstekniker som Hough Cirkeltransformering och bildklassificering. Syftet med arbetet var att bidra med en lösning för detektion och poängräkning av träffpunkter på återanvända precisionstavlor för skytteträning. Studien resulterade i en träffpunktdetektion som detekterade 88% av träffpunkter på måltavlor av hög kvalitet som återanvänts ett fåtal gånger och 40% av träffpunkter på måltavlor som förslitits i högre grad. Dock detekterades också en andel falska positiva element. Av samtliga detekterade punkter bestod upp till 87% av falska positiva element för lågkvalitativa måltavlor och 68% för måltavlor av högre kvalitet. Med dessa data är metoden olämplig i de scenarion precision är av stor betydelse. Dock påvisar arbetet möjligheten att utveckla ett bildbaserat behandlingsystem för automatisk detektion av träffar och belyser de problem som uppstår vid en sådan implementation.

(28)

Referenser

Ali, F., & Mansoor, A. B. (2008). Computer Vision based Automatic Scoring of Shooting Targets. 2008 IEEE International Multitopic Conference, 515-519.

Bergman, A. (2016). Elektroniskt Skyttesystem: Databearbetning & Presentation. Examensarbete. Karlstads Universitet, Karlstad. Hämtat från http://kau.diva-portal.org/smash/get/diva2:937954/FULLTEXT01.pdf

Bradski, G., & Kaehler, A. (2008). Learning OpenCV: Computer Vision with the OpenCV Library.

Chapelle, O., Haffner, P., & Vapnik, V. N. (1999). Support Vector Machines for Histogram-Based Image Classification. IEEE Transactions on Neural Networks, 10(5): 1055-1064. Cherabit, N., Chelali, F. Z., & Djeradi, A. (2012). Circular Hough Transform for Iris

localization. Journal of Computer Science and Technology, 2(5): 114-121.

Dalal, N., & Triggs, B. (2010). Histograms of Oriented Gradients for Human Detection.

International Conference on Computer Vision, 886–893.

Dodig-Crnkovic, G. (2002). Scientific Methods in Computer Science. Proceedings of the

Conference for the Promotion of Research in IT at New Universities and at University Colleges in Sweden, Skövde, Suecia, 126-130.

Gowda, M., Ashutosh, D., Shen, S., Choudhury, R. R., Yang, L., Golwalkar, S., . . . Yang, X. (2017). Bringing IoT to Sports Analytics. 14th USENIX Symposium on Networked

Systems Design and Implementation, 14: 499-513.

Otsu, N. (1979). A Threshold Selection Method from Gray-Level Histograms. IEEE

Transactions on Systems, Man and Cybernetics, 9(1).

Rudzinski, J., & Luckner, M. (2012). Low-Cost Computer Vision Based Automatic Scoring of Shooting Targets. International Conference on Knowledge-Based and Intelligent

Information and Engineering Systems, 7828: 185-195.

Shotton, J., Johnson, M., & Cipolla, R. (2008). Semantic Texton Forests for Image Categorization and Segmentation. 2008 IEEE Conference on Computer Vision and

Pattern Recognition, 1-8.

Suzuki, S., & Abe, K. (1985). Topological Structural Analysis of Digitized Binary. Computer

Vision, Graphics, and Image Processing, 30(1): 32-46.

Svenska Pistolskytteförbundet. (2018). Del F Precisionsskjutning, Skjuthandbok. Hämtat från https://www.pistolskytteforbundet.se

Van Haaren, J., Zimmermann, A., Renkens, J., Van den Broeck, G., Op De Beéck, T., Meert, W., & Davis, J. (2018). Machine Learning and Data Mining for Sports Analytics.

(29)

BILAGA A

Bilaga A

Histogram

𝑯

𝒅𝒏𝒑

över avstånd mellan konturer

Ett histogram 𝐻𝑑𝑛𝑝 över fördelningen 𝑓𝑑𝑛𝑝 av avstånden 𝑑𝑛𝑝 och representeras i Figur 21. Histogrammet används för att bestämma ett tröskelvärde 𝑑𝑙𝑖𝑚 för minsta avståndet mellan två båglinjer enligt nedan:

𝐿𝑑𝑖𝑠𝑡 = [𝑑00, 𝑑01, … , 𝑑(𝑛)(𝑝−1), 𝑑𝑛𝑝], där 𝑑𝛼𝛽 = |𝑘̅̅̅̅̅̅̅̅̅̅̅̅̅̅̅̅|. 𝛼𝛽𝑘(𝛼)(𝛽+1) 𝐻𝑑𝑛𝑝 = [𝑓0, 𝑓1, … , 𝑓𝑑(𝑛)(𝑝−1), 𝑓𝑑𝑛𝑝], där 𝐻𝑑𝑛𝑝[𝑑𝛼𝛽] = 𝑓𝑑𝛼𝛽

𝐻𝑑𝑛𝑝[𝑑𝑙𝑖𝑚] = [𝐻𝑑𝑛𝑝[> 𝑎] ≥ 𝑏] [0], för bestämda tal 𝑎, 𝑏 där {

𝑎 ∈ 𝐿𝑑𝑖𝑠𝑡 𝑏 ∈ 𝐻𝑑𝑛𝑝.

Tröskelvärdet 𝑑𝑙𝑖𝑚 definieras som ”Det första avståndet > 𝑎 som förekommer ≥ 𝑏 tillfällen”. Idén bakom definitionen av tröskelvärdet visualiseras i histogrammet nedan.

Figur 21 Histogram 𝐻𝑑𝑛𝑝 där y-axeln representerar fördelningen 𝑓𝑑𝑛𝑝 av avstånden 𝑑𝑛𝑝 och x-axeln representerar

avstånden 𝑑𝑛𝑝. Under histogrammet har två särklasser definierats (Brus och Båglinjer) för att demonstrera hur

(30)

BILAGA B

Bilaga B

Resultat av experiment för vardera måltavla

Tabell 3

Resultat av experiment för vardera måltavla

Måltavla Kategori 𝑃𝐼 𝑇𝑃 Käns-lighet 𝐹𝑃 Precision Exekverings-tid (s) Poäng-estimering* 1 1 6 3 0.50 10 0.23 7.07 3 2 1 5 5 1.00 7 0.42 7.45 5 3 2 5 2 0.40 20 0.09 14.55 2 4 2 4 3 0.75 9 0.25 6.79 3 5 2 5 4 0.80 8 0.33 7.98 4 6 2 0 0 1.00 10 0.00 9.48 0 7 2 5 5 1.00 14 0.26 9.75 5 8 2 5 2 0.40 13 0.13 7.12 2 9 3 4 2 0.50 9 0.18 8.16 2 10 3 1 1 1.00 9 0.10 7.80 1 11 3 5 0 0.00 0 0.00 - 0 12 3 5 4 0.80 18 0.18 - 0 13 3 6 2 0.33 17 0.11 16.81 2 14 4 4 3 0.75 15 0.17 7.82 3 15 4 5 5 1.00 10 0.33 9.84 5

Anteckning. 𝑃𝐼= Positiv Indata, 𝑇𝑃= Korrekt Identifierade Träffar, 𝐹𝑃= Falska Positiva

Element. Känslighet = 𝑇𝑃

𝑃𝐼 Precision = 𝑇𝑃 𝑇𝑃+𝐹𝑃.

*Poängestimeringen representerar antalet korrekt estimerade poäng i relation till antalet korrekt identifierade träffpunkter.

(31)

BILAGA B

Resultat av SVM-klassificerare för vardera måltavla

Tabell 4

Resultat av SVM-klassificeraren för vardera måltavla

Måltavla Kategori 𝐼𝑁𝑇𝑂𝑇 𝑃𝐼 𝑁𝐼 𝐹𝑃 𝐹𝑃 𝑁𝐼 𝐹𝑁 𝐹𝑁 𝑃𝐼 Exekveringstid (s) 1 1 109 6 103 10 0.10 3 0.5 7.07 2 1 111 5 106 7 0.07 0 0 7.45 3 2 278 5 273 20 0.07 3 0.6 14.55 4 2 105 4 101 9 0.09 1 0.25 6.79 5 2 129 5 124 8 0.06 1 0.2 7.98 6 2 156 0 156 10 0.06 0 0 9.48 7 2 180 5 175 14 0.08 0 0 9.75 8 2 116 5 111 13 0.12 3 0.6 7.12 9 4 119 4 115 15 0.13 1 0.25 8.16 10 4 174 5 169 10 0.06 0 0 7.80 11 3 133 4 129 9 0.07 2 0.5 - 12 3 118 1 117 9 0.08 0 0 - 13 3 396 5 391 - 0.00 5 1 16.81 14 3 361 5 356 18 0.05 1 0.2 7.82 15 3 343 6 338 17 0.05 4 0.8 9.84

Anteckning. 𝐼𝑁𝑇𝑂𝑇= Total mängd Indata till klassificeraren, 𝑃𝐼 = Positiv Indata till

klassificeraren, 𝑁𝐼 = Negativ Indata till klassificeraren, 𝐹𝑃 = Falsk Positiv utdata från

(32)

BILAGA C

Bilaga C

Resultat av metodens minnesförbrukning i två scenarion

Metoden testades avseende dess förbrukning av RAM-minne. För mätningen användes python-biblioteket memory-profiler där två måltavlor testades. Måltavlorna valdes baserat på deras exekveringstider, där måltavlorna med den högst uppmätta respektive lägst uppmätta exekveringstiden valdes ut. Som grafen visar förbrukas 350 MB RAM under majoriteten av exekveringen. Under testet förbrukade metoden Hough Cirkeltransformering mest minne med en topp på 550 MB RAM, och klassificeraren SVM förbrukar majoriteten av exekveringstiden.

Figur 22 Minnesanvändning för måltavla 4 med exekveringstid på 6.79 sekunder. Grafen är uppdelad i processerna Poängringsestimering (gul) och Träffpunktdetektion (grön). Grafens spets representerar minnesanvändningen av cirkeldetektionsalgoritmen HCT (blått)

(33)

BILAGA C

Figur 23 Minnesanvändning för måltavla 13 med exekveringstid på 16.81 sekunder. Grafen är uppdelad i processerna Poängringsestimering (gul) och Träffpunktdetektion (grön). Grafens spets representerar minnesanvändningen av cirkeldetektionsalgoritmen HCT (blått)

References

Related documents

Vidare kan metoden användas för att avgöra sannolikheten att två brott är utförda av samma gärningsman, vilket kan hjälpa polisen att identifiera serier av brott..

Figur 3.1.. För att beräkna radonbidraget till inomhusluften från diffusio- nen genom byggnadsmaterialet används följande formel:m. radonbidraget

Kol är vanligt på jorden och allt levande som vi känner till består av kolatomer.. Uran är ett grundämne, alla atomer

I extrema fall med mycket fuktiga material som avdunstar vatten snabbt kan det innebära att ventilationen måste forceras för att inte få för höga fukttillskott

Gästgiveriets lokala förankring, med historisk koppling till 1600-tal och Drottning Kristina (bild 8), är ej tydlig för besökarna. Att måltidsprofilen i Grythyttan

Men public service skiljer sig från de kommersiella kanalerna när det gäller tittarsiffror som en variabel för utbudet på så sätt att det inte behöver vara styrande

För att studera och värdera Uppsalahems energisäkerhet sett till energiförsörjning är det därför lämpligt att nyttja flera metoder som belyser olika perspektiv och brister

Makrot för nätutläggning för bil (för Palt, Skåne och Sydost) har justerats så att nätutläggningarna för förmiddagens maxtimme och lågtrafik görs i olika scenarier..