Johdatus Konenäköön

Hulvattoman laaja kenttä

Haastavaa.

Johdatus Konenäköön

Lupaavaa.

Mielenkiintoista

Mitä näet?

Mitä näet tässä kuvassa

Mitä näet tässä kuvassa

Symboleja!

Tätä et pysty olemaan näkemättä

Tätä et pysty olemaan näkemättä

Tietokone näkee tämän

Tämän näkee tietokone

Tämän näkee tietokone

Mitä konenäkö tutkii?

Esimerkkisovelluksia 1

Esimerkkisovelluksia 1

Alan historiasta

Lyhyt aikajana tutkimusalueista

Lyhyt aikajana tutkimusalueista

70-lukua

Esimerkkejä 70-luvulta

Esimerkkejä 70-luvulta

80-lukua

Esimerkkejä 80-luvulta

Esimerkkejä 80-luvulta

90-lukua

Esimerkkejä 90-luvulta

Esimerkkejä 90-luvulta

2000-lukua

Esimerkkejä 2000-luvulta

Esimerkkejä 2000-luvulta

Mitä tietoja konenäkö vaatii?

Konenäön esitiedot

Konenäön esitiedot

Kurssin rakenne

Viikkoaikataulu

Klo. Ma Ti Ke To Pe
8-10 - - - - -
10-12 Luku & puuha- tuokio - - - Tutoriaali
14-16 - - - - Kotitenttien palautus
16-20 - - - - -

Viikkoaikataulu

t/vko viikkoja yht.
Lukutuokiot 2 8 16
Tutoriaalit 2 9 18
Kotitentti + kirja 5 8 40
Harjoitustyö (kotona) 7 5 35
9-16 9 109h = 4op

Kurssin suoritus

Suositeltu tapa

Ei niin suositeltu tapa

Kurssin arvostelu, vaihtoehto 1

Pts Arvosana
16 1
18 2
21 3
24 4
28 5

Kurssin arvostelu, vaihtoehto 2

Harjoitustyöt

Lyhyesti:

Harjoitustyöt

Case 1. SYKE, Mikroskopianäytteet

Chironomus-toukan hammasrivistö

Chironomus-toukan hammasrivistö

Palkallinen gradu kesällä 2012

Harjoitustyöt

Case 2. SYKE, Lohivideot

Lohi

Lohi

Palkallinen gradu kesällä 2012

Harjoitustyöt

Case 3. Liikuntatieteiden laitos, liikuntamäärämittaus

Paljonko tässä juostaan?

Paljonko tässä juostaan?

Harjoitustyöt

Case 4. Tietotekniikan laitos, Spektrikuvamosaiikki

Miten tämä tehdään automaattisesti

Miten tämä tehdään automaattisesti

Mahdollisesti palkallinen gradu kesällä 2012

Harjoitustyöt

Case 5. Kirjainten tunnistus

Onko kuvassa tekstiä? Missä kohdassa? Mitä tekstiä?

Mitä tekstiä kuvassa on?

Mitä tekstiä kuvassa on?

Ryhmät

Kurssin ohjelmistot

Pääasialliset demonstraatiotyökalut

Webbityökalut

Miksi Haskell?

Syntaksi

vs.

-- Haskell esim. 1.
k (x,y) | l1norm (x-y) < 50 = 1
	| otherwise	    = 0

Miksi Haskell?

Syntaksi

vs.

-- Haskell esim. 2.
t f (x,y) | f(x,y) > 0.5 = 1
  	  | otherwise  = f(x,y)

Miksi Haskell?

Kuvankäsittelyesimerkki

Herra Fourier

Herra Fourier

Miksi Haskell

Kuvankäsittelyesimerkki

Test

import WebTools
import CV.Pixelwise

-- Haskell esim. 3.
main = webG "testikuva" "images/FourierSmall.jpg" (remapImage t)
t f (x,y) | f(x,y) > 0.5 = 1
  	  | otherwise  = f(x,y)

Miksi Haskell

Komentotulkkiesimerkki

Komentotulkkiesimerkki

Komentotulkkiesimerkki

awgre:kurssi2012(master) aleator$ ghci
GHCi, version 7.4.1: http://www.haskell.org/ghc/  :? for help
Prelude> import CV.Filters
Prelude CV.Filters> import CV.Image
Prelude CV.Filters CV.Image> Just x <- loadImage "images/FourierSmall.jpg" 
Prelude CV.Filters CV.Image> let result = gaussian (13,13) x
Prelude CV.Filters CV.Image> saveImage "tulos.png" result
Prelude CV.Filters CV.Image> ^d

Miksi Haskell

Käyttöliittymäesimerkki

{-#LANGUAGE DeriveGeneric, RecordWildCards#-}
module Main where
import Graphics.Tools.DefaultGUI
import CV.Image
import CV.Filters
import CV.ImageMath as IM

data Parameters = P {threshold :: Bool
                    ,t :: DoubleRange Zero One
                    ,mat :: ConvolutionMask Five Five } deriving (Generic)

instance Default Parameters
instance Persist Parameters
instance Tangible Parameters

main :: IO ()
main = defaultGUI "ParametriTiedosto" "rectangle_5.png" experiment

experiment :: Parameters -> Image GrayScale D32 -> [PaintableBox]
experiment P{..} image = [PB result, PB conv]
 where
  conv = convolve2D (value mat) (2::Int,2::Int) image
  result | threshold  = unsafeImageTo32F (IM.moreThan (realToFrac (value t)) conv)
         | otherwise  = conv

Miksi Haskell

Käyttöliittymäesimerkki

GraphicsTools GUI

GraphicsTools GUI

Miksi Haskell?

Yhteenvetona

Kurssin ohjelmistot on valittu VÄÄRIN! Pitäisi olla..

HUOM:

Vaihtoehtoja:

Saako ne edes asennettua?

Empiirisesti ottaen.. Tässä on yksi syy miksi aloitussessio on niin pitkä..

(oikea) Linux

GHC, OpenCV

CV ja Graphicstools

Hakyll

Mikroluokan linuks

GHC, OpenCV

CV ja Graphicstools

Hakyll

OS X

GHC

OpenCV

CV

GraphicsTools

Hakyll

Mikroluokan OS X

Anna vain olla. Niin teki IT-tukikin kahden päivän jälkeen.

Windows

GHC

OpenCV

CV

GraphicsTools

Voihan Murmutus

Olemme myös harmissamme hankaluudesta, mutta

Katsotaan ne asennusongelmat nyt..

Kalvosarja loppuu tähän