Computer Vision Summer Сamp – Inteli arvutinägemise suvekool

Computer Vision Summer Сamp – Inteli arvutinägemise suvekool

3. juulist 16. juulini Nižni Novgorodi Riiklikus Ülikoolis. N.I. Lobatševski võõrustas Intel Interuniversity Summer School on Computer Vision - Computer Vision Summer Camp, millest võttis osa üle 100 üliõpilase. Kool oli suunatud Nižni Novgorodi ülikoolide tehnikaüliõpilastele, kes on huvitatud arvutinägemisest, süvaõppest, närvivõrkudest, Intel OpenVINOst, OpenCV-st.

Selles artiklis jagame, kuidas toimus Kooli valimine, mida nad õppisid, mida õpilased praktilises osas tegid ning räägime ka mõnest kaitsmisel esitletud projektist.

Valikuprotsess ja osalemisvormid

Otsustasime anda lastele võimaluse taotleda kahte õppevormi: täiskoormusega ja osakoormusega. Osakoormusega ja osakoormusega kursustele üliõpilasi ei valitud ja nad registreeriti kohe. Nad käisid ainult loengutel, tööpäeviti, hommikuti. Lastel oli võimalus täita ka praktilisi ülesandeid ja saata need kohale GitHub õpetajatele testimiseks.

Täiskohaga eksamile pääsemiseks pidid poisid tulema Inteli kontorisse komisjoniga vestlusele. Erinevus osa- ja osakoormusega vormist seisnes selles, et lisaks loengutele läbisid laagris osalejad praktilisi ülesandeid koos kuraatoritega – UNNi õppejõudude ja Inteli inseneridega. Teisel nädalal lõppesid praktilised ülesanded ja algasid projektid, mille kallal osalejad töötasid 3-liikmelistes rühmades.

Vestluse käigus esitati õpilastele küsimusi matemaatika ja programmeerimise kohta ning anti ka ülesanne, mis tuli kohapeal lahendada. Väärib märkimist, et komisjon koosnes tarkvarainseneridest, algoritmiinseneridest ja ülikoolide õppejõududest. N.I. Lobatševski, nii et intervjuu osutus mitmetahuliseks ja erakordseks. Intervjueerija seisukohalt oli huvitav teada saada õpilaste tehnilisi algteadmisi seoses arvutinägemisega, nii et sellised teemad nagu C++/STL, OOP, põhialgoritmid ja andmestruktuurid, lineaaralgebra, matemaatiline analüüs, diskreetne matemaatika ning küsiti palju rohkem. Ülesannete hulgas oli prioriteet õpilaste arutluskäigu väljaselgitamine. Komisjoni huvitas ka see, kus nad õppisid, millised kogemused neil enne seda kooli olid (näiteks teaduslik tegevus) ja kuidas seda otse arvutinägemise valdkonnas rakendada.

Päevavalikus osales kokku 78 õpilast, kusjuures täiskoormusega õppekohti oli 24. Konkursil oli 3 õpilast õppekoha kohta. Osalejate statistika ja visuaalsed erinevused täistööajaga ja osalise tööajaga osalemisvormide vahel on näha allolevas tabelis:

Computer Vision Summer Сamp – Inteli arvutinägemise suvekool

Mida tegid poisid 2 nädalat?

Õpilased tutvusid teoorias ja praktikas arvutinägemise põhiülesannetega: kujutiste klassifitseerimine, objektide tuvastamine ja nende jälgimine. Iga teema loengukomponent sisaldas tavaliselt ajaloolist ekskursiooni klassikaliste arvutinägemisprobleemide lahendamise meetodite ja kaasaegsete masinõppe ja närvivõrkude abil lahendamismeetodite arendamisse. Teooriale järgnes praktika, kus õpilased laadisid alla populaarsed närvivõrgu mudelid ja käivitasid need OpenCV teegi DNN mooduli abil, luues kohandatud rakenduse.

Kõikide loengute esitlused pandi üles avalikku repositooriumisse Github, et õpilased saaksid alati avada ja vaadata vajalikku teavet, ka pärast kooli. Õppejõudude, praktikaõpetajate ja Inteli inseneridega oli võimalik suhelda nii otse-eetris kui ka Gitteri vestluse kaudu. Edukaks osutus ka projektinädala ajastus: see algas kolmapäeval, mis võimaldas veeta nädalavahetuse kasulikult loengutest vaba, parandades meeskonnaotsuseid. Vastutustundlikumad osalejad veetsid pool laupäevast Inteli kontoris, mille eest said nad samal päeval preemiaks plaanivälise ekskursiooni.

Kuidas läks projektide kaitsmisega?

Igale meeskonnale anti 10 minutit aega, et rääkida, mida nad projekti jooksul tegid ja milleni jõudsid. Selle aja möödudes algas 5 minutit, mille jooksul ettevõtte insenerid esitasid poistele küsimusi ja andsid väikseid näpunäiteid, mis aitaksid neil oma projekti täiustada või olemasolevaid vigu tulevikus ära hoida. Iga poiss proovis end esinejana, demonstreerides oma teadmisi arvutinägemise vallas ja kinnitades oma panust projekti loomisse, mis aitas meil mõelda ja teha järeldusi iga koolis osaleja kohta. Kaitsmine toimus üle 3 tunni, kuid meie hoolitsesime kuttide eest ja maandasime pingeid lühikese kohvipausiga, kus kutid said hinge tõmmata ja Inteli juhtivate spetsialistidega probleeme arutada.

Päeva lõpuks andsime välja ühe esimese, kaks teist ja kolm kolmandat kohta. Valida oli üsna raske, sest iga meeskond, iga projekt oli oma maitsega ja eristus esitluse originaalsusest.

Computer Vision Summer Сamp – Inteli arvutinägemise suvekool
Täiskohaga CV Laagris osalejad, projekti kaitsmine, Inteli kontor Nižni Novgorodis

Esitleti projekte

Nutikas kinnas

Computer Vision Summer Сamp – Inteli arvutinägemise suvekool

Detektori ja jälgija kasutamine OpenCV abil visuaalseks ruumis navigeerimiseks. Meeskond on lisaks kahe kaamera abil lisanud sügavustuvastusvõime. Haldusliidesena kasutatakse Microsoft Speech API-t.

Retseptor

Computer Vision Summer Сamp – Inteli arvutinägemise suvekool

Toidu tuvastamine ja valmisroa retsepti valimine, sealhulgas leitud koostisosad. Poisid ülesannet ei kartnud ja nädala jooksul märgistasid nad iseseisvalt üles piisava hulga pilte, treenisid detektorit TensorFlow Object Detection API abil ja lisasid retsepti leidmiseks loogikat. Lihtne ja maitsekas!

Toimetaja 2.0

Computer Vision Summer Сamp – Inteli arvutinägemise suvekool

Projektis osalejad kasutasid näotuvastuseks närvivõrkude komplekti (näootsing, näokujutise normaliseerimine võtmepunktide järgi, näokujutise deskriptori arvutamine) osana ülesandest otsida fragmente pikkadest videotest, milles teatud isik on kohal. Väljatöötatud süsteemi saab kasutada videotöötluse abisüsteemina, vabastades inimese vajadusest vajalike fragmentide otsimisel videot ise vaadata. Närvivõrkude kasutamine alates OpenVINO mudeliteekid, õnnestus meeskonnal saavutada rakenduse suur kiirus: Intel Core i5 protsessoriga sülearvutil oli videotöötluskiirus 58 kaadrit sekundis.

Anonüümseks muutja

Computer Vision Summer Сamp – Inteli arvutinägemise suvekool

Prillide ja maskide joonistamine inimese näole. MTCNN-võrku kasutati nägude ja võtmepunktide tuvastamiseks.

Anonüümne

Computer Vision Summer Сamp – Inteli arvutinägemise suvekool

Veel üks huvitav töö identiteedi varjamise teemal. See meeskond tutvustas mitut võimalust nägude moonutamiseks: hägustamine ja pikslitamine. Ühe nädala jooksul ei mõelnud poisid mitte ainult ülesande välja, vaid pakkusid ka režiimi konkreetse inimese anonüümseks muutmiseks (näotuvastusega).

Soojendage

Projekti “Soojendus” meeskond lahendas pea kallutamise harjutuse jaoks spordiassistendi loomise probleemi. Ja isegi kui selle rakenduse lõplik rakendus on endiselt vastuoluline, viidi läbi põhjalik uuring, milles võrreldi erinevaid näotuvastusalgoritme: Haari kaskaadid, TensorFlow võrgud, OpenCV ja OpenVINO. Soojendasime mitte ainult füüsiliselt, vaid ka vaimselt!

Madalam 800

Computer Vision Summer Сamp – Inteli arvutinägemise suvekool

Nižni Novgorod, linn, kus kool toimus, saab 2 aasta pärast 800-aastaseks, mis tähendab, et huvitava projekti elluviimiseks on piisavalt aega. Palusime lastel mõelda ülesandele koostada juhend, mis hoonete fassaadi kujutise põhjal võib anda teavet selle kohta, millist objekti pildil näidatakse ja milliseid fakte on selle kohta teada. Meie arvates oli see ülesanne üks raskemaid, kuna see on seotud klassikalise arvutinägemisega, kuid meeskond näitas korralikku tulemust.

Kivi paber käärid

Hoolimata disainitöö lõpuleviimise rangetest ajapiirangutest, ei kartnud see meeskond läbi viia katset, et treenida oma närvivõrku, et klassifitseerida tuntud mängus käte positsioone.

Osalejate tagasiside

Palusime erinevate kursuste õpilastel jagada oma muljeid suvekoolist:

Mul oli hiljuti õnn osaleda Intel Computer Visioni suvelaagris ja see oli suurepärane kogemus. Saime palju uusi teadmisi ja oskusi CV, tarkvara installeerimise, silumise vallas, sukeldusime ka töökeskkonda, seisime silmitsi reaalsete probleemidega, arutasime võimalikke lahendusi kolleegide ja kooliõpetajatega.On müüt, et programmeerija töö koosneb ainult arvutiga suhtlemisest. See pole aga sugugi nii. Meie loometöö on lahutamatu inimestega suhtlemisest. Just suhtlemise kaudu võis saada ainulaadseid teadmisi. Ja see kooli komponent meeldis mulle kõige rohkem. Siiski on üks puudus... pärast õpingute lõpetamist tahtsin jätkata! Lisaks teoreetilistele teadmistele DL-s ja praktilistele oskustele CV-s, sain aimu, millistele matemaatika valdkondadele tuleks erilist tähelepanu pöörata ja milliseid tehnoloogiaid õppida. Inteli inseneride ja teadlaste pühendumus, professionaalsus ja armastus oma töö vastu mõjutas minu IT-suuna valikut. Just selle eest tahan tänada kõiki kooli korraldajaid.

Kristina, 1. kursus, HSE

Nii lühikese ajaga suutis kool anda maksimaalselt infot ja praktikat arvutinägemise teemal. Ja kuigi see oli mõeldud algteadmiste jaoks, sisaldasid loengud palju tehnilist materjali, millest tahetakse aru saada ja õppimisele rohkem aega kulutada. Kooli mentorid ja õppejõud vastasid innukalt kõikidele küsimustele ja suhtlesid õpilastega. Noh, lõputööd tehes tuli mul sukelduda valmis rakenduse arendamise džunglisse ja kokku puutuda raskustega, mida õppimisel alati ei teki. Meie tiim tegi lõpuks avalduse arvutiga mängu “kivi-paber-käärid” mängimiseks. Koolitasime mudelit veebikaameras figuuri ära tundma, kirjutasime loogikat ja tegime opencv raamistiku alusel liidese. Kool pakkus mõtlemisainet ja vektori hilisemaks õppimiseks ja arenguks. Mul on väga hea meel, et osa võtsin.

Sergei, 3. kursus, UNN

Kool ei vastanud päris minu ootustele. Loenguid pidasid üsna kogenud inimesed Inteli arendajatest. Suhtlemine õppejõududega on alati olnud huvitav ja kasulik, mentorid on vastutulelikud ja alati valmis aitama.Loenguid on meeldiv kuulata, teemad on üsna aktuaalsed ja informatiivsed. Kuid mõningaid asju ma juba teadsin ja neid, mida ma ei teadnud, ei toetanud praktika kuidagi ja seetõttu ei saanud ma tõeliselt head materjali kunagi täielikult aru ega õppinud. Jah, suurem osa teabest on esitatud informatiivsel eesmärgil, et saaksite seda kodus proovida või lihtsalt aimu, millega tegu, kuid siiski tahtsin mõnda olemasolevat algoritmi ise rakendada. ei tööta kogenud õpetajate juhendamine, kes oskavad head nõu anda või aidata, kui midagi juhtub. Selle tulemusena kasutati praktikas valmislahendusi ja kood, võib öelda, oli meile ette kirjutatud, seda oli vaja vaid veidi muuta. Projektid olid kõige lihtsamad ja kui proovite ülesannet kuidagi keerulisemaks muuta, siis pole teil piisavalt aega selle enam-vähem stabiilsesse olekusse elluviimiseks, nagu meiega juhtus.
Üldiselt näeb kogu kool välja nagu mingi mitte väga tõsine arendajate mäng ja see on just praktilise osa viga. Arvan, et on vaja suurendada koolis veedetud aega, teha harjutusmaterjali keerulisemaks, et saaks ja peaks ise midagi kirjutama, midagi tõeliselt keerulist ja vajalikku, mitte kasutama valmis, et harjutamine muutuks keerukuse suurenemisel sujuvamaks. , võistlusprojektide teemad tuleks välja anda esimestel päevadel, et loengutest ja praktikatest saadud materjali saaks kohe oma projektides kasutada ja jääks rohkem aega elluviimiseks. Siis on koolis veedetud aeg heaks kogemuseks spetsialistiks pürgijatele.

Dmitri, 1. aasta magistrikraad, NSTU

Inteli suvekool oli suurepärane võimalus veeta see suvi tehes seda, mida armastate. Ainuüksi see, et loenguid pidasid arvutinägemise valdkonna programmeerimisega seotud Inteli töötajad, ei lasknud mul lõõgastuda, tahtsin kogu protsessist maksimumi võtta, kuigi vahel oli see raske. Iga päev möödus väga kiiresti, märkamatult ja viljakalt. Võimalus viia ellu oma projekt võimaldas mul töötada meeskonnas suurepäraste kuraatorite ja teiste koolis osalejatega. Neid kahte nädalat võib lühidalt kirjeldada järgmiselt: huvitav ja põgus.

Elizaveta, 2. kursus, UNN

Sügisel (oktoober-november) ootab teid Delta haridusprogramm, mille kohta saate teavet meie VKontakte rühmad. Püsige lainel!

Allikas: www.habr.com

Lisa kommentaar