AI-For-Beginners/translations/fi/lessons/4-ComputerVision/11-ObjectDetection
localizeflow[bot] 7a9b37f3b1 chore(i18n): sync translations with latest source changes (chunk 1/1, 201 changes) 2026-01-30 02:07:34 +00:00
..
lab chore(i18n): sync translations with latest source changes (chunk 1/1, 201 changes) 2026-01-30 02:07:34 +00:00
ObjectDetection.ipynb 🌐 Update translations via Co-op Translator 2025-08-28 22:12:36 +00:00
README.md chore(i18n): sync translations with latest source changes (chunk 1/1, 201 changes) 2026-01-30 02:07:34 +00:00

README.md

Objektien 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ÀÀ objekteja – haluamme pystyĂ€ mÀÀrittĂ€mÀÀn niiden tarkka sijainti. Juuri tĂ€hĂ€n objektien tunnistus keskittyy.

Pre-lecture quiz

Objektien tunnistus

Kuva YOLO v2 -verkkosivustolta

Naiivi lÀhestymistapa objektien tunnistukseen

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

  1. Pilko kuva useiksi ruuduiksi.
  2. Suorita kuvien luokittelu jokaiselle ruudulle.
  3. Ruudut, jotka tuottavat riittÀvÀn korkean aktivoinnin, voidaan katsoa sisÀltÀvÀn kyseisen objektin.

Naiivi objektien tunnistus

Kuva harjoitusmuistiosta

TĂ€mĂ€ lĂ€hestymistapa on kuitenkin kaukana ihanteellisesta, koska se sallii algoritmin mÀÀrittÀÀ objektin rajauslaatikon sijainnin vain hyvin epĂ€tarkasti. Tarkempaa sijaintia varten meidĂ€n tĂ€ytyy kĂ€yttÀÀ jonkinlaista regressiota ennustamaan rajauslaatikoiden koordinaatit – ja tĂ€tĂ€ varten tarvitsemme erityisiĂ€ tietoaineistoja.

Regressio objektien tunnistukseen

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

Tietoaineistot objektien tunnistukseen

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

Objektien tunnistuksen mittarit

Intersection over Union

Kuvien luokittelussa algoritmin suorituskyvyn mittaaminen on helppoa, mutta objektien 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 satunnaista aluetta) menevÀt pÀÀllekkÀin.

IoU

Kuva 2 tÀstÀ erinomaisesta IoU-blogikirjoituksesta

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

Keskiarvoinen tarkkuus (Average Precision)

Oletetaan, ettÀ haluamme mitata, kuinka hyvin tietty objektiluokka C tunnistetaan. TÀtÀ varten kÀytÀmme keskiarvoista tarkkuutta (Average Precision), joka lasketaan seuraavasti:

  1. Tarkastellaan tarkkuus-kutsukĂ€yrÀÀ, joka nĂ€yttÀÀ tarkkuuden tunnistuskynnyksen arvon (0–1) mukaan.
  2. Kynnyksen mukaan saamme enemmÀn tai vÀhemmÀn objekteja tunnistettua kuvasta, ja tarkkuuden ja kutsun arvot vaihtelevat.
  3. KÀyrÀ nÀyttÀÀ tÀltÀ:

Kuva NeuroWorkshopista

Keskiarvoinen tarkkuus tietylle luokalle C on tÀmÀn kÀyrÀn alla oleva pinta-ala. Tarkemmin sanottuna kutsu-akseli jaetaan tyypillisesti 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 tunnistukset, joiden IoU ylittÀÀ tietyn arvon. Esimerkiksi PASCAL VOC -tietoaineistossa tyypillisesti \mbox{IoU Threshold} = 0.5, kun taas COCO:ssa AP mitataan eri \mbox{IoU Threshold}-arvoille.

Kuva NeuroWorkshopista

Keskiarvoinen tarkkuus (Mean Average Precision - mAP)

Objektien tunnistuksen pÀÀmittari on keskiarvoinen tarkkuus, eli mAP. Se on keskiarvoisen tarkkuuden arvo, keskiarvoistettuna kaikkien objektiluokkien yli, ja joskus myös \mbox{IoU Threshold}-arvojen yli. Tarkempi kuvaus mAP-laskentaprosessista löytyy tÀstÀ blogikirjoituksesta), sekÀ tÀÀltÀ koodiesimerkkien kanssa.

Eri lÀhestymistavat objektien tunnistukseen

Objektien 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 yli, etsien maksimaalista aktivointia. 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 yli 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ÀÀ luomaan hierarkkisen rakenteen ROI-alueista, jotka sitten syötetÀÀn CNN-ominaisuuksien erottimiin ja SVM-luokittelijoihin objektin luokan mÀÀrittÀmiseksi, sekÀ lineaariseen regressioon rajauslaatikon koordinaattien mÀÀrittÀmiseksi. 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 erotetaan ResNet-101:llÀ.
  2. Ominaisuudet kÀsitellÀÀn Position-Sensitive Score Map -kartalla. Jokainen objekti luokasta C jaetaan k\times k alueisiin, ja verkkoa koulutetaan ennustamaan objektien osia.
  3. Jokaiselle osalle k\times k alueista kaikki verkot ÀÀnestÀvÀt objektin luokista, ja eniten ÀÀniÀ saanut luokka 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 objektia, rajauslaatikon koordinaatit ja luottamus=todennĂ€köisyys * IoU.

YOLO

Kuva virallisesta artikkelista

Muut algoritmit

✍ Harjoitukset: Objektien tunnistus

Jatka oppimista seuraavassa muistiossa:

ObjectDetection.ipynb

Yhteenveto

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

🚀 Haaste

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

Post-lecture quiz

Kertaus & Itseopiskelu

TehtÀvÀ: Objektien tunnistus