AI-For-Beginners/translations/fi/lessons/4-ComputerVision/11-ObjectDetection
leestott 07e1ffa96b 🌐 Update translations via Co-op Translator 2025-08-28 22:12:36 +00:00
..
lab 🌐 Update translations via Co-op Translator 2025-08-28 22:12:36 +00:00
ObjectDetection.ipynb 🌐 Update translations via Co-op Translator 2025-08-28 22:12:36 +00:00
README.md 🌐 Update translations via Co-op Translator 2025-08-28 22:12:36 +00:00

README.md

Kohteiden Tunnistus

Kuvien luokittelumallit, joita olemme tĂ€hĂ€n mennessĂ€ kĂ€sitelleet, ottavat kuvan ja tuottavat kategorisen tuloksen, kuten luokan 'numero' MNIST-ongelmassa. Monissa tapauksissa emme kuitenkaan halua vain tietÀÀ, ettĂ€ kuva esittÀÀ kohteita – haluamme pystyĂ€ mÀÀrittĂ€mÀÀn niiden tarkka sijainti. Juuri tĂ€hĂ€n kohteiden tunnistus keskittyy.

Pre-lecture quiz

Kohteiden Tunnistus

Kuva YOLO v2 -verkkosivustolta

Naiivi LĂ€hestymistapa Kohteiden Tunnistukseen

Oletetaan, ettÀ haluaisimme löytÀÀ kissan kuvasta. Hyvin yksinkertainen lÀhestymistapa kohteiden tunnistukseen voisi olla seuraava:

  1. Pilko kuva useisiin ruutuihin.
  2. Suorita kuvien luokittelu jokaisessa ruudussa.
  3. Ruutuja, jotka tuottavat riittÀvÀn korkean aktivoinnin, voidaan pitÀÀ sisÀltÀvÀn halutun kohteen.

Naiivi Kohteiden Tunnistus

Kuva Harjoitusmuistikirjasta

TĂ€mĂ€ lĂ€hestymistapa on kuitenkin kaukana ihanteellisesta, koska se sallii algoritmin paikantaa kohteen rajauslaatikon hyvin epĂ€tarkasti. Tarkempaa sijaintia varten meidĂ€n tĂ€ytyy suorittaa jonkinlainen regressio ennustamaan rajauslaatikoiden koordinaatit – ja tĂ€tĂ€ varten tarvitsemme erityisiĂ€ tietoaineistoja.

Regressio Kohteiden Tunnistukseen

TÀmÀ blogikirjoitus tarjoaa hyvÀn johdannon muotojen tunnistamiseen.

Kohteiden Tunnistuksen Tietoaineistot

TÀssÀ tehtÀvÀssÀ saatat törmÀtÀ seuraaviin tietoaineistoihin:

  • PASCAL VOC – 20 luokkaa
  • COCO – Common Objects in Context. 80 luokkaa, rajauslaatikot ja segmentointimaskit

COCO

Kohteiden Tunnistuksen Mittarit

Intersection over Union

Kuvien luokittelussa algoritmin suorituskyvyn mittaaminen on helppoa, mutta kohteiden tunnistuksessa meidÀn tÀytyy mitata sekÀ luokan oikeellisuus ettÀ ennustetun rajauslaatikon sijainnin tarkkuus. JÀlkimmÀistÀ varten kÀytÀmme niin kutsuttua Intersection over Union (IoU) -mittaria, joka mittaa, kuinka hyvin kaksi laatikkoa (tai kaksi mielivaltaista aluetta) menevÀt pÀÀllekkÀin.

IoU

Kuva 2 tÀstÀ erinomaisesta IoU-blogikirjoituksesta

Idea on yksinkertainen – jaamme kahden kuvion leikkausalueen niiden yhdistymisalueella. Kahdelle identtiselle alueelle IoU olisi 1, kun taas tĂ€ysin erillisille alueille se olisi 0. Muuten se vaihtelee vĂ€lillĂ€ 0–1. YleensĂ€ otamme huomioon vain ne rajauslaatikot, joiden IoU ylittÀÀ tietyn arvon.

Keskiarvoinen Tarkkuus

Oletetaan, ettÀ haluamme mitata, kuinka hyvin tietty kohdeluokka C tunnistetaan. TÀtÀ varten kÀytÀmme Keskiarvoinen Tarkkuus -mittaria, joka lasketaan seuraavasti:

  1. Tarkastellaan Precision-Recall-kĂ€yrÀÀ, joka nĂ€yttÀÀ tarkkuuden havaintokynnyksen arvon (0–1) mukaan.
  2. Kynnyksen mukaan saamme enemmÀn tai vÀhemmÀn havaittuja kohteita kuvassa sekÀ erilaisia tarkkuuden ja palautteen arvoja.
  3. KÀyrÀ nÀyttÀÀ tÀltÀ:

Kuva NeuroWorkshopista

Keskiarvoinen tarkkuus tietylle luokalle C on tÀmÀn kÀyrÀn alla oleva alue. Tarkemmin sanottuna Recall-akseli jaetaan yleensÀ 10 osaan, ja tarkkuus keskiarvoistetaan kaikissa nÀissÀ pisteissÀ:


AP = {1\over11}\sum_{i=0}^{10}\mbox{Precision}(\mbox{Recall}={i\over10})

AP ja IoU

Otamme huomioon vain ne havainnot, joiden IoU ylittÀÀ tietyn arvon. Esimerkiksi PASCAL VOC -tietoaineistossa yleensÀ \mbox{IoU Threshold} = 0.5, kun taas COCO:ssa AP mitataan eri \mbox{IoU Threshold}-arvoille.

Kuva NeuroWorkshopista

Keskiarvoinen Tarkkuus Kaikkien Luokkien Yli – mAP

Kohteiden tunnistuksen pÀÀmittari on Keskiarvoinen Tarkkuus Kaikkien Luokkien Yli, eli mAP. Se on keskiarvoinen tarkkuus, keskiarvoistettuna kaikkien kohdeluokkien yli, ja joskus myös \mbox{IoU Threshold}-arvojen yli. Tarkempi kuvaus mAP-laskentaprosessista löytyy tÀstÀ blogikirjoituksesta) sekÀ tÀÀltÀ koodiesimerkkien kanssa.

Erilaiset Kohteiden TunnistusmenetelmÀt

Kohteiden tunnistusalgoritmit voidaan jakaa kahteen pÀÀluokkaan:

  • Alue-ehdotusverkot (R-CNN, Fast R-CNN, Faster R-CNN). PÀÀidea on luoda kiinnostusalueita (ROI) ja ajaa CNN niiden lĂ€pi etsimĂ€llĂ€ maksimiaktivointia. TĂ€mĂ€ on hieman samanlainen kuin naiivi lĂ€hestymistapa, mutta ROI:t luodaan Ă€lykkÀÀmmin. Yksi suurimmista haittapuolista tĂ€llaisissa menetelmissĂ€ on niiden hitaus, koska CNN-luokittelijaa tĂ€ytyy ajaa kuvan lĂ€pi monta kertaa.
  • Yhden passin (YOLO, SSD, RetinaNet) menetelmĂ€t. NĂ€issĂ€ arkkitehtuureissa verkko suunnitellaan ennustamaan sekĂ€ luokat ettĂ€ ROI:t yhdellĂ€ passilla.

R-CNN: Aluepohjainen CNN

R-CNN kÀyttÀÀ Selective Search -menetelmÀÀ luodakseen hierarkkisen rakenteen ROI-alueista, jotka sitten kulkevat CNN-ominaisuuksien erottelijoiden ja SVM-luokittelijoiden lÀpi mÀÀrittÀmÀÀn kohdeluokan sekÀ lineaarisen regression mÀÀrittÀmÀÀn rajauslaatikon koordinaatit. Virallinen artikkeli

RCNN

Kuva van de Sande et al. ICCV’11

RCNN-1

Kuvat tÀstÀ blogista

F-RCNN – Fast R-CNN

TÀmÀ lÀhestymistapa on samanlainen kuin R-CNN, mutta alueet mÀÀritellÀÀn vasta konvoluutiokerrosten soveltamisen jÀlkeen.

FRCNN

Kuva virallisesta artikkelista, arXiv, 2015

Faster R-CNN

TĂ€mĂ€n lĂ€hestymistavan pÀÀidea on kĂ€yttÀÀ neuroverkkoa ennustamaan ROI:t – niin kutsuttu Region Proposal Network. Artikkeli, 2016

FasterRCNN

Kuva virallisesta artikkelista

R-FCN: Aluepohjainen TĂ€ysin Konvoluutioverkko

TÀmÀ algoritmi on jopa nopeampi kuin Faster R-CNN. PÀÀidea on seuraava:

  1. Ominaisuudet erotellaan ResNet-101:llÀ.
  2. Ominaisuudet kÀsitellÀÀn Position-Sensitive Score Map -kartalla. Jokainen kohde luokasta C jaetaan k\times k alueisiin, ja verkkoa koulutetaan ennustamaan kohteiden osia.
  3. Jokaiselle osalle k\times k alueista kaikki verkot ÀÀnestÀvÀt kohdeluokista, ja kohdeluokka, jolla on eniten ÀÀniÀ, valitaan.

r-fcn kuva

Kuva virallisesta artikkelista

YOLO – You Only Look Once

YOLO on reaaliaikainen yhden passin algoritmi. PÀÀidea on seuraava:

  • Kuva jaetaan S\times S alueisiin.
  • Jokaiselle alueelle CNN ennustaa n mahdollista kohdetta, rajauslaatikon koordinaatit ja luottamus=todennĂ€köisyys * IoU.

YOLO

Kuva virallisesta artikkelista

Muut Algoritmit

✍ Harjoitukset: Kohteiden Tunnistus

Jatka oppimista seuraavassa muistikirjassa:

ObjectDetection.ipynb

Yhteenveto

TÀssÀ oppitunnissa tutustuit moniin eri tapoihin, joilla kohteiden tunnistus voidaan toteuttaa!

🚀 Haaste

Lue nÀmÀ artikkelit ja muistikirjat YOLO:sta ja kokeile niitÀ itse:

Post-lecture quiz

Kertaus & Itseopiskelu

TehtÀvÀ: Kohteiden Tunnistus


Vastuuvapauslauseke:
TÀmÀ asiakirja on kÀÀnnetty kÀyttÀmÀllÀ tekoÀlypohjaista kÀÀnnöspalvelua Co-op Translator. Vaikka pyrimme tarkkuuteen, huomioithan, ettÀ automaattiset kÀÀnnökset voivat sisÀltÀÀ virheitÀ tai epÀtarkkuuksia. AlkuperÀinen asiakirja sen alkuperÀisellÀ kielellÀ tulisi pitÀÀ ensisijaisena lÀhteenÀ. Kriittisen tiedon osalta suositellaan ammattimaista ihmiskÀÀnnöstÀ. Emme ole vastuussa vÀÀrinkÀsityksistÀ tai virhetulkinnoista, jotka johtuvat tÀmÀn kÀÀnnöksen kÀytöstÀ.