• No results found

Odhad ˇcekac´ı doby pomoc´ı zpracov´an´ı obrazu

N/A
N/A
Protected

Academic year: 2022

Share "Odhad ˇcekac´ı doby pomoc´ı zpracov´an´ı obrazu"

Copied!
51
0
0

Loading.... (view fulltext now)

Full text

(1)

Odhad ˇ cekac´ı doby pomoc´ı zpracov´ an´ı obrazu

Bakal´ aˇ rsk´ a pr´ ace

Studijn´ı program: B2646 – Informaˇcn´ı techologie Studijn´ı obor: 1802R007 – Informaˇcn´ı technologie Autor pr´ace: Matˇej Chumlen

Vedouc´ı pr´ace: Mgr. Jiˇr´ı Vran´y, Ph.D.

(2)

Queue Time Estimation by Image Processing

Bachelor thesis

Study programme: B2646 – Information technology Study branch: 1802R007 – Information technology

Author: Matˇej Chumlen

Supervisor: Mgr. Jiˇr´ı Vran´y, Ph.D.

(3)

Zadání bakalářské práce

Odhad čekací doby pomocí zpracování obrazu

Jméno a příjmení: Matěj Chumlen Osobní číslo: M16000190

Studijní program: B2646 Informační technologie Studijní obor: Informační technologie

Zadávající katedra: Ústav nových technologií a aplikované informatiky Akademický rok: 2018/2019

Zásady pro vypracování:

1. Seznamte se s aktuálním stavem vývoje algoritmů vhodných pro detekci objektů v obraze.

2. Vybrané algoritmy porovnejte z hlediska přesnosti, náročnosti implementace, výpočetní náročnosti a náročnosti na množství i kvalitu tréninkových dat. Na základě porovnání vyberte nejvhodnější algoritmus pro praktickou implementaci.

3. S využitím zvoleného algoritmu implementujte prototyp systému, který umožní odhadnout délku čekání osob ve frontě na základě rozpoznávání čekajících osob ve video záznamu.

(4)

Rozsah grafických prací: dle potřeby Rozsah pracovní zprávy: 30 – 40 stran Forma zpracování práce: tištěná/elektronická

Seznam odborné literatury:

[1] GOODFELLOW, Ian, Yoshua BENGIO a Aaron COURVILLE. Deep learning. Cambridge, Massachusetts: The MIT Press, [2016]. ISBN 02-620-3561-8.

[2] DAVIES, E. R. Computer vision: theory, algorithms, practicalities. 5th edition. Cambridge, CA: Elsevier, 2017.

ISBN 978-0128092842.

[3] ANGELOVA, Anelia, Alex KRIZHEVSKY, Vincent VANHOUCKE, Abhijit OGALE a David FERGUSON. Real-Time Pedestrian Detection With Deep Network Cascades. In: Proceedings of BMVC 2015 [online]. 2015, s. 12 [cit.

2018-10-04]. Dostupné z: https://ai.google/research/pubs/pub43850

[4] TOM?, D., et. al. Deep Convolutional Neural Networks for pedestrian detection. Signal Processing: Image Communication. 2016, (47), 482-489.

[5] SHAOQING R., KAIMING H., ROSS G., and JIAN S., Faster R-CNN: Towards Real-Time Object Detection with Region Proposal Networks. IEEE Trans. Pattern Anal. Mach. Intell. 39, 6 (June 2017), 1137-1149.

arXiv:1506.01497 [cs.CV]

Vedoucí práce: Mgr. Jiří Vraný, Ph.D.

Ústav nových technologií a aplikované informatiky Datum zadání práce: 18. října 2018

Předpokládaný termín odevzdání: 30. dubna 2019

L. S.

prof. Ing. Zdeněk Plíva, Ph.D.

děkan

Ing. Josef Novák, Ph.D.

vedoucí ústavu

(5)

Prohl´ aˇ sen´ı

Byl jsem sezn´amen s t´ım, ˇze na mou bakal´aˇrskou pr´aci se plnˇe vztahuje z´akon ˇc. 121/2000 Sb., o pr´avu autorsk´em, zejm´ena § 60 – ˇskoln´ı d´ılo.

Beru na vˇedom´ı, ˇze Technick´a univerzita v Liberci (TUL) neza- sahuje do m´ych autorsk´ych pr´av uˇzit´ım m´e bakal´aˇrsk´e pr´ace pro vnitˇrn´ı potˇrebu TUL.

Uˇziji-li bakal´aˇrskou pr´aci nebo poskytnu-li licenci k jej´ımu vyuˇzit´ı, jsem si vˇedom povinnosti informovat o t´eto skuteˇcnosti TUL;

v tomto pˇr´ıpadˇe m´a TUL pr´avo ode mne poˇzadovat ´uhradu n´aklad˚u, kter´e vynaloˇzila na vytvoˇren´ı d´ıla, aˇz do jejich skuteˇcn´e v´yˇse.

Bakal´aˇrskou pr´aci jsem vypracoval samostatnˇe s pouˇzit´ım uveden´e literatury a na z´akladˇe konzultac´ı s vedouc´ım m´e bakal´aˇrsk´e pr´ace a konzultantem.

Souˇcasnˇe ˇcestnˇe prohlaˇsuji, ˇze tiˇstˇen´a verze pr´ace se shoduje s elek- tronickou verz´ı, vloˇzenou do IS STAG.

Datum:

Podpis:

(6)

Abstrakt

Tato pr´ace ˇreˇs´ı vˇseobecn´y probl´em ˇcek´an´ı ve frontˇe. C´ılem pr´ace je navrhnout syst´em, kter´y na z´akladˇe obrazov´e informace z videoz´aznamu fronty odhadne ˇcekac´ı dobu z´akazn´ıka. Tento probl´em byl ˇreˇsen za pomoci objektov´eho detektoru zaloˇzen´eho na konvoluˇcn´ıch neuronov´ych s´ıt´ıch Faster R-CNN a trackov´an´ı pomoc´ı KCF trac- keru. Ze zjiˇstˇen´ych informac´ı o ˇcasech pr˚uchodu a poˇctu ˇcekaj´ıc´ıch je vypoˇcten odhad ˇcekac´ı doby. Vytvoˇren´e ˇreˇsen´ı je vyuˇziteln´e v optim´aln´ıch podm´ınk´ach. Jeho funkˇcnost z´avis´ı na um´ıstˇen´ı kamery vzhledem ke sc´enˇe, velikosti sc´eny a kvalitˇe obrazu. Navrˇzen´y syst´em by mohl pomoci ke zpˇr´ıjemnˇen´ı ˇcek´an´ı ve frontˇe.

Kl´ıˇcov´a slova: rozpozn´av´an´ı obrazu, poˇc´ıtaˇcov´e vidˇen´ı, neuronov´e s´ıtˇe, fronta, de- tekce osob, ˇcas ˇcek´an´ı, trackov´an´ı, objektov´y detektor, Faster R-CNN

Abstract

This work addresses common problem of queuing. The goal of the work is to propose a system that estimates queuing time from video. The proposed solution is based on convolutional neural network based object detector Faster R-CNN and KCF tracker. The queuing time is then estimated based on knowledge of serving time per person and number of waiting people. The proposed solution is usable in optimal conditions. Its functionality depends on the position of the camera relative to the scene, scene size and image quality. The proposed system could help to make waiting in the queue more enjoyable.

Keywords: image recognition, computer vision, neural networks, queue, pedestrian detection, waiting time, tracking, object detector, Faster R-CNN

(7)

Podˇ ekov´ an´ı

R´ad bych podˇekoval vedouc´ımu m´e pr´ace Ing. Jiˇr´ımu Vran´emu Ph.D. za podporu, rychl´e reakce na dotazy a vstˇr´ıcn´e konzultace. D´ale bych r´ad podˇekoval Ing. Karlu Paleˇckovi Ph.D. za tipy a rady z oblasti strojov´eho uˇcen´ı a Ing. Josefu Chudobovi Ph.D. za konzultaci ke statistick´e ˇc´asti pr´ace.

V neposledn´ı ˇradˇe patˇr´ı m˚uj d´ık m´e rodinˇe, pˇr´atel˚um a m´e pˇr´ıtelkyni, kter´a mˇela pochopen´ı pro to, ˇze jsem mˇes´ıce zavˇren´y v jedn´e m´ıstnosti, nen´ı se mnou ˇreˇc a nevych´az´ım.

(8)

Obsah

Seznam zkratek . . . 9

1 Uvod´ 11 2 Teorie hromadn´e obsluhy 12 3 Klasick´y pˇr´ıstup detekce osob 14 3.1 Hled´an´ı kandid´atn´ıch oblast´ı . . . 14

3.1.1 Posuvn´e ok´enko . . . 14

3.1.2 Edge Boxes . . . 15

3.1.3 Selective Search . . . 15

3.2 Extrakce pˇr´ıznak˚u. . . 15

3.2.1 Haarovy pˇr´ıznaky . . . 16

3.2.2 HOG . . . 16

3.3 Klasifikace pˇr´ıznak˚u metodou SVM . . . 16

4 Neuronov´e s´ıtˇe 18 4.1 Umˇel´a neuronov´a s´ıt’ . . . 18

4.2 Konvoluˇcn´ı neuronov´e s´ıtˇe . . . 19

4.3 Neuronov´e s´ıtˇe pro objektovou detekci . . . 20

4.3.1 Faster R-CNN . . . 20

4.3.2 Mask R-CNN . . . 21

4.3.3 R-FCN . . . 21

4.3.4 YOLOv3 . . . 21

4.3.5 SSD . . . 22

4.4 Hodnocen´ı ´uspˇeˇsnosti detekˇcn´ıch algoritm˚u . . . 22

5 Datasety pro objektovou detekci 24 5.1 Pascal VOC . . . 24

5.2 ImageNet . . . 24

5.3 COCO . . . 25

6 Knihovny pro strojov´e uˇcen´ı 26 6.1 TensorFlow . . . 26

6.2 PyTorch . . . 26

6.3 Keras. . . 27

6.4 Caffe . . . 27

(9)

7 Reˇserˇse existuj´ıc´ıch ˇreˇsen´ı 28 8 Tvorba prototypu syst´emu pro odhad ˇcekac´ı doby ve frontˇe 30

8.1 Hardwarov´e a softwarov´e prostˇredky . . . 30

8.2 V´ybˇer prostˇredk˚u pro pouˇzit´ı v syst´emu . . . 31

8.2.1 Testovac´ı data . . . 31

8.2.2 Porovn´an´ı model˚u detekce . . . 32

8.2.3 Porovn´an´ı trackovac´ıch algoritm˚u . . . 34

8.2.4 Vliv um´ıstˇen´ı kamery . . . 36

8.3 Syst´em . . . 37

8.3.1 Izolace fronty ve sc´enˇe . . . 37

8.3.2 Detekce osob ve frontˇe . . . 39

8.3.3 Trackov´an´ı osob ve frontˇe . . . 40

8.3.4 Oblast obsluhy . . . 40

8.3.5 Odhad ˇcekac´ı doby . . . 40

8.3.6 Bˇeh syst´emu pro odhad ˇcekac´ı doby . . . 42

8.4 Budouc´ı pr´ace . . . 43

8.4.1 Dotr´enov´an´ı modelu z re´aln´ych z´aznam˚u . . . 43

8.4.2 Vstup dat z externıho zdroje . . . 43

8.4.3 Tracker vyuˇz´ıvaj´ıc´ı GPU . . . 44

8.4.4 Uprava kotev pro volbu kandid´´ atn´ıch oblast´ı . . . 44

9 Z´avˇer 45

Literatura 47

(10)

Seznam zkratek

FPS sn´ımky za sekundu

HOG histogram orientovan´ych gradient˚u MLP v´ıcevrstv´y perceptron

SVM metoda podp˚urn´ych vektor˚u RPN s´ıt’ pro n´avrh region˚u

IoU Jaccard˚uv koeficient TP skuteˇcnˇe pozitivn´ı FP faleˇsnˇe pozitivn´ı FN faleˇsnˇe negativn´ı

P pˇresnost

R ´uplnost

AP pr˚umˇern´a pˇresnost AR pr˚umˇern´a ´uplnost

mAP stˇredn´ı pr˚umˇern´a pˇresnost mAR stˇredn´ı pr˚umˇern´a ´uplnost

ILSVRC ImageNet Large Scale Visual Recognition Competition ECCV European Conference on Computer Vision

SIFT Scale-invarient feature transform

(11)

Seznam obr´ azk˚ u

3.1 Roura detekce osob v obraze . . . 14

3.2 Lokalizace objekt˚u pomoc´ı metody Selective Search [7] . . . 15

3.3 Haarovy pˇr´ıznaky . . . 16

4.1 Sch´ema umˇel´eho neuronu . . . 19

4.2 Porovn´an´ı metod objektov´e detekce [11] . . . 20

4.3 Architektura R-FCN [12] . . . 21

6.1 Poˇcet zm´ınˇen´ı knihoven na arXiv k 21. 8. 2018 podle [16] . . . 26

8.1 Segmentace v softwaru Labelme . . . 32

8.2 Uk´azka sn´ımk˚u z testovac´ıch dat. . . 32

8.3 Uspˇ´ eˇsnost detekce na kameˇre um´ıstˇen´e shora . . . 37

8.4 Sch´ema syst´emu pro odhad ˇcekac´ı doby . . . 38

8.5 Vymaskov´an´ı fronty pomoc´ı bin´arn´ı masky . . . 39

8.6 Screenshot bˇeˇz´ıc´ıho syst´emu pro odhad ˇcekac´ı doby . . . 43

(12)

1 Uvod ´

Uloha detekce osob zaznamen´´ av´a v souvislosti s rozvojem v oblasti samoˇriditeln´ych automobil˚u, robotiky a sledov´an´ı osob bouˇrliv´y v´yvoj. Zat´ımco klasick´e detekˇcn´ı metody jako HOG dosahovaly na svou dobu dobr´ych v´ysledk˚u, za pˇrelom v oblasti detekce lze povaˇzovat aˇz rozvoj konvoluˇcn´ıch neuronov´ych s´ıt´ı.

Aˇckoliv jedno z prvn´ıch vyuˇzit´ı konvoluˇcn´ıch neuronov´ych s´ıt´ı pro klasifikaci se datuje do roku 1989, kdy Yann LeCun aplikoval v´ycevrstvou neuronovou s´ıt’ na probl´em rozpozn´av´an´ı ruˇcnˇe psan´ych ˇc´ıslovek [2], v´yraznˇeji se zaˇcaly vyuˇz´ıvat po roce 2012, kdy s´ıt’ AlexNet [3] dos´ahla v soutˇeˇzi ILSVRC o v´ıce neˇz 10 procent niˇzˇs´ı top-5 chyby neˇz ostatn´ı soutˇeˇzn´ı vstupy. To bylo umoˇznˇeno vyuˇzit´ım grafick´ych procesor˚u.

Tato pr´ace se zab´yv´a n´avrhem prototypu syst´emu, kter´y by s vyuˇzit´ım detekˇcn´ıch algoritm˚u umoˇznil odhadnout ˇcekac´ı dobu ve frontˇe. Takov´y syst´em m˚uˇze v´yznamnˇe pomoci s optimalizac´ı vyuˇz´ıv´an´ı zdroj˚u v provozech jako jsou letiˇstˇe, supermarkety, menˇs´ı obchody a dalˇs´ı sluˇzby a t´ım zpˇr´ıjemnit z´akaznick´y proˇzitek pˇri udrˇzen´ı co nejniˇzˇs´ıch n´aklad˚u. Jeho nasazen´ı poˇc´ıt´a s vyuˇzit´ım st´avaj´ıc´ıch kamerov´ych syst´em˚u.

Aˇckoliv podobn´e syst´emy jiˇz existuj´ı (viz kapitola7), jedn´a se o komerˇcn´ı produkty.

Dokumentace tˇechto produkt˚u nenab´ız´ı informace o technologii pouˇzit´e pˇri imple- mentaci, ani informace o ´uspˇeˇsnosti.

V r´amci t´eto pr´ace jsou prozkoum´any existuj´ıc´ı algoritmy, kter´e jsou pro ˇreˇsen´ı probl´emu odhadu ˇcekac´ı doby z videoz´aznamu potˇrebn´e (8.2). Implementace tˇechto algoritm˚u jsou n´aslednˇe otestov´any a porovn´any z hlediska pˇresnosti a v´ypoˇcetn´ı n´aroˇcnosti. Za jejich vyuˇzit´ı je implementov´an prototyp syst´emu pro odhad ˇcekac´ı doby(8.3).

Potenci´al navrhovan´eho syst´emu spoˇc´ıv´a v ˇsirok´e ˇsk´ale provoz˚u, kde m˚uˇze b´yt uplatnˇen, vzhledem k relativnˇe mal´ym n´aklad˚um, kter´e jsou s t´ım spojeny.

Kapitola 2 se zab´yv´a form´aln´ım vymezen´ım fronty. V kapitole 3 jsou pops´any klasick´e pˇr´ıstupy ˇreˇsen´ı ´ulohy detekce osob a v kapitole4 jsou struˇcnˇe pˇredstaveny neuronov´e s´ıtˇe a souˇcasn´e detekˇcn´ı algoritmy. Kapitola 5 popisuje pouˇz´ıvan´e da- tasety pro objektovou detekci. Knihovnami pro strojov´e uˇcen´ı se zaob´ır´a kapitola 6.

(13)

2 Teorie hromadn´ e obsluhy

Za frontu m˚uˇzeme obecnˇe oznaˇcit takov´y syst´em, ve kter´em z´akazn´ıci (osoby, poˇzadavky, automobily atp.) ˇcekaj´ı na obslouˇzen´ı omezen´ym mnoˇzstv´ım obsluˇzn´ych uzl˚u (bezpeˇcnostn´ı p´as, pokladna, hraniˇcn´ı kontrola, ˇcerpac´ı stanice). Form´aln´ım ukotven´ım fronty se zab´yv´a odvˇetv´ı aplikovan´e matematiky oznaˇcovan´e Teorie hromadn´e obsluhy.

Jeho c´ılem je navrhnout takov´y syst´em, kter´y optimalizuje mnoˇzstv´ı prostˇredk˚u nutn´e pro obslouˇzen´ı z´akazn´ık˚u. Ve sv´ych z´avˇerech vych´az´ı ze statistiky a teorie pravdˇepodobnosti.

Z´akazn´ıci mohou b´yt obsluhov´ani podle nˇekolika r˚uzn´ych kl´ıˇc˚u - frontov´ych reˇzim˚u. Nejbˇeˇznˇejˇs´ı syst´em obsluhy je zaloˇzen na principu FIFO - pˇr´ıchoz´ı, kter´y ˇcek´a ve frontˇe nejdelˇs´ı dobu je obslouˇzen nejdˇr´ıve. Fronta m˚uˇze b´yt obsluhov´ana jako z´asobn´ık LIFO (skladovac´ı syst´emy). Posledn´ı pˇr´ıchoz´ı je obslouˇzen jako prvn´ı.

Dalˇs´ım rozˇs´ıˇren´ım tˇechto pˇr´ıstup˚u m˚uˇze b´yt zaveden´ı priorit. Z´akazn´ık s vyˇsˇs´ı priori- tou je obslouˇzen pˇrednostnˇe (model pouˇz´ıvan´y na letiˇst´ıch pˇri bezpeˇcnostn´ı kontrole i boardingu). Poˇrad´ı obslouˇzen´ı m˚uˇze tak´e z´aviset na dobˇe jeho trv´an´ı. Z´akazn´ık, jehoˇz obslouˇzen´ı bude trvat nejkratˇs´ı dobu, dostane pˇrednost (expresn´ı fronty v obchodech).

Frontu lze d´ale rozliˇsovat podle jej´ıho uspoˇr´ad´an´ı vzhledem k obsluˇzn´ym uzl˚um.

Lze uvaˇzovat frontu s jedn´ım uzlem obsluhy, kde m´a obsluha jednu f´azi (napˇr. droge- rie), nebo v´ıce f´az´ı (napˇr. automyˇcka). Dalˇs´ı typ fronty je fronta s v´ıce uzly obsluhy, kdy z´akazn´ık vyuˇzije jak´ykoliv uzel, kter´y je pr´avˇe nevyt´ıˇzen´y (napˇr. ˇcek´an´ı na piso´ary).

”Teorie front se snaˇz´ı popsat v´ykonnost syst´emu obsluhy popsan´eho n´asleduj´ıc´ımi n´ahodn´ymi veliˇcinami: poˇcet z´akazn´ık˚u v syst´emu, poˇcet ˇcekaj´ıc´ıch z´akazn´ık˚u, ˇcas trv´an´ı obsluhy z´akazn´ıka, ˇcas, po kter´y uzel obsluhy nen´ı vyt´ıˇzen´y a ˇcas po kter´y uzel obsluhy vyt´ıˇzen´y je.“ [4]

Pro popis a klasifikaci front se v teorii hromadn´e obsluhy vyuˇz´ıv´a Kendallova notace, kter´a popisuje syst´em fronty pomoc´ı ˇsesti znak˚u:

A/B/m/K/n/D (2.1)

• A - distribuˇcn´ı funkce ˇcas˚u mezi pˇr´ıchody

• B - distribuˇcn´ı funkce ˇcasu obsluhy jednoho z´akazn´ıka

• m - poˇcet bod˚u obsluhy

• K - kapacita syst´emu

(14)

• n - velikost populace

• D - reˇzim fronty

Prvn´ı tˇri znaky jsou zadan´e standardnˇe. Pokud nejsou zadan´e zbyl´e tˇri, pˇredpokl´ad´a se, ˇze K a n jsou nekoneˇcn´e. V´ychoz´ı reˇzim fronty D je FIFO.

Pˇredpokladem funkce model˚u syst´em˚u hromadn´e obsluhy je, ˇze vstupn´ı i v´ystupn´ı tok poˇzadavk˚u je stacion´arn´ı proces s konzistentn´ı intenzitou, kde jsou intervaly mezi pˇr´ıchody spojit´a n´ahodn´a veliˇcina se stejn´ym rozdˇelen´ım pravdˇepodobnosti.

Vyuˇz´ıv´a se n´asleduj´ıc´ı notace:

• λ - intenzita vstupn´ıho toku - stˇredn´ı hodnota poˇctu vstupuj´ıc´ıch z´akazn´ık˚u za ˇcasovou jednotku

• µ - intenzita obsluhy - stˇredn´ı poˇcet z´akazn´ık˚u obslouˇzen´ych jednou linkou

• ρ = λ/µ - intenzita provozu

(15)

3 Klasick´ y pˇ r´ıstup detekce osob

Detekce osob v obraze je podmnoˇzinou ´ulohy detekce objekt˚u v obraze. Tato kapitola se vˇenuje krok˚um, kter´e vedou k detekci. Tyto kroky jsou s obmˇenami spoleˇcn´e vˇsem metod´am detekce. V prvn´ım kroku jsou v obraze nalezeny kandid´atn´ı oblasti, kter´e by potenci´alnˇe mohly obsahovat objekt. V dalˇs´ım kroku jsou z´ısk´any pˇr´ıznaky ob- jekt˚u navrˇzen´ych prvn´ım krokem a na z´akladˇe tˇechto pˇr´ıznak˚u je urˇcena pˇr´ısluˇsnost ke tˇr´ıdˇe. V pˇr´ıpadˇe klasifikace do dvou tˇr´ıd tedy je objekt, a nebo nen´ı objekt.

Obr´azek 3.1: Roura detekce osob v obraze

3.1 Hled´ an´ı kandid´ atn´ıch oblast´ı

Kvalitn´ı metoda hled´an´ı kandid´atn´ıch oblast´ı mus´ı splˇnovat n´asleduj´ıc´ı podm´ınky.

Mus´ı b´yt v´ypoˇcetnˇe rychl´a. D˚uvod jej´ıho pouˇzit´ı je sn´ıˇzen´ı poˇctu klasifikovan´ych oblast´ı, protoˇze klasifikace je standardnˇe v´ypoˇcetnˇe n´aroˇcn´a a je ´uzk´ym hrdlem detekˇcn´ı roury. Z´aroveˇn mus´ı v´est k co nejlepˇs´ı ´uplnosti, tj. nevynech´avat skuteˇcnˇe pozitivn´ı oblasti.

3.1.1 Posuvn´ e ok´ enko

Naivn´ı pˇr´ıstup by znamenal pixel po pixelu posouvat vˇsechny moˇzn´e rozmˇery ok´enka ohraniˇcuj´ıc´ıho kandid´atn´ı oblast. Takov´y pˇr´ıstup by vˇsak znamenal velkou v´ypoˇcetn´ı z´atˇeˇz a byl by pˇr´ıliˇs pomal´y. Tento pˇr´ıstup lze vylepˇsit na z´akladˇe znalosti vlastnost´ı hledan´ych objekt˚u. Je moˇzn´e pˇredpokl´adat urˇcitou minim´aln´ı a maxim´aln´ı velikost objektu v obraze a nˇejakou koneˇcnou mnoˇzinu pomˇer˚u stran, kter´e m˚uˇze hledan´y objekt m´ıt (napˇr´ıklad obd´eln´ık s pomˇerem stran 1:3 bude reprezentovat osobu nebo automobil sp´ıˇse, neˇz obd´eln´ık s pomˇerem stran 1:20). T´eto metodˇe se ˇr´ık´a posuvn´e

(16)

ok´enko a i pˇres popsan´e ´upravy generuje pˇr´ıliˇs velk´e mnoˇzstv´ı kandid´atn´ıch ob- last´ı. Z´aroveˇn se nespr´avnˇe zvolen´ym pomˇerem stran a velikostmi hledan´ych oblast´ı zvyˇsuje ˇsance na ztr´atu ´uplnosti nalezen´ych objekt˚u.

3.1.2 Edge Boxes

Jednou z metod vyuˇz´ıvaj´ıc´ıch informace z obrazu je metoda Edge Boxes [5]. Algorit- mus vyuˇz´ıv´a rychlosti hled´an´ı hran v obraze metodou Structured Edge. Pomoc´ı po- suvn´eho ok´enka jsou n´aslednˇe ohodnoceny oblasti podle toho, jak uzavˇrenou hranu obsahuj´ı – jak´a je ˇsance, ˇze obsahuj´ı cel´y objekt. Tyto oblasti jsou n´aslednˇe pro- filtrov´any. V ´uloze detekce osob v obraze dosahuje podobnˇe jako Selective Search dobr´ych v´ysledk˚u [6].

3.1.3 Selective Search

Dalˇs´ı moˇznou metodou je Selective Search [7]. Algoritmus vyb´ır´a pouze oblasti, v nichˇz je pravdˇepodobn´e, ˇze obsahuj´ı objekt. K tomu vyuˇz´ıv´a segmentaci obrazu. Ob- raz je segmentov´an podle hodnot v r˚uzn´ych barevn´ych prostorech, jak je pops´ano v [8]. Jednotliv´e segmenty jsou oznaˇceny ohraniˇcuj´ıc´ım obd´eln´ıkem jako kandid´atn´ı oblasti. N´aslednˇe jsou urˇceny podobnosti mezi sousedn´ımi regiony a dva sousedn´ı regiony, kter´e jsou si nejpodobnˇejˇs´ı jsou sjednoceny. Tento hladov´y algoritmus se opakuje, dokud nen´ı cel´y obraz jedn´ım regionem. V´ysledkem je nˇekolikan´asobnˇe menˇs´ı mnoˇzstv´ı kandid´atn´ıch region˚u, coˇz znamen´a menˇs´ı v´ypoˇcetn´ı n´aroˇcnost kla- sifikace. Z´aroveˇn tento algoritmus nestanovuje pevnˇe dan´a mˇeˇr´ıtka objekt˚u a pomˇery stran, coˇz znamen´a, ˇze dosahuje lepˇs´ı ´uplnosti.

Obr´azek 3.2: Lokalizace objekt˚u pomoc´ı metody Selective Search [7]

3.2 Extrakce pˇ r´ıznak˚ u

Pot´e, co jsou nalezeny kandid´atn´ı oblasti je tˇreba z nich z´ıskat informace, kter´e jsou n´aslednˇe vyuˇzity pro klasifikaci. Tedy urˇcen´ı pˇr´ısluˇsnosti ke tˇr´ıdˇe.

(17)

3.2.1 Haarovy pˇ r´ıznaky

Haarovy pˇr´ıznaky jsou pˇr´ıznaky, kter´e vyuˇz´ıvaj´ı charakteristick´ych jasov´ych rozd´ıl˚u mezi oblastmi objektu. Pomoc´ı masek r˚uzn´ych velikost´ı (3.3 klasifik´ator z´ısk´av´a in- formace o pˇr´ıtomnosti hran (a, b), nebo linek (c, d) v obraze. Nejzn´amˇejˇs´ı aplikaci Haarov´ych pˇr´ıznak˚u je detektor Viola-Jones [9], kter´y je prim´arnˇe urˇcen k roz- pozn´av´an´ı obliˇcej˚u. ´Uspˇeˇsnost klasifikace zaloˇzen´e na Haarov´ych pˇr´ıznac´ıch z´avis´ı na ´uhlu z´abˇeru a klasifik´ator je m´alo robustn´ı v˚uˇci jasov´ym rozd´ıl˚um a natoˇcen´ı objektu.

Obr´azek 3.3: Haarovy pˇr´ıznaky

3.2.2 HOG

Vˇetˇs´ı ´uspˇeˇsnosti pˇri detekci osob dosahuje metoda HOG (histogram orientovan´ych gradient˚u). Metoda vyuˇz´ıv´a informace o velikosti a smˇeru zmˇeny intenzity jasu v obraze. Na obraz je aplikov´an postupnˇe Sobel˚uv hranov´y detektor s j´adrem velikosti 1 pro vodorovn´e a svisl´e hrany. N´aslednˇe je pro kaˇzd´y bod v obraze spoˇc´ıt´ana velikost a smˇer gradientu podle vztahu:

g =qg2x+ g2y (3.1)

θ = arctan gy

gx (3.2)

Obraz je pot´e rozdˇelen na ˇctvercov´e oblasti n × n. Jejich velikost je zvolena podle velikosti objektu. V tˇechto ˇctverc´ıch je vypoˇcten histogram gradient˚u, ˇc´ımˇz se in- formace obsaˇzen´a v obraze v´yznamnˇe zredukuje. Histogramy jsou n´aslednˇe norma- lizov´any v bloku k × k sousedn´ıch histogram˚u. Tyto bloky se vz´ajemnˇe pˇrekr´yvaj´ı.

T´ım je doc´ıleno vˇetˇs´ı robustnosti v˚uˇci nerovnomˇern´emu osvˇetlen´ı sc´eny. Norma- lizovan´e histogramy jsou spojeny do fin´aln´ıho vektoru, kter´y pˇredstavuje vektor pˇr´ıznak˚u pro klasifikaci. Tato metoda je robustnˇejˇs´ı v˚uˇci jasov´ym nerovnostem, ale pˇredpokl´ad´a vzpˇr´ımenou polohu osob a jejich dostateˇcnou viditelnost [10].

3.3 Klasifikace pˇ r´ıznak˚ u metodou SVM

Metoda podp˚urn´ych vektor˚u SVM je metodou strojov´eho uˇcen´ı s uˇcitelem. Pouˇz´ıv´a se ke klasifikaci. Podstata klasifikace spoˇc´ıv´a v rozdˇelen´ı prostoru pˇr´ıznak˚u na dva

(18)

poloprostory, kter´e obsahuj´ı data odliˇsn´ych klasifikovan´ych tˇr´ıd takov´ym zp˚usobem, kter´y maximalizuje minim´aln´ı vzd´alenost bod˚u od dˇel´ıc´ı nadroviny, kterou lze popsat rovnic´ı

~

w · ~x + b = 0, (3.3)

kde ~w je norm´ala dˇel´ıc´ı nadroviny, ~x vektor pˇr´ıznak˚u a b posun dˇel´ıc´ı nadroviny od poˇc´atku soustavy souˇradnic. Maximalizace vzd´alenosti prob´ıh´a uˇcen´ım klasifik´atoru na tr´enovac´ıch datech, u kter´ych je zn´ama pˇr´ısluˇsnost ke tˇr´ıdˇe. V´ysledkem uˇcen´ı je vektor ~w a bias b. Pomoc´ı j´adrov´ych funkc´ı lze pouˇz´ıt SVM k neline´arn´ı klasifikaci a existuj´ı modifikace metody pro klasifikaci do v´ıce tˇr´ıd. SVM je d´ıky rozvolˇnuj´ıc´ım promˇenn´ym robustn´ı v˚uˇci ˇsumu a dosahuje dobr´ych v´ysledk˚u na mal´ych datech.

(19)

4 Neuronov´ e s´ıtˇ e

4.1 Umˇ el´ a neuronov´ a s´ıt’

Umˇel´a neuronov´a s´ıt’ je v´ypoˇcetn´ı model, kter´y je inspirov´an biologickou neuronovou s´ıt´ı lid´ı a zv´ıˇrat. Je to syst´em, kter´y se podobnˇe jako mozek uˇc´ı vykon´avat danou funkci podle pˇr´ıklad˚u, aniˇz by bylo tˇreba ho k tomu pˇredprogramov´avat. Umˇel´a neuronov´a s´ıt’ nach´az´ı uplatnˇen´ı v situac´ıch, kde nestaˇc´ı pouˇz´ıt rozhodovac´ı stromy zaloˇzen´e na jasnˇe definovan´ych podm´ınk´ach.

Z´akladn´ım stavebn´ım prvkem umˇel´e neuronov´e s´ıtˇe je podobnˇe jako u biologick´e neuronov´e s´ıtˇe neuron. Kaˇzd´y neuron dok´aˇze zpracovat vstupn´ı sign´al z jin´ych neu- ron˚u a vyslat v´ystupn´ı sign´al d´al. Sch´ema umˇel´eho neuronu popisuje obr´azek4.1.

Kaˇzd´y neuron pˇrijme vektor vstup˚u ~x, kter´y vyn´asob´ı vektorem vah ~w, k sumˇe v´ysledku je pˇriˇcten pr´ah (bias). V´ystup u je pˇred´an aktivaˇcn´ı funkci. Aktivaˇcn´ı funkce pˇredstavuje nelinearitu neuronov´e s´ıtˇe. M˚uˇze b´yt reprezentov´ana napˇr´ıklad jednotkov´ym skokem, sigmoidou nebo funkc´ı ReLU. V´ystup aktivaˇcn´ı funkce y je pˇred´an d´ale do s´ıtˇe. Funkci neuronu lze popsat n´asleduj´ıc´ı rovnic´ı:

y = S(

N

X

i=1

(wixi) + b) (4.1)

Neurony jsou v neuronov´e s´ıti typicky uspoˇr´ad´any do vrstev. Mezi vstupn´ı a v´ystupn´ı vrstvou se nach´az´ı skryt´e vrstvy. S´ıt’ s alespoˇn jednou skrytou vrstvou se naz´yv´a v´ıcevrstv´y perceptron (MLP). Pokud obsahuje model s´ıtˇe dvˇe a v´ıce skryt´ych vrstev, jedn´a se o hlubokou neuronovou s´ıt’.

Procesem uˇcen´ı neuronov´e s´ıtˇe se rozum´ı hled´an´ı optim´aln´ı sady parametr˚u mo- delu, kter´ymi jsou v´ahov´e vektory a biasy jednotliv´ych neuron˚u. Optim´aln´ı para- metry jsou takov´e, kter´e pro vstup x (nez´avisl´a promˇenn´a) vrac´ı spr´avn´y v´ystup y (z´avisl´a promˇenn´a, predikce). Uˇcen´ı prob´ıh´a za pomoci tr´enovac´ıch dat, coˇz je soubor vstupn´ıch dat a oˇcek´avan´ych v´ystupn´ıch dat. ´Uspˇeˇsnost neuronov´e s´ıtˇe je vyj´adˇrena pomoc´ı cost funkce. C´ılem uˇcen´ı je minimalizovat jej´ı hodnotu.

Jelikoˇz nelze analyticky urˇcit parametry, pro kter´e dosahuje cost funkce minima, prob´ıh´a hled´an´ı minima iterativnˇe pomoc´ı metody gradient descent.

(20)

Obr´azek 4.1: Sch´ema umˇel´eho neuronu

4.2 Konvoluˇ cn´ı neuronov´ e s´ıtˇ e

Konvoluˇcn´ı neuronov´a s´ıt’ pˇredstavuje zvl´aˇstn´ı typ neuronov´e s´ıtˇe. Podobnˇe jako s´ıt’

typu MLP m´a vstupn´ı vrstvu, skryt´e vrstvy a v´ystupn´ı vrstvu s vahami a biasy. Na rozd´ıl od MLP, kde doch´az´ı na vstupn´ı vrstvˇe k pˇreveden´ı obrazu na 1D vektor, je konvoluˇcn´ı s´ıt’ schopna zachycovat prostorov´e vlastnosti obrazu (hrany, linie, rohy atp.). Z´akladem tohoto principu je vyuˇzit´ı konvoluˇcn´ıch filtr˚u, kter´e pˇredstavuj´ı parametry konvoluˇcn´ı vrstvy. Jde o analogick´y pˇr´ıstup jako u Haarov´ych pˇr´ıznak˚u.

Oproti tradiˇcn´ımu pˇr´ıstupu k detekci vˇsak nejsou jednotliv´e filtry vytvoˇreny ruˇcnˇe na z´akladˇe pˇredchoz´ı znalosti vlastnost´ı hledan´eho objektu. Jejich podoba vznik´a v pr˚ubˇehu uˇcen´ı s´ıtˇe. D´ıky tˇemto vlastnostem jsou konvoluˇcn´ı neuronov´e s´ıtˇe vhodn´ym druhem umˇel´ych neuronov´ych s´ıt´ı pro klasifikaci obrazu.

Konvoluˇcn´ı neuronov´e s´ıtˇe bˇeˇznˇe sest´avaj´ı z nˇekolika druh˚u vrstev. Konvoluˇcn´ı vrstva pˇrev´ad´ı vstup, coˇz m˚uˇze b´yt vstupn´ı obraz nebo v´ystup z vyˇsˇs´ı vrstvy, na pˇr´ıznakovou mapu za pomoc´ı filtr˚u popsan´ych v´yˇse. Zat´ımco prvn´ı konvoluˇcn´ı vrstva detekuje vysoce abstraktn´ı pˇr´ıznaky, jako jsou hrany, kaˇzd´a dalˇs´ı konvoluˇcn´ı vrstva na z´akladˇe informace z vyˇsˇs´ıch vrstev detekuje m´enˇe abstraktn´ı pˇr´ıznaky: kruˇznice, kola, automobil, bicykl. V´ystup z konvoluˇcn´ı vrstvy proch´az´ı aktivaˇcn´ı funkc´ı.

Za ´uˇcelem redukce velikosti vstupn´ıch pˇr´ıznak˚u obsahuje konvoluˇcn´ı neuronov´a s´ıt’ sdruˇzovac´ı vrstvy. Sdruˇzovac´ı vrstvy negeneruj´ı ˇz´adn´e vlastn´ı pˇr´ıznaky. M´ısto toho proch´az´ı vstupn´ı pole pomoc´ı kernelu 2×2 s krokem 2, a bud’ zachovaj´ı nejvˇetˇs´ı hodnotu (max pooling), nebo pr˚umˇernou hodnotu (average pooling) z hodnot. Touto operac´ı dojde k redukci vstupn´ıch dat o 75%. Vedle v´yrazn´eho zmenˇsen´ı velikosti parametr˚u se zmenˇsuje riziko pˇreuˇcen´ı s´ıtˇe.

Konvoluˇcn´ı neuronov´a s´ıt’ pln´ı ´ulohu extraktoru pˇr´ıznak˚u. Bˇeˇznˇe je za n´ı zaˇrazeno nˇekolik plnˇe propojen´ych vrstev neuron˚u, kter´e pˇr´ıznaky d´ale zredukuj´ı pro klasi- fikaci. Klasifikace je n´aslednˇe provedena pomoc´ı klasifik´atoru jako softmax, nebo SVM.

(21)

4.3 Neuronov´ e s´ıtˇ e pro objektovou detekci

V n´asleduj´ıc´ı ˇc´asti je pˇredstaveno nˇekolik objektov´ych detektor˚u. Jsou vybran´e de- tektory, kter´e jsou popul´arn´ı, hojnˇe popsan´e a snadno dostupn´e jako open-source.

Popsan´e detektory lze rozdˇelit na dvˇe skupiny. Jednoduˇsˇs´ı, tzv. one-stage metody (SSD, YOLOv3 ), kter´e celou detekci prov´ad´ı bˇehem jednoho pˇr´ım´eho pr˚uchodu s´ıt´ı.

Tyto metody jsou zpravidla rychlejˇs´ı a v´ypoˇcetnˇe m´enˇe n´aroˇcn´e. Druhou skupinou jsou tzv. two-stage metody (Faster R-CNN, Mask R-CNN, R-FCN ).

Obr´azek 4.2: Porovn´an´ı metod objektov´e detekce [11]

4.3.1 Faster R-CNN

Faster R-CNN (Region-based convolutional neural network) je zdokonalen´ım starˇs´ıch metod R-CNN a Fast R-CNN. Oproti sv´ym pˇredch˚udc˚um nevyuˇz´ıv´a v´ypoˇcetnˇe n´aroˇcnou metodu hled´an´ı kandid´atn´ıch oblast´ı Selective Search (3.1.3), kter´a pˇredstavovala v´ypoˇcetn´ı ´uzk´e hrdlo. M´ısto toho zapojuje konvoluˇcn´ı s´ıt’ s nˇekolika m´alo vstvami (RPN) pro bin´arn´ı klasifikaci (objekt × neobjekt). Vstupn´ı obraz proch´az´ı nˇekolika konvoluˇcn´ımi vrstvami (extraktor pˇr´ıznak˚u). V´ystupem tˇechto vrstev je pˇr´ıznakov´a mapa s optim´aln´ı m´ırou abstrakce pro RPN. Ve vstupn´ım obraze RPN je pomoc´ı po- suvn´eho okna vybr´ano pro kaˇzd´y obrazov´y bod k oblast´ı o r˚uzn´ych pomˇerech stran a velikostech. Pro kaˇzdou oblast je predikov´ano s jakou pravdˇepodobnost´ı a jak pˇresnˇe reprezentuje oblast s objektem. Oblasti s dostateˇcnou jistotou predikce jsou pˇred´any metodˇe Non–max Suppression (NMS) za ´uˇcelem vyfiltrov´an´ı pˇrekr´yvaj´ıc´ıch se predikc´ı. V´ystupn´ı predikce jsou pˇred´any ke klasifikaci.

(22)

4.3.2 Mask R-CNN

Mask R-CNN je rozˇs´ıˇren´ım detektoru Faster R-CNN. Zat´ımco v prvn´ı f´azi doch´az´ı shodnˇe k hled´an´ı kandid´atn´ıch oblast´ı pomoc´ı RPN, v druh´e f´azi jsou kandid´atn´ı oblasti kromˇe klasifikace podrobeny segmentaci. V´ystupem segmentace je bin´arn´ı maska objektu.

4.3.3 R-FCN

R-FCN (Region-based fully convolutional network) adresuje probl´em v´ypoˇcetn´ı n´aroˇcnosti klasifikace u detektor˚u typu R-CNN. Ty pro klasifikaci kaˇzd´e kandid´atn´ı oblasti vyˇzaduj´ı samostatn´y pr˚uchod klasifikaˇcn´ı s´ıt´ı. Tato v´ypoˇcetnˇe n´aroˇcn´a vlast- nost je v R-FCN odstranˇena sd´ılen´ım konvoluˇcn´ıch vrstev i pro klasifikaci. V´ysledkem tohoto pˇr´ıstupu je v´yrazn´e zrychlen´ı oproti Faster R-CNN [12]. Podobnˇe jako u Fas- ter R-CNN je na pˇr´ıznakov´e mapˇe na v´ystupu extraktoru pˇr´ıznak˚u pomoc´ı RPN vybr´an soubor kandid´atn´ıch region˚u. Na n´asleduj´ıc´ı vrstvˇe je vytvoˇrena sada map o poˇctu k2× (C + 1). Pro kaˇzdou z C tˇr´ıd a pozad´ı (+1) je vytvoˇreno k2 map sk´ore.

Kaˇzd´a mapa reprezentuje sk´ore jedn´e z podoblast´ı objektu v mˇr´ıˇzce k ×k. Pr˚umˇern´a hodnota vˇsech podoblast´ı v mˇr´ıˇzce pˇredstavuje sk´ore pro jednotliv´e tˇr´ıdy. Tato sk´ore jsou vstupem klasifikace pomoc´ı funkce softmax.

Obr´azek 4.3: Architektura R-FCN [12]

4.3.4 YOLOv3

YOLOv3 (You Only Look Once) vyuˇz´ıv´a podobn´eho pˇr´ıstupu jako RPN s´ıt’ u pˇredchoz´ıch detektor˚u. Na kandid´atn´ıch oblastech vˇsak nam´ısto bin´arn´ı klasifikace objekt × neobjekt prov´ad´ı nav´ıc i klasifikaci do tˇr´ıd. Detekce je prov´adˇena na tˇrech r˚uzn´ych mˇeˇr´ıtk´ach, aby bylo dosaˇzeno dobr´e ´uspˇeˇsnosti na r˚uznˇe velk´ych instanc´ıch objekt˚u. Na kaˇzd´em z mˇeˇr´ıtek je obraz rozdˇelen na mˇr´ıˇzku. Kaˇzd´y prvek mˇr´ıˇzky generuje 3 r˚uzn´e kandid´atn´ı oblasti popsan´e pomoc´ı souˇradnic prav´eho horn´ıho

(23)

rohu, ˇs´ıˇrky a v´yˇsky. Pro kaˇzdou kandid´atn´ı oblast je urˇceno s jakou jistotou se jedn´a o objekt a sk´ore vˇsech klasifikovan´ych tˇr´ıd. N´aslednˇe je provedeno prahov´an´ı kandid´atn´ıch oblast´ı. V´ystupem jsou ohraniˇcuj´ıc´ı obd´eln´ıky nalezen´ych objekt˚u a nejpravdˇepodobnˇejˇs´ı tˇr´ıda.

4.3.5 SSD

SSD (Single Shot MultiBox Detector) podobnˇe jako YOLOv3 generuje kandid´atn´ı oblasti s r˚uzn´ymi pomˇery stran na mˇr´ıˇzce a pro kaˇzdou oblast urˇcuje sk´ore jednot- liv´ych tˇr´ıd. Aby bylo dosaˇzeno lepˇs´ı ´uplnosti napˇr´ıˇc mˇeˇr´ıtky objekt˚u, jsou kandid´atn´ı oblasti vyb´ır´any z r˚uzn´ych vrstev konvoluˇcn´ı s´ıtˇe. Klasifikace prob´ıh´a funkc´ı softmax.

4.4 Hodnocen´ı ´ uspˇ eˇ snosti detekˇ cn´ıch algoritm˚ u

Uloha detekce se sest´´ av´a ze dvou d´ılˇc´ıch ´uloh. ´Ulohy lokalizace objektu v obraze a ´ulohy stanoven´ı pˇr´ısluˇsn´e tˇr´ıdy objektu. Aby bylo moˇzn´e urˇcit m´ıru ´uspˇeˇsnosti detekˇcn´ıch algoritm˚u, je tˇreba urˇcit hodnot´ıc´ı krit´erium tˇechto ´uloh.

Nejˇcastˇeji vyuˇz´ıvan´ym [13][14] hodnocen´ım ´uspˇeˇsnosti lokalizace je Jaccard˚uv koeficient podobnosti, bˇeˇznˇe oznaˇcovan´y jako IoU (Intersection over Union). Koefi- cient je definovan´y jako

IoU = (Bp∩ Bgt)

(Bp∪ Bgt), (4.2)

kde Bp je predikovan´y ohraniˇcuj´ıc´ı obd´eln´ık objektu a Bgt oˇcek´avan´y (spr´avn´y) ohraniˇcuj´ıc´ı obd´eln´ık. Pokud je hodnota IoU vˇetˇs´ı, neˇz stanoven´y pr´ah (typicky jsou pouˇz´ıv´any meze 0,5; 0,75; 0,95 ), je lokalizace povaˇzov´ana za ´uspˇeˇsnou.

Jistota pˇr´ısluˇsnosti objektu ke tˇr´ıdˇe je vyj´adˇrena pravdˇepodobnost´ı. ´Uspˇeˇsnost detekce na testovac´ıch datech je urˇcov´ana vzhledem k m´ıˇre jistoty, pˇri kter´e je pˇrijata klasifikace objektu jako spr´avn´a.

Aby bylo moˇzn´e urˇcit ´uspˇeˇsnost detekce napˇr´ıˇc testovac´ımi daty, je tˇreba hod- notit dvˇe krit´eria. Pˇresnost a ´uplnost. Pˇresnost je definov´ana jako:

P = T P

T P + F P (4.3)

Uplnost jako:´

R = T P

T P + F N (4.4)

Kde T P pˇredstavuje poˇcet objekt˚u, kter´e byly ´uspˇeˇsnˇe detekov´any (True Posi- tive). F P Je poˇcet objekt˚u, kter´e byly detekov´any chybnˇe. Tedy se v obraze ne- nach´az´ı (False Positive). F N Je poˇcet objekt˚u, kter´e se v obraze nach´az´ı, ale nebyly detekov´any.

(24)

Uplnost a pˇresnost jsou na sobˇ´ e nepˇr´ımo z´avisl´e. Pro klesaj´ıc´ı pˇresnost doch´az´ı k n´ar˚ustu ´uplnosti a opaˇcnˇe. Tento fenom´en postihuje m´ıra AP (Average Precision), kterou lze obecnˇe vypoˇc´ıtat jako:

AP =

Z 1 0

p(r)dr (4.5)

Kde p(r) je funkce vyjadˇruj´ıc´ı z´avislost pˇresnosti na ´uplnosti. Tento vztah je v praxi nahrazen interpolac´ı a funkce z´avislosti je pˇred v´ypoˇctem vyhlazena.

K v´ypoˇctu AP doch´az´ı v r´amci jedn´e tˇr´ıdy. V pˇr´ıpadˇe detekce v´ıce tˇr´ıd doch´az´ı k dalˇs´ı ´upravˇe. M´ıra ´uspˇeˇsnosti je pak pops´ana pomoc´ı mAP (mean Average Preci- sion), kter´a je vypoˇctena jako pr˚umˇer pˇres AP vˇsech tˇr´ıd. Term´ıny AP a mAP jsou ˇcasto zamˇeˇnov´any.

AR je pr˚umˇern´a ´uplnost na tr´enovac´ıch datech pˇres vˇsechny sn´ımky tr´enovac´ıch dat a mAR pr˚umˇern´a AR pˇres vˇsechny klasifikovan´e tˇr´ıdy [15].

(25)

5 Datasety pro objektovou detekci

Uspˇ´ eˇsnost detekˇcn´ıho syst´emu z´avis´ı na vhodnˇe navrˇzen´em modelu a nalezen´ı vhodn´ych parametr˚u modelu ve f´azi jeho tr´enov´an´ı. ´Uloha detekce je n´aroˇcn´a na tr´enovac´ı data z d˚uvodu rozmanitosti re´aln´ych sc´en [3]. Zn´am´e datasety jako MNIST nebo CIFAR- 10 jsou urˇceny pouze pro klasifikaci a obsahuj´ı mal´e mnoˇzstv´ı tˇr´ıd. Shrom´aˇzdˇen´ı da- tasetu pro klasifikaci a lokalizaci, kter´y by byl robustn´ı co se t´yˇce rozmanitosti sc´en z pohledu orientace objekt˚u a osvˇetlen´ı, pˇredstavuje velkou ˇcasovou z´atˇeˇz. Stejnˇe tak n´asledn´a anotace instanc´ı objekt˚u. Je tedy nevhodn´e, aby kaˇzd´a pr´ace v oblasti stro- jov´eho vidˇen´ı zaˇc´ınala touto ˇcinnost´ı. Tyto d˚uvody podn´ıtily vznik dataset˚u, kter´e jsou nez´avisl´e a z´aroveˇn umoˇzˇnuje standardizovan´e testov´an´ı detekˇcn´ıch syst´em˚u a stanoven´ı nejlepˇs´ıho z nich. Vybran´e z nich popisuje n´asleduj´ıc´ı sekce.

5.1 Pascal VOC

Jedn´ım z prvn´ıch a dodnes hojnˇe vyuˇz´ıvan´ych dataset˚u je Pascal VOC (M. Eve- ringham et al.) [13], kter´y vznikl v roce 2005. V´ysledky detekce na Pascal VOC byly porovn´av´any kaˇzdoroˇcnˇe vr´amci soutˇeˇze VOC Challenge mezi lety 2005 a 2012. Ve- dle detekce byly soutˇeˇzeny ´ulohy segmentace a klasifikace akc´ı. Detekˇcn´ı dataset obsahuje v posledn´ı verzi 20 tˇr´ıd, kter´e jsou zastoupeny 27450 instancemi na 11540 sn´ımc´ıch. Sn´ımky v datasetu jsou n´ahledy shrom´aˇzdˇen´ych fotografi´ı z webu Flickr, kter´y poskytuje komunitn´ı sd´ılen´ı fotografi´ı sv´ym uˇzivatel˚um.

5.2 ImageNet

V souˇcasn´e dobˇe nejrozs´ahlejˇs´ı datab´az´ı fotografi´ı pro v´yzkum v oblasti strojov´eho vidˇen´ı je ImageNet. Tato datab´aze byla poprv´e pˇredstavena v roce 2009. Na jej´ım v´yvoji se pod´ıl´ı pˇredevˇs´ım Stanfordova univerzita a Princetonsk´a univerzita. Da- tab´aze obsahuje pˇres 14 milion˚u n´ahled˚u fotografi´ı, kter´e poch´az´ı z webu Flickr.

Fotografie jsou uspoˇr´ad´any podle s´ıtˇe WordNet, kter´a seskupuje slova do tzv. syn- set˚u. Pro detekˇcn´ı ´ulohu jsou z WordNet vybr´ana podstatn´a jm´ena. Tˇech je v´ıce neˇz 80000. ImageNet obsahuje anotovan´e fotografie pro 21841 z nich (mj. 120 ras ps˚u).

Pro ´ulohu detekce objekt˚u je anotov´ano 1034908 fotografi´ı. Podobnˇe jako Pascal VOC je i ImageNet pˇredmˇetem soutˇeˇze - ILSVRC. Pro soutˇeˇzn´ı ´ulohu lokalizace je omezen poˇcet tˇr´ıd na 1000. ´Uloha detekce je omezena na 200 tˇr´ıd.

(26)

5.3 COCO

Nejmladˇs´ım datasetem ze zm´ınˇen´ych je COCO. Dataset COCO byl publikov´an v roce 2014 v ˇcl´anku

”Microsoft COCO: Common Objects in Context“. Od pˇredchoz´ıch se odliˇsuje t´ım, ˇze anotace jsou doplnˇeny o segmentace objekt˚u na ´urovni pixel˚u - kaˇzd´a instance objektu m´a svou masku. D´ale obsahuje sn´ımky, kter´e byly vybr´any podle specifick´eho kl´ıˇce. Na rozd´ıl od ImageNet a Pascal VOC, kter´e obsahuj´ı ka- nonick´e zobrazen´ı objekt˚u (lid´e en face atp.), COCO obsahuje sc´eny z re´aln´eho prostˇred´ı, kde jsou objekty zachyceny z r˚uzn´ych ´uhl˚u, jsou vz´ajemnˇe okludov´any a vytv´aˇr´ı chaotick´e sc´eny. T´eto vlastnosti tv˚urci dos´ahli tak, ˇze nam´ısto jednoho kl´ıˇcov´eho slova pro vyhled´av´an´ı na Flickr vyuˇz´ıvaj´ı kombinace slov r˚uzn´ych tˇr´ıd.

Dataset se zamˇeˇruje na detekci 80 tˇr´ıd. V tˇechto tˇr´ıd´ach je obsaˇzeno vˇsech 20 tˇr´ıd z datasetu Pascal VOC, ˇc´ımˇz je dosaˇzeno zpˇetn´e kompatibility. Obsahuje 330 tis´ıc obr´azk˚u, z nichˇz je v´ıce neˇz 200 tis´ıc anotov´ano pro objektovou detekci. Oproti v´yˇse zm´ınˇen´ym obsahuje COCO v´ıce instanc´ı objekt˚u na jeden obr´azek. Z´aroveˇn pouze 10 procent sc´en obsahuje pouze jednu kategorii, oproti Pascal VOC a ImageNet, u kter´ych je to v´ıce neˇz 60 procent. Vedle detekce objekt˚u se COCO zamˇeˇruje i na detekci pozice osob, generov´an´ı popisk˚u sc´en a dalˇs´ı. Tyto ´ulohy jsou soutˇeˇzeny v r´amci konference ECCV.

(27)

6 Knihovny pro strojov´ e uˇ cen´ı

Obr´azek 6.1: Poˇcet zm´ınˇen´ı knihoven na arXiv k 21. 8. 2018 podle [16]

6.1 TensorFlow

TensorFlow je open–source knihovna, kter´a je vyv´ıjena spoleˇcnost´ı Google. Je naps´ana v jazyc´ıch C++ a Python. Jej´ı v´yhodou je, ˇze poskytuje API pro jazyky Python, Ja- vaScript, Java, Go a Swift. TensorFlow zakl´ad´a na statick´ych v´ypoˇcetn´ıch grafech.

To znamen´a, ˇze pˇred spuˇstˇen´ım v´ypoˇctu je nutn´e zadefinovat veˇsker´e v´ypoˇcetn´ı operace a sestavit v´ypoˇcetn´ı graf. D´ıky tomu doch´az´ı pˇri opakovan´em spouˇstˇen´ı v´ypoˇctu k ´uspoˇre v´ypoˇcetn´ıho ˇcasu. V d˚usledku toho vˇsak nejde v k´odu pouˇz´ıvat print funkce, podm´ınky a cykly klasick´ym pythonovsk´ym zp˚usobem a je potˇreba pouˇz´ıvat speci´aln´ı funkce z TensorFlow API. Tyto limitace souvis´ı s dalˇs´ı slabou str´ankou, kterou je tˇeˇzˇs´ı debugov´an´ı navrˇzen´eho modelu.

6.2 PyTorch

PyTorch je podobnˇe jako TensorFlow open–source knihovna, kter´a je zamˇeˇren´a na strojov´e uˇcen´ı. V´yvoj PyTorch zaˇstit’uje v´yzkumn´y t´ym spoleˇcnosti Facebook. Na- rozd´ıl od TensorFlow vyuˇz´ıv´a dynamick´e v´ypoˇcetn´ı grafy, kter´e se sestavuj´ı za bˇehu

(28)

programu. To znamen´a, ˇze lze pouˇz´ıvat podm´ınky, cykly a debugov´an´ı klasick´ym zp˚usobem. PyTorch verze 1.0.0 byl vyd´an 7. 12. 2018. Je tedy nejmladˇs´ım ze jme- novan´ych knihoven. D´ıky z´aˇstitˇe Facebooku doch´az´ı ale k rychl´emu rozˇsiˇrov´an´ı do- kumentace, coˇz byla nev´yhoda oproti dobˇre dokumentovan´emu TensorFlow. Podle dat z [16] je popularita PyTorch stabilnˇe rostouc´ı.

6.3 Keras

Keras je vysoko´urovˇnov´e API v Pythonu, kter´e slouˇz´ı jako front-end jin´ych kniho- ven pro strojov´e uˇcen´ı (TensorFlow, Theano, CNTK, MXNet, PlaidML). Keras c´ıl´ı na uˇzivatelskou pˇr´ıvˇetivost. Nedosahuje takov´eho v´ykonu jako ostatn´ı zm´ınˇen´e knihovny a jeho z´amˇer je rychl´e prototypov´an´ı a prvn´ı sezn´amen´ı s principy stro- jov´eho a hlubok´eho uˇcen´ı.

6.4 Caffe

Caffe je knihovna vyv´ıjen´a v´yzkumn´ıky z univerzity v Berkeley. Je naps´ana pro Py- thon v jazyce C++. Modely druh´e verze Caffe2 se daj´ı vyuˇz´ıt v PyTorch. Vzhledem k tomu, ˇze spoleˇcnost Facebook pouˇz´ıv´a jak Caffe2, tak PyTorch doˇslo v dubnu 2018 ke slouˇcen´ı tˇechto dvou knihoven. Popularita Caffe kles´a ve prospˇech TensorFlow a PyTorch.

(29)

7 Reˇ serˇ se existuj´ıc´ıch ˇ reˇ sen´ı

Nalezen´ı optim´aln´ıho zp˚usobu obsluhy z´akazn´ık˚u s sebou nese mnoho v´yhod. Podnik m˚uˇze na z´akladˇe t´eto znalosti l´epe pl´anovat smˇeny zamˇestnanc˚u, to znamen´a, ˇze zamˇestnanci tr´av´ı ˇcas v zamˇestn´an´ı efektivnˇe a nemaj´ı prostoje. D´ale pak doch´az´ı k rychlejˇs´ımu obslouˇzen´ı z´akazn´ık˚u, coˇz v d˚usledku znamen´a m´enˇe z´akazn´ık˚u, kteˇr´ı opust´ı frontu pˇred obslouˇzen´ım a v´ıce z´akazn´ık˚u, kteˇr´ı se po pˇr´ıjemn´e zkuˇsenosti vr´at´ı a vyuˇzij´ı sluˇzby znovu. D´ale je v procesu optimalizace ˇsance nal´ezt ´uzk´a hrdla cel´eho syst´emu. Pomal´e zamˇestnance nebo ˇspatnˇe navrˇzen´e uspoˇr´ad´an´ı podniku.

Vˇsechny tyto nabyt´e znalosti vedou ke zv´yˇsen´ı prodejnosti a sn´ıˇzen´ı n´aklad˚u na provoz.

Probl´em hled´an´ı optima lze ˇreˇsit nˇekolika zp˚usoby. Analyticky pomoc´ı metod z teorie hromadn´e obsluhy, pomoc´ı simulace na z´akladˇe nasb´ıran´ych dat, nebo v re´aln´em ˇcase.

Analytick´e ˇreˇsen´ı nar´aˇz´ı na promˇenlivost syst´emu. Navrˇzen´e analytick´e metody vyˇzaduj´ı pro sv´e metody velmi specifick´e pˇredpoklady, a proto je lze pouˇz´ıt jen ve specifick´ych pˇr´ıpadech. Nev´yhodou simulaˇcn´ıch metod je nutnost velk´eho mnoˇzstv´ı vstupn´ıch dat [17]. D´ale tak´e cena simulaˇcn´ıch n´astroj˚u. Napˇr´ıklad licence softwaru SIMUL8 Professional stoj´ı t´emˇeˇr 5000 dolar˚u.

Reˇsen´ı, kter´ˇ a vyuˇz´ıvaj´ı rozpozn´av´an´ı obrazu maj´ı v´yhodu v n´ızk´ych n´akladech na mont´aˇz a hardware. Vyuˇz´ıvaj´ı st´avaj´ıc´ı syst´em bezpeˇcnostn´ıch kamer. Umoˇzˇnuj´ı automatick´y sbˇer aktu´aln´ıch dat pro reporting a vyuˇzit´ı ve v´yˇse zm´ınˇen´ych simu- lac´ıch pˇri urˇcov´an´ı parametr˚u vstupn´ıch n´ahodn´ych veliˇcin. Dok´aˇz´ı management a person´al podniku v re´aln´em ˇcase informovat o nahromadˇen´ı z´akazn´ık˚u a nutnosti otevˇr´ıt dalˇs´ı body obsluhy.

Komerˇcnˇe dostupn´ych ˇreˇsen´ı je na trhu velmi mnoho. Jsou limituj´ıc´ı z r˚uzn´ych d˚uvod˚u. Napˇr´ıklad software TrueView Queue od spoleˇcnosti Cognimatics, kter´y je na ˇcesk´em trhu k dost´an´ı je moˇzn´e pouˇz´ıvat pouze na IP kamer´ach Axis, coˇz znamen´a zv´yˇsen´ı poˇc´ateˇcn´ıch n´aklad˚u. Spoleˇcnost Axis sama nab´ız´ı software Axis Queue Mo- nitor, opˇet pouze pro sv´e vlastn´ı IP kamery. Software tak´e pˇredpokl´ad´a spolupr´aci s dalˇs´ımi syst´emy z ekosyst´emu t´eto firmy. Na trhu jsou dostupn´a i ˇreˇsen´ı vyuˇz´ıvaj´ıc´ı st´avaj´ıc´ı syst´em CCTV, jako napˇr´ıklad syst´em firmy Retail Sensing.

Bylo prozkoum´ano velk´e mnoˇzstv´ı existuj´ıc´ıch ˇreˇsen´ı s n´asleduj´ıc´ımi z´avˇery. Velk´e mnoˇzstv´ı nab´ızen´ych syst´em˚u potenci´aln´ıho uˇzivatele limituje t´ım, ˇze ho nut´ı vyuˇz´ıvat i dalˇs´ı software nebo dokonce hardware stejn´eho v´yrobce, ˇc´ımˇz st´ır´a v´yhody nast´ınˇen´e v´yˇse. ˇZ´adn´e z prozkouman´ych ˇreˇsen´ı neposkytuje na webov´ych str´ank´ach veˇrejnˇe in- formaci o cenˇe. K ˇz´adn´emu z ˇreˇsen´ı vyuˇz´ıvaj´ıc´ıch bezpeˇcnostn´ı kamery nen´ı dostupn´a informace o principu jeho fungov´an´ı, o pouˇzit´ych algoritmech nebo technologi´ıch. Ve-

(30)

dle deklarativn´ıch prohl´aˇsen´ı o ´uspˇeˇsnosti nab´ızen´e technologie chyb´ı data, kter´a by funkˇcnost prokazovala. Nˇekter´e ze syst´em˚u nab´ızej´ı API pro komunikaci se syst´emy tˇret´ıch stran, ale opˇet nen´ı veˇrejnˇe k dispozici uspokojiv´a dokumentace.

Open-source ˇreˇsen´ı t´eto problematiky se nepodaˇrilo nal´ezt. Probl´em obsahuj´ıc´ı stejn´e d´ılˇc´ı kroky ˇreˇs´ı IBM v repozit´aˇri na GitHubu [1], ovˇsem detekˇcn´ı ´ulohu ˇreˇs´ı pomoc´ı sv´e platformy IBM PowerAI Vision, kter´a pracuje s velkou m´ırou abstrakce v cloudu a nastaven´ı detektoru i pouˇzit´y detekˇcn´ı algoritmus nen´ı z uˇzivatelsk´eho GUI, kter´ym se platforma ovl´ad´a, moˇzn´e ovlivnit.

Probl´em propojen´ı kvalitn´ı detekce a trackov´an´ı, coˇz je podstatn´a ˇc´ast probl´emu, kter´ym se zab´yv´a tato pr´ace, ˇreˇs´ı v repozit´aˇri pod licenc´ı MIT spoleˇcnost Neuro- mation [18].

Projekt, kter´y se nezab´yv´a stejn´ym t´ematem, ale obsahuje jeho d´ılˇc´ı ˇc´ısti je tak´e KERBEROS.IO [19], tento projekt je oproti pˇredchoz´ım zm´ınˇen´ym ucelenˇejˇs´ı.

Pracuje jako webov´a aplikace s n´astˇenkou, na kter´e je moˇzn´e sledovat reporting.

Prim´arn´ı ´uˇcel projektu je vˇsak vytvoˇren´ı dostupn´eho zabezpeˇcovac´ıho zaˇr´ızen´ı po- moc´ı Raspberry Pi s kamerou.

(31)

8 Tvorba prototypu syst´ emu pro odhad ˇ cekac´ı doby ve frontˇ e

Navrhovan´y prototyp syst´emu sest´av´a z nˇekolika ˇc´ast´ı, kter´e jsou na sobˇe jen ome- zenˇe z´avisl´e. Syst´em, kter´y odhaduje ˇcekac´ı dobu ve frontˇe mus´ı ˇreˇsit n´asleduj´ıc´ı d´ılˇc´ı probl´emy:

1. separace oblasti fronty v obraze

2. stanoven´ı poˇctu ˇcekaj´ıc´ıch osob ve frontˇe

3. stanoven´ı rychlosti, jakou prob´ıh´a obsluha osob ve frontˇe

Sekce 8.2 se zab´yv´a hled´an´ım optim´aln´ıch prostˇredk˚u ˇreˇsen´ı tˇechto probl´em˚u. V n´asleduj´ıc´ı sekci 8.3 je pops´ana navrˇzen´a implementace syst´emu pro odhad ˇcekac´ı doby.

8.1 Hardwarov´ e a softwarov´ e prostˇ redky

Vˇsechny ´udaje namˇeˇren´e v t´eto pr´aci poch´az´ı z n´asleduj´ıc´ı hardwarov´e a softwarov´e sestavy. Pro chod a spr´avu virtu´aln´ıch prostˇred´ı Python byla pouˇzita distribuce Anaconda Python a jej´ı bal´ıˇckovac´ı syst´em Conda.

Hardware:

• RAM: 2 × 8GB SO-DIMM DDR4 2400MHz

• CPU: Intel Core i5-8300H

• GPU: Nvidia GP107M (GeForce GTX 1050 Mobile)

• SSD: Samsung MZVLW256HEHP Software:

• Ubuntu 18.04.2 LTS

• CUDA 10.0.130

• cuDNN 7.4.2

(32)

• Python 3.6.8

• OpenCV 3.4.4

• PyTorch 0.4.1

Knihovna pro manipulaci s obrazem OpenCV dostupn´a v bal´ıˇckovac´ım syst´emu Conda nepodporuje vykon´av´an´ı funkc´ı na GPU, coˇz je nutn´a vlastnost pro chod zvolen´ych detekˇcn´ıch syst´em˚u. Z´aroveˇn neobsahuje ofici´aln´ı distribuce moduly pro pr´aci na GPU. Tyto moduly se nach´az´ı v repozit´aˇri OpenCV Contrib, a tak bylo nutn´e ji zvl´aˇst’ zkompilovat spolu se zm´ınˇen´ym repozit´aˇrem.

8.2 V´ ybˇ er prostˇ redk˚ u pro pouˇ zit´ı v syst´ emu

8.2.1 Testovac´ı data

Hled´an´ı vhodn´ych prostˇredk˚u pro pouˇzit´ı ve v´ysledn´em syst´emu vyˇzaduje testovac´ı data. Jedn´ım z pˇr´ıstup˚u k jejich shrom´aˇzdˇen´ı bylo vyuˇzit´ı veˇrejnˇe dostupn´ych sn´ımk˚u front z internetu. Byly prozkoum´any moˇznosti web scrapingu. Jako nejsch˚udnˇejˇs´ı se uk´azala moˇznost pouˇzit´ı sluˇzby Google Images, kter´a indexuje sn´ımky na internetu a poskytuje API pro jejich vyhled´av´an´ı a filtrov´an´ı. Podstatn´ym parametrem filtru jsou pr´ava pro dalˇs´ı pouˇzit´ı a rozliˇsen´ı.

Pro d´avkov´e stahov´an´ı sn´ımk˚u byl pouˇzit volnˇe dostupn´y program google-images- download [20], kter´y vyuˇz´ıv´a API Google Images a pˇrid´av´a vrstvu abstrakce pro pohodln´e pouˇz´ıv´an´ı z pˇr´ıkazov´e ˇr´adky.

Bohuˇzel bylo zjiˇstˇeno, ˇze obr´azk˚u front kter´e splˇnuj´ı v´yˇse zm´ınˇen´e parametry je relativnˇe m´alo (des´ıtky). Z´aroveˇn by bylo nutn´e dohled´avat zdroj obr´azk˚u pro upˇresnˇen´ı licence pro opˇetovn´e pouˇzit´ı, coˇz je v mnoha pˇr´ıpadech obt´ıˇzn´e. Velk´a ˇc´ast obr´azk˚u obsahovala ikonick´y z´abˇer fronty, kter´y neodpov´ıdal realitˇe. D´ale bylo pro testov´an´ı tracker˚u nezbytn´e disponovat nejen sn´ımky, ale i videoz´aznamy front.

Tento postup byl tedy zam´ıtnut ve prospˇech vytvoˇren´ı vlastn´ıch videoz´aznam˚u front.

Pro ´uˇcely pr´ace byla tedy d´ale vytvoˇrena testovac´ı data v podobˇe nˇekolika vi- deoz´aznam˚u fronty (viz 8.2). Videoz´aznamy zachycovaly frontu z r˚uzn´ych ´uhl˚u ve dvou variant´ach. Prvn´ı variantou byla optim´aln´ı fronta s dobrou separac´ı jednot- liv´ych osob bez okluze. Fronta se pohybovala pˇr´ımo. Druh´a varianta zachycovala frontu bliˇzˇs´ı realitˇe: osoby v z´akrytu, pˇredb´ıhaj´ıc´ı osoby, osoby vyboˇcuj´ıc´ı pohybem ze smˇeru fronty.

Z druh´e varianty fronty byl navzorkov´an soubor sn´ımk˚u. Byl doplnˇen volnˇe do- stupn´ymi sn´ımky front z internetu a byla vybr´ana sada 20 sn´ımk˚u, kter´e obsahovaly pro detekci a klasifikaci neoptim´aln´ı sc´eny. Osoby stoj´ıc´ı ve frontˇe na tˇechto sn´ımc´ıch se znaˇcnou mˇerou zakr´yvaj´ı (napˇr. sn´ımky 2, 3, 5), nebo jsou viditeln´e z ´uhlu, kter´y nen´ı v bˇeˇznˇe pouˇz´ıvan´ych datasetech zamˇeˇren´ych na detekci osob (COCO, Caltech Pedestrian Dataset, INRIA) bˇeˇzn´y (sn´ımky 2 a 6). Na tˇechto sn´ımc´ıch bylo pomoc´ı softwaru Labelme [21] oznaˇceno 220 instanc´ı osob pomoc´ı polygon˚u (viz 8.1).

V dalˇs´ım kroku byl vytvoˇren testovac´ı dataset. Vzhledem k obl´ıbenosti mezi

(33)

Obr´azek 8.1: Segmentace v softwaru Labelme

´

uspˇeˇsnosti detekˇcn´ıch model˚u zvolen form´at COCO v´yzkumn´eho t´ymu firmy Micro- soft. Software Labelme nenab´ız´ı moˇznost exportu vˇsech anotovan´ych sn´ımk˚u a pˇr´ısluˇsn´ych anotac´ı do form´atu, kter´y by se dal vyuˇz´ıt na tr´enov´an´ı nebo testov´an´ı detekˇcn´ıho modelu. Tento krok bylo nutn´e zprogramovat. V r´amci pr´ace byl vytvoˇren skript, kter´y na vstupu pˇrij´ım´a v´ystupn´ı soubory s anotacemi ze softwaru Labelme ve form´atu *.json a na v´ystupu vrac´ı soubor anotac´ı (*.json), kter´y odpov´ıd´a speci- fikaci testovac´ıho datasetu COCO pro detekci, tak jak je pops´ana v [22]. Tento dataset byl pouˇzit v dalˇs´ı ˇc´asti pr´ace na testov´an´ı ´uspˇeˇsnosti detekce vybran´ych model˚u.

Obr´azek 8.2: Uk´azka sn´ımk˚u z testovac´ıch dat

8.2.2 Porovn´ an´ı model˚ u detekce

Pˇri reˇserˇsi bylo zjiˇstˇeno, ˇze tradiˇcn´ı klasifikaˇcn´ı metody zaloˇzen´e na ruˇcnˇe vytv´aˇren´ych pˇr´ıznac´ıch (HOG, SIFT) nedosahuj´ı ani zdaleka takov´ych v´ysledk˚u, jako metody zaloˇzen´e na konvoluˇcn´ıch neuronov´ych s´ıt´ıch [24][2][23], do v´ybˇeru tedy nebyly za- hrnuty.

(34)

Pˇri volbˇe detekˇcn´ıch algoritm˚u bylo pˇrihl´ednuto k tomu, ˇze ve frontˇe se z pod- staty lid´e pohybuj´ı pomalu (viz 8.3.5). Navrhovan´y syst´em by mˇel nal´ezt uplatnˇen´ı v instituc´ıch jako jsou letiˇstn´ı odbaven´ı, letiˇstn´ı bezpeˇcnostn´ı kontrola nebo hyper- market. D´a se tedy pˇredpokl´adat, ˇze v mezn´ım pˇr´ıpadˇe, kdy je fronta vypr´azdnˇen´a a pˇrijde do n´ı nov´a osoba, bude se ve sledovan´e oblasti nach´azet minim´alnˇe 10 sekund (ˇcas pr˚uchodu sc´enou + ˇcas obsluhy).

Vzhledem k tomu nen´ı potˇreba detekce v re´aln´em ˇcase. Tato podm´ınka umoˇzˇnuje volbu detektoru, kter´y dosahuje lepˇs´ı pˇresnost pˇri klasifikaci na ´ukor ˇcasu. Na z´akladˇe pr´ace

”Speed/accuracy trade-offs for modern convolutional object detectors“ [11], kter´a provn´avala metody Faster R-CNN R-FCN a SSD byla pro testov´an´ı vybr´ana metoda Faster R-CNN, kter´a vykazuje nejlepˇs´ı pˇresnost klasifikace za cenu pomalejˇs´ı detekce.

Dalˇs´ı zvolenou metodou byl detektor YOLOv3 [25], kter´y oproti Faster R-CNN vykazuje vˇetˇs´ı rychlost detekce, ale o nˇeco niˇzˇs´ı pˇresnost.

Krit´eria pro volbu detektoru byla zvolena n´asledovnˇe:

• Detektor dosahuje dobr´e ´uspˇeˇsnosti pˇri detekci mal´ych instanc´ı objekt˚u. Tento poˇzadavek pramen´ı z povahy videoz´aznam˚u z bezpeˇcnostn´ıch kamer, kter´e zab´ıraj´ı relativnˇe velkou sc´enu, v kter´e jedna osoba standardnˇe zab´ır´a oblast o velikosti des´ıtek pixel˚u.

• Detektor dosahuje co nejvyˇsˇs´ı hodnoty mAR. Pro spr´avn´e stanoven´ı ˇcekac´ı doby je podstatn´e urˇcit kolik osob se ve frontˇe nach´az´ı. S rostouc´ım poˇctem ne´uspˇeˇsnˇe detekovan´ych osob rychle roste chyba odhadu.

• ´Uspˇeˇsnost detekce pˇri IoU 0,75 je dobr´a. Pro zjiˇst’ov´an´ı oblasti obsahuj´ıc´ı osobu nen´ı tak z´asadn´ı, aby byla oblast urˇcena zcela pˇresnˇe. Pro n´asledn´e uˇzit´ı v trackeru je mAP pˇri IoU 0,75 dostateˇcn´a a vˇetˇs´ı prioritu hraje mAR.

• Pr˚umˇern´y ˇcas detekce na jednom sn´ımku z testovac´ıho datasetu by nemˇel zabrat d´ele neˇz 10 sekund. Tento poˇzadavek vych´az´ı z faktu, ˇze pokud po detekci selˇze tracker ve sledov´an´ı, m˚uˇze b´yt sledovan´a osoba bˇehem nastal´ych 10 sekund obslouˇzena a nezapoˇc´ıt´ana, coˇz znamen´a n´ar˚ust chyby pr˚umˇern´e ˇ

cekac´ı doby jednoho ˇclovˇeka, kter´a roste line´arnˇe s poˇctem lid´ı ve frontˇe.

Vzhledem k dostupnosti kvalitn´ıch open-source implementac´ı v´yˇse zm´ınˇen´ych de- tektor˚u a k nim odpov´ıdaj´ıc´ım pˇredtr´enovan´ym vah´am nebyl v r´amci t´eto pr´ace vytvoˇren detektor. Pro porovn´an´ı byly vyuˇzity existuj´ıc´ı implementace:

• Detectron.pytorch [26] – PyTorch implementace syst´emu Detectron vyv´ıjen´eho firmou Facebook. V t´eto implementaci byly otestov´any detektory zaloˇzen´e na Faster R-CNN a Mask RCNN. Pˇri testov´an´ı byly pouˇzity pˇredtr´enovan´e v´ahy na datasetu COCO. Extraktor pˇr´ıznak˚u byl pˇredtr´enov´an na ImageNet, viz [29]

• Yolov3 [27] – PyTorch implementace YOLOv3. Pˇri testov´an´ı byly vyuˇzity pˇredtr´enovan´e v´ahy na datab´azi COCO. Extraktor pˇr´ıznak˚u byl pˇredtr´enov´an

(35)

Z dostupn´ych model˚u byl vybr´an vzorek sedmi. Na tˇechto modelech byl spuˇstˇen test na testovac´ım datasetu popsan´em v 8.2.1. Velikost testovac´ıch obr´azk˚u na vstupu byla u vˇsech testovan´ych model˚u byly nastaveny tak, aby kratˇs´ı strana mˇela 800 pixel˚u. Vybran´e v´ysledky z COCO metriky jsou k vidˇen´ı v tabulce (viz 8.1)

Model mAP[0,75] mAP (mal´e instance) mAR ˇcas Faster RCNN X-101-32x8d-FPN 77,6 41,9 71,7 18,5 Faster RCNN X-101-64x4d-FPN 74,9 12,4 70,5 19,4

Mask RCNN R-50-C4 75,5 25,9 72,2 20,2

Mask RCNN X-101-32x8d-FPN 78,7 20,0 74,0 20,7

Mask RCNN X-101-64x4d-FPN 77,7 21,0 74,3 22,0

Mask RCNN X-152-32x8d-FPN-IN5k7 86,3 11,9 81,6 850,9

YOLOv3 Darknet-53 64,5 15,1 58,1 8,0

Tabulka 8.1: V´ysledky testov´an´ı detektor˚u

Z testov´an´ı vyplynulo, ˇze detektory maj´ı vˇseobecnˇe probl´em s detekov´an´ım mal´ych instanc´ı osob.

D´ale test uk´azal, ˇze YOLOv3 je nejrychlejˇs´ı, ale dosahuje ˇspatn´e ´uspˇeˇsnosti na mal´ych instanc´ıch. Tato vlastnost zˇrejmˇe souvis´ı se zp˚usobem, jak´ym YOLO navr- huje kandid´atn´ı oblasti pro klasifikaci. Jeho autoˇri tento probl´em pˇr´ımo adresuj´ı v [25] s pozn´amkou, ˇze se t´ykal prvn´ıch dvou verz´ı a ve tˇret´ı verzi se jej podaˇrilo odstra- nit. Tento test ukazuje opak. YOLO tak´e dos´ahlo nejniˇzˇs´ı ´uspˇeˇsnosti v mAP[0,75] a mAR.

Nejvˇetˇs´ı ´uspˇeˇsnosti dos´ahl model s hlubˇs´ı architekturou ResNeXt-152-32x8d- FPN. ˇCasov´a n´aroˇcnost detekce s t´ımto modelem vˇsak v´yraznˇe pˇresahovala mez stanovenou pro pouˇzit´ı.

Zb´yvaj´ıc´ıch 5 model˚u dos´ahlo na testovac´ım datasetu podobn´ych v´ysledk˚u mAP[0,75], mAR a ˇcasu. Jedin´ym v´yrazn´ym rozd´ılem ve v´ysledc´ıch byla ´uspˇeˇsnost klasifikace mal´ych instanc´ı objekt˚u. Tato vlastnost je vzhledem k povaze navrhovan´eho syst´emu podstatn´a (lze pˇredpokl´adat, ˇze kamera bude zab´ırat sc´enu z vˇetˇs´ı vzd´alenosti), a proto byl pro dalˇs´ı pouˇzit´ı v prototypu zvolen model Faster RCNN X-101-32x8d- FPN.

8.2.3 Porovn´ an´ı trackovac´ıch algoritm˚ u

Pro sledov´an´ı rychlosti fronty je nezbytn´a znalost ˇcasu, za jak´y dojde k obsluze jedn´e ˇcekaj´ıc´ı osoby. Objektov´y detektor ale nezachov´a identitu nalezen´ych osob, coˇz je nezbytn´a podm´ınka pro zjiˇstˇen´ı, zda osoba proˇsla oblast´ı obsluhy - byla obslouˇzena.

Pro tento ´uˇcel navrhovan´y syst´em vyuˇz´ıv´a trackovac´ı algoritmus. Knihovna OpenCV obsahuje implementace osmi r˚uzn´ych trackovac´ıch algoritm˚u: MOSSE, KCF, CSRT, TLD, MIL, GOTURN, MedianFlow a Boosting. Ty byly v r´amci t´eto pr´ace otes- tov´any. Pˇri pouˇzit´ı Boosting trackeru program selˇze. Tato chyba se podle f´or vy- skytuje, ovˇsem v dobˇe psan´ı t´eto pr´ace se nepodaˇrilo nal´ezt v ofici´aln´ı dokumentaci informace o jej´ı opravˇe (OpenCV verze 3.4). Metoda testov´an´ı ostatn´ıch algoritm˚u byla n´asleduj´ıc´ı:

(36)

1. Na vstup bylo pˇrivedeno video fronty z testovac´ıch dat (8.2.1).

2. Prvn´ı frame videa byl detekov´an pomoc´ı objektov´eho detektoru a oblasti ob- sahuj´ıc´ı osoby byly pˇred´any trackeru.

3. Tracker n´asleduj´ıc´ıch 100 fram˚u sledoval pˇredan´y objekt. Pokud objekt proˇsel oblast´ı obsluhy (8.3.4, inkrementovalo se poˇc´ıtadlo osob a tracker byl od- stranˇen.

4. Po 100 framech byla provedena dalˇs´ı detekce osob pomoc´ı detektoru a v´ysledn´e oblasti byly porovn´any s oblastmi, kter´e sledoval tracker. Pokud oblast dete- kovan´a a oblast trackovan´a dos´ahly sk´ore IoU >0,3, trackeru byla pˇred´ana de- tekovan´a oblast jako nov´a oblast sledov´an´ı a byla zachov´ana identita objektu.

Pokud trackovan´a oblast nemˇela odpov´ıdaj´ıc´ı dvojici (ˇz´adn´a z detekovan´ych oblast´ı neodpov´ıdala trackovan´e oblasti se sk´ore IoU >0,3) byl detektor oblasti odebr´an.

5. Kroky 3 a 4 se opakovaly do konce testovac´ıho videa.

V´ystupem z testov´an´ı byly tˇri hodnoty. Poˇcet osob, kter´e proˇsly oblast´ı obsluhy, poˇcet unik´atn´ıch ID, kter´e byly pˇridˇeleny trackovan´ym oblastem v pr˚ubˇehu cel´eho videa a pr˚umˇern´y poˇcet FPS. Ke kaˇzd´emu videu pouˇzit´emu pˇri testov´an´ı byly hod- noty poˇctu osob, kter´e proˇsly a poˇctu unik´atn´ıch osob, kter´e se ve videu objevily tak´e spoˇc´ıt´any ruˇcnˇe pro referenci. V´ysledky tohoto testu zachycuje tabulka 8.2.

Test uk´azal, ˇze i pˇri relativnˇe pˇrehledn´e sc´enˇe testovan´e trackery ˇcasto ztr´ac´ı sledovan´y objekt, ale pokud je oblast obsluhy pˇrehledn´a a sledovan´e osoby do n´ı vstupuj´ı jednotlivˇe, lze na z´akladˇe informac´ı z trackeru poˇc´ıtat proch´azej´ıc´ı osoby s velkou m´ırou konfidence.

Jednou z poˇzadovan´ych vlastnost´ı trackeru je mal´a v´ypoˇcetn´ı n´aroˇcnost. Mˇelo by b´yt moˇzn´e prov´adˇet trackov´an´ı i v situac´ıch, kdy se ve sc´enˇe nach´az´ı des´ıtky osob. Nˇekter´e z testovan´ych tracker˚u v nepˇrehledn´ych sc´en´ach s v´ıce osobami, kdy doch´azelo k ˇcast´emu selh´an´ı sledov´an´ı, vzniku nov´ych sledovan´ych oblast´ı a zv´yˇsen´ı v´ypoˇcetn´ı n´aroˇcnosti, zaˇcaly v´yraznˇe zpomalovat, coˇz je ˇcin´ı nepouˇziteln´ymi.

Zaj´ımav´e bylo chov´an´ı trackeru GOTURN, kter´y je ze vˇsech testovan´ych tracker˚u jako jedin´y zaloˇzen´y na konvoluˇcn´ıch neuronov´ych s´ıt´ıch. V r´amci implementace v OpenCV je ke staˇzen´ı pˇredtr´enovan´y model. Tento tracker podle tv˚urc˚u [30] dosahuje na VOT 2014 datasetu ˇspiˇckov´ych v´ysledk˚u, ale pˇri pouˇzit´ı na testovac´ıch vide´ıch t´eto pr´ace okamˇzitˇe po pˇred´an´ı ztr´acel sledovan´y objekt a vytv´aˇrel velk´e mnoˇzstv´ı faleˇsnˇe pozitivn´ıch oblast´ı sledov´an´ı.

Ze vˇsech otestovan´ych tracker˚u dosahoval dobr´e pˇresnosti za podm´ınky zachov´an´ı velk´e rychlosti zpracov´an´ı jednotliv´ych sn´ımk˚u tracker KCF, a proto byl zvolen jako optim´aln´ı pro dalˇs´ı pouˇzit´ı v navrhovan´em prototypu syst´emu.

(37)

Tracker Video ID Poˇcet FPS Oˇcek´avan´y

1 11 6

2 13 9

3 11 6

CSRT

1 21 6 6,21

2 34 9 3,69

3 23 5 1,79

GOTURN

1 94 16 15,12

2 101 15 27,64

3 50 6 33,5

KCF

1 16 6 10,87

2 32 9 6,43

3 20 4 2,5

MedianFlow

1 30 6 37,38

2 53 12 24,64

3 35 4 8,97

MIL

1 18 7 4,44

2 34 11 2,74

3 22 5 2,05

MOSSE

1 36 6 54,26

2 66 8 40,17

3 25 6 17,42

TLD

1 31 6 6,33

2 51 9 4,13

3 32 1 1.53

Tabulka 8.2: V´ysledky testov´an´ı tracker˚u

8.2.4 Vliv um´ıstˇ en´ı kamery

Jak jiˇz bylo zm´ınˇeno, velk´a ˇc´ast probl´em˚u navrˇzen´eho syst´emu vych´az´ı z faktu, ˇze do- stupn´e detekˇcn´ı a pˇredevˇs´ım trackovac´ı algoritmy ˇspatnˇe zvl´adaj´ı okluzi sledovan´ych objekt˚u. Tato nev´yhoda je v pˇr´ıpadˇe fronty lid´ı inherentn´ı. Jej´ı odstranˇen´ı by bylo teoreticky moˇzn´e do znaˇcn´e m´ıry, pokud by kamera zab´ıraj´ıc´ı frontu byla um´ıstˇena kolmo k rovinˇe tvoˇren´e podlahou. Toto ˇreˇsen´ı nar´aˇz´ı v realitˇe na dva probl´emy.

Prvn´ı probl´em je ekonomick´y. Nasazen´ı navrhovan´eho syst´emu poˇc´ıt´a s vyuˇzit´ım jiˇz instalovan´ych kamer, kter´e jsou bezpeˇcnostn´ı a pˇrirozenˇe tedy um´ıstˇen´e tak, aby bylo moˇzn´e identifikovat osoby na z´abˇerech, tzn. pˇribliˇznˇe v ´uhlu 45. Instalace jedno´uˇcelov´ych kamer pˇredstavuje velkou investici.

Druh´y probl´em pˇredstavuje robustnost detekˇcn´ıho syst´emu. K jej´ımu otestov´an´ı byly z testovac´ıho datasetu vybr´any sn´ımky stejn´e sc´eny ve stejn´em ˇcase zachycen´e ze dvou ´uhl˚u: kolmo a rovnobˇeˇznˇe k podlaze. Obˇe sc´eny zachycovaly frontu bez okluze. ˇC´ast sn´ımk˚u byla pro testovac´ı ´uˇcely umˇele zaˇsumˇena a rozˇs´ıˇrena zrcadlov´ym pˇrevr´acen´ım. Ve sn´ımc´ıch byly detekov´any osoby na tˇrech praz´ıch jistoty (0,5; 0,75;

0.95). U rovnobˇeˇzn´e sc´eny dos´ahl detektor 100% pˇresnosti i ´uplnosti. V´ysledky testu

(38)

na kolm´e sc´enˇe jsou vidˇet v grafu 8.3. Detektor nebyl ´uspˇeˇsn´y ani u osob, kter´e byly dobˇre separovan´e od pozad´ı. Z toho lze vyvodit, ˇze tr´enovac´ı data neobsahuj´ı instance osob zachycen´ych shora v dostateˇcn´em mnoˇzstv´ı. I pˇres to, ˇze tˇr´ıda osoby je v COCO datasetu zastoupena t´emˇeˇr milionem instanc´ı a je tedy nejpoˇcetnˇejˇs´ı ze vˇsech 81 tˇr´ıd [14].

Tento probl´em by bylo moˇzn´e odstranit dotr´enov´an´ım detekˇcn´ıho modelu da- tasetem obsahuj´ıc´ım sn´ımky poˇr´ızen´e z vhodn´eho ´uhlu v dostateˇcn´em mnoˇzstv´ı. V dobˇe vytv´aˇren´ı pr´ace se nepodaˇrilo odpov´ıdaj´ıc´ı dataset nal´ezt.

Obr´azek 8.3: ´Uspˇeˇsnost detekce na kameˇre um´ıstˇen´e shora

8.3 Syst´ em

N´asleduj´ıc´ı sekce se zab´yv´a implementac´ı syst´emu pro odhad ˇcekac´ı doby. Zp˚usob fungov´an´ı syst´emu popisuje sch´ema8.4. Syst´em je navrˇzen modul´arnˇe tak, aby jeho kl´ıˇcov´e ˇc´asti – detekce a trackov´an´ı – byly s minimem komplikac´ı vymˇeniteln´e. Tato vlastnost reflektuje fakt, ˇze algoritmy detekce i trackov´an´ı velice rychle zastar´avaj´ı.

8.3.1 Izolace fronty ve sc´ enˇ e

Jak je vidˇet na obr´azku origin´aln´ı sc´eny 8.5, v re´aln´em prostˇred´ı je tˇreba poˇc´ıtat s t´ım, ˇze ve vˇetˇsinˇe pˇr´ıpad˚u kamera nezab´ır´a pouze oblast fronty. V d˚usledku nelze prov´adˇet detekci na cel´em z´abˇeru, nebot’ by zjiˇstˇen´y poˇcet osob zahrnoval i osoby proch´azej´ıc´ı a rostla by chyba odhadu. Tuto situaci lze vyˇreˇsit vymaskov´an´ım oblasti, kter´a nen´ı validn´ı, pomoc´ı bin´arn´ı masky, tak jak je to zn´azornˇeno na obr´azku8.5.

(39)

Obr´azek 8.4: Sch´ema syst´emu pro odhad ˇcekac´ı doby

Tento pˇr´ıstup s sebou nese dalˇs´ı v´yhodu, a tou je aplikace detekce a trackov´an´ı pouze na validn´ı ˇc´ast z´abˇeru. D´ıky tomuto pˇr´ıstupu lze sn´ıˇzit v´ypoˇcetn´ı n´aroˇcnost pr´ace se z´aznamem, nebot’ se veˇsker´e v´ypoˇcty dˇej´ı s menˇs´ım objemem dat.

Navrhovan´y syst´em umoˇzˇnuje ˇreˇsit vytvoˇren´ı bin´arn´ı masky dvˇema zp˚usoby.

Prvn´ım zp˚usobem je naˇcten´ı souboru *.json, kter´y obsahuje slovn´ık s polem bod˚u definuj´ıc´ıch v obraze polygon fronty. Z tohoto souboru bod˚u je pomoc´ı knihovny PIL vytvoˇreno pole typu numpy, kter´e obsahuje nulov´e hodnoty na vˇsech souˇradnic´ıch, kter´e se nach´az´ı vnˇe validn´ı oblasti. Vstupn´ı obraz je pak za bˇehu programu vymas- kov´an pomoc´ı logick´eho indexov´an´ı, coˇz je v´ypoˇcetnˇe nen´aroˇcn´e.

Druh´y zp˚usob se liˇs´ı zp˚usobem, jak´ym je naˇcteno pole bod˚u polygonu. Jeho vznik byl motivov´an skuteˇcnost´ı, ˇze oblast, ve kter´e se fronta nach´az´ı, se m˚uˇze s ˇcasem mˇenit (obsluha provozu vyuˇz´ıv´a pˇrenosn´ych vymezovac´ıch sloupk˚u podle aktu´aln´ı situace a vyt´ıˇzen´ı), a vytv´aˇren´ı *.json souboru je v tu chv´ıli ˇcasovˇe nev´yhodn´e.

Moˇzn´ym ˇreˇsen´ım t´eto situace je vyuˇzit´ı programu tˇret´ı strany, jako je napˇr´ıklad La- belme (viz8.2.1) a jeho ´uprava. Tato moˇznost byla zam´ıtnuta z d˚uvodu zbyteˇcn´eho bobtn´an´ı k´odu programu a z´avislosti na programu tˇret´ı strany. Vhodn´ym ˇreˇsen´ım s optim´aln´ı m´ırou abstrakce je pouˇzit´ı OpenCV, kter´e umoˇzˇnuje vytvoˇren´ı callback funkce, kter´a zachyt´av´a souˇradnice kliknut´ı na zobrazen´y sn´ımek. Byla vytvoˇrena funkcionalita, kter´a po naˇcten´ı videa zobraz´ı uˇzivateli prvn´ı sn´ımek a umoˇzn´ı mu ohraniˇcit oblast fronty. Po dokonˇcen´ı pˇred´a naˇcten´e souˇradnice funkci, kter´a vytv´aˇr´ı bin´arn´ı masku.

References

Related documents

Za pˇ redpokladu ´ uspˇ eˇ sn´ eho otestov´ an´ı by n´ asledovalo vyuˇ zit´ı odhadnut´ eho a verifikovan´ eho modelu pro predikci, nebo bliˇ zˇ s´ı anal´ yzu zkouman´

Potlaˇ cov´ an´ı odezvy existuj´ı dva druhy, Network Echo Cancellation (potlaˇ cov´ an´ı odezvy v s´ıt’ov´ ych sign´ alech) a Acoustic Echo Cancellation (potlaˇ cov´

Uveden´ a simulace je zaloˇ zena, jak jiˇ z bylo zm´ınˇ eno, na opakovan´ em gene- rov´ an´ı n´ ahodn´ ych dat, na kter´ ych se prov´ ad´ı dan´ y algoritmus a jsou

Pr´ ace navazuj´ıc´ı na tuto by se mohly zab´ yvat vlivem r˚ uzn´ ych pˇredpomiˇ novaˇ c˚ u na ˇ casovou n´ aroˇ cnost ˇreˇsen´ı pˇri pouˇ zit´ı monolitick´

Pˇredloˇ zen´ a disertaˇ cn´ı pr´ ace se zab´ yv´ a adaptac´ı existuj´ıc´ıho syst´ emu automatick´ eho rozpozn´ av´ an´ı ˇreˇ ci (ASR) pro dalˇs´ı jazyky.. Zamˇ eˇruje

Kromˇ e fin´ aln´ı verze, kter´ a komplexnˇ e zpracov´ av´ a veˇsker´ e dan´ e poˇ zadavky, vzni- kala souˇ casnˇ e i verze, kter´ a fungovala bez pouˇ zit´ı detektoru

Na obr´ azku 4.35 je zobrazeno porovn´ an´ı akustick´ eho tlaku nad nosn´ıkem uni- morf (bez elektrod i s elektrodami vych´ az´ı nad nosn´ıkem velice podobn´ y akustick´ y

Pˇri zpracov´ an´ı poˇ zadavk˚ u pˇrid´ avaj´ıc´ıch nov´ y z´ aznam trestn´ e ˇ cinnosti, aplikace z´ısk´ av´ a data o poˇ cas´ı.. Zdrojem dat je port´