7. Gépi tanulás

A kép fejezetben szereplő legtöbb észlelőt egy adott célra kézzel programozták: kézzel hangolt színtartományok a foltkövetéshez, kézzel levezetett súlyminták az élszűrőkhöz, rögzített geometriai feltételezések a vonal- és körkeresőkhöz. Minden algoritmus egyféle feladatot fedett le, és egy új cél hozzáadása egy új algoritmus megírását jelentette. A gépi tanulás megváltoztatja a munkafolyamatot. Célonként egy algoritmus helyett az alkalmazás betölt egy betanított modellt – súlyok halmazát, amelyet eszközön kívül, egy asztali gépen, sok példaképpel állítottak elő – és futtatja a kamerán. Ugyanaz a motor, amely egy arcészlelőt futtat, futtat egy kéztartás-becslőt, egy testtartás-követőt, egy objektumosztályozót vagy bármi mást, amire egy modellt betanítottak.

Az ml modul az eszközkészlet. Minden művelet egyetlen Model objektumra épül, amely betölt egy modellfájlt a flash memóriából, kezeli annak kvantált bemeneti és kimeneti tenzorait, minden következtetést a kamera megfelelő motorjához irányít, és a kapott tenzorokat egy opcionális utófeldolgozón keresztül továbbítja, amely azokat visszaalakítja azzá az eredményformává, amelyre az alkalmazás reagálhat – dobozokká, kulcspontokká, osztályokká, vagy bármivé, amire a modell való.

Összefoglalás