Top Banner
Computer Vision I - Algorithms and Applications: Introduction Carsten Rother Computer Vision I:Introduction 22/10/2013
102

Computer Vision I - Algorithms and Applications: Introduction

Feb 03, 2022

Download

Documents

dariahiddleston
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: Computer Vision I - Algorithms and Applications: Introduction

Computer Vision I -Algorithms and Applications:

Introduction

Carsten Rother

Computer Vision I:Introduction

22/10/2013

Page 2: Computer Vision I - Algorithms and Applications: Introduction

Admin Stuff• Language: German/English; Slides: English

(all the terminology and books are in English)

• Lecturer: Carsten Rother

• Exercises: Dmitri Schlesinger

• Staff Email: [email protected]

• Announcements: online (to be set up)

• Course Books: • Main: Computer Vision: Algorithms and Applications

by Rick Szeliski; Springer 2011. An earlier version of the book is online: http://szeliski.org/Book/

• Secondary: Multiple View Geometry; Hartley and Zisserman; Cambridge Press 2004. Second edition. Parts of book are online: http://www.robots.ox.ac.uk/~vgg/hzbook/

• Also pointers to conference and journal articles

22/10/2013Computer Vision I: Introduction 2

Page 3: Computer Vision I - Algorithms and Applications: Introduction

Course Overview (total 14 lectures)

VL1 (21.10): IntroductionEx1: Intro to OpenCV (H.Heidrich)

VL2 (28.10): Basics of Digital Image ProcessingEx2: Fast Methods for Filtering; explain home work

VL3 (4.11): Image Formation Models Ex3: homework

VL4 (11.11): Single View Geometry and Camera Calibration Ex4: homework

VL5 (18.11): Feature Extraction and Matching Ex5: homework

VL6 (25.11): Two View Geometry Ex6: Robust Panoramic Stitching; explain home work

VL7 (2.12): 3D reconstruction from multiple views Ex7: homework

22/10/2013Computer Vision I: Introduction 3

Page 4: Computer Vision I - Algorithms and Applications: Introduction

Course Overview (total 14 lectures)

VL8 (9.12): Dense Motion EstimationEx1: homework

VL9 (16.12): Image SegmentationEx2: homework

VL10 (6.1): Object Recognition (in progress) Ex3: Object Recognition; explain homework

VL11 (13.1): Part-based recognition (in progress) Ex4: homework

VL12 (20.1): Model-based Vision (in progress)Ex5: homework

VL13 (27.1): Having Fun with Images (in progress) Ex6: homework

VL14(3.2): Wrap-Up: 100 things we have learned (in progress) Ex5: homework

22/10/2013Computer Vision I: Introduction 4

Page 5: Computer Vision I - Algorithms and Applications: Introduction

Related Lectures

• Machine Learning (D. Schlesinger) WS 13/14 (2/2/0)

• Basics on machine learning from data (not neccesrily image)

• Computer Vision 2: Models, Inference and Learning SS 14 (4/2/0)

• Requirement: ML WS 13/14 and CV WS 13/14

• Goes mathematically deeper

• For doing a Thesis/PhD in the CVLD all three classes are compulsory

• Computer graphics (Prof. Gumhold) (Introduction, I, II) 3D Scanning with structured light; Illumination models; Geometry

22/10/2013Computer Vision I: Introduction 5

Page 6: Computer Vision I - Algorithms and Applications: Introduction

Exams and Exercises• Exam: in person (maybe written exams in future)

• Exercises/homework: • There are 3 blocks• Each block has several excersises with different points• You have to collect in total 10 points to sit the exam• The exercises have to be handed in until end of semester (ideally

after each block)• Last possible date to hand in is end of semester (end of January)

• Collaboration:• You are encouraged to discuss the topics • You are not allowed to copy any code for the homework from other

people

22/10/2013Computer Vision I: Introduction 6

Page 7: Computer Vision I - Algorithms and Applications: Introduction

Before we start … some AdvertisementCVLD Overview

Interactive Image and Data manipulation

Applied Optimization, Models, and Learning

3D Scene Understanding

Inverse rendering from moving images

Benchmarking and Label collection

Image Analysis for System Biology

22/10/2013Computer Vision I: Introduction 7

Page 8: Computer Vision I - Algorithms and Applications: Introduction

Advertisement – Master/Bachelor/Project/…

• We have a lot of different topics to offer: ranging from theoretical to practical ones

• Main emphasis:

• 3D Image Editing

• 3D Scene understanding

• Learning and Inference in undirected Graphical models

• A list of topics will be available soon on: http://www.inf.tu-dresden.de/index.php?node_id=1864&ln=en

22/10/2013Computer Vision I: Introduction 8

Page 9: Computer Vision I - Algorithms and Applications: Introduction

Advertisement – Master/Bachelor/Project/…

A project work in the CVLD is a good stepping stone if you:

• want to do a PhD in computer vision, graphics, machine learning

• want to become a researcher or software developer in one of the big research labs (Microsoft Research, Google, Adobe, TechniColor, etc)

• If you are interested in doing a start-up

• Other “computer vision related” industry

• Example: Master Thesis on “Video Matting” jointly with Adobe Seattle (e.g. for Adobe Adobe After Effects)

22/10/2013Computer Vision I: Introduction 9

Page 10: Computer Vision I - Algorithms and Applications: Introduction

Advertisement: Komplex Praktikum; Einfuehrungspraktikum

• Komplex Praktikum:

• Segmentation in 3D images (3D Image Editing)

• real-time Pose estimation (3D scene understanding)

• Einfuerhungspraktium: 6 Exercises to get to know Computer Vision (ranging from physics based vision to semantic vision)

22/10/2013Computer Vision I: Introduction 10

Page 11: Computer Vision I - Algorithms and Applications: Introduction

Before we start….

• Please give Feedback – during the lecture, after the lecture or via email

• This my first full course I give at University

• Feedback helps me to adjust the level.

22/10/2013Computer Vision I: Introduction 11

Page 12: Computer Vision I - Algorithms and Applications: Introduction

Introduction to Computer Vision

What is computer Vision?

22/10/2013Computer Vision I: Introduction 12

(Potential) Definition:Developing computational models and algorithmsto interpret digital images and visual data in order to understand the visual world we live in.

Page 13: Computer Vision I - Algorithms and Applications: Introduction

Introduction to Computer Vision

What is computer Vision?

22/10/2013Computer Vision I: Introduction 13

(Potential) Definition:Developing computational models and algorithmsto interpret digital images and visual data in order to understand the visual world we live in.

Page 14: Computer Vision I - Algorithms and Applications: Introduction

What does it mean to “understand”?

22/10/2013Computer Vision I: Introduction 14

Physics-based vision: Geometry SegmentationCamera parametersEmitted light (sun)Surface properties: Reflectance, material

Semantic-based vision:Objects: class, poseScene: outdoor,…Attributes/Properties:

- old-fashioned train - A-on-top-of-B

(Potential) Definition:

Developing computational models and algorithms to interpret digital images and visual data in order to understand the visual world we live in.

Page 15: Computer Vision I - Algorithms and Applications: Introduction

Image-formation model

22/10/2013Computer Vision I: Introduction 15

[Slide Credits: John Winn, ICML 2008]

Image

Very many

sources of

variability

Page 16: Computer Vision I - Algorithms and Applications: Introduction

Image-formation model

22/10/2013Computer Vision I: Introduction 16

[Slide Credits: John Winn, ICML 2008]

Scene type

Scene geometry

Street scene

Page 17: Computer Vision I - Algorithms and Applications: Introduction

Image-formation model

22/10/2013Computer Vision I: Introduction 17

[Slide Credits: John Winn, ICML 2008]

Scene type

Scene geometry

Object classes

Street scene

Sky

Building×3

Road

Sidewalk

Tree×3

Person×4

Bicycle

Car×5

Bench

Bollard

Page 18: Computer Vision I - Algorithms and Applications: Introduction

Image-formation model

22/10/2013Computer Vision I: Introduction 18

[Slide Credits: John Winn, ICML 2008]

Street scene

Sky

Building×3

Road

Sidewalk

Tree×3

Person×4

Bicycle

Car×5

Bench

Bollard

Scene type

Scene geometry

Object classes

Object position

Object orientation

Page 19: Computer Vision I - Algorithms and Applications: Introduction

Image-formation model

22/10/2013Computer Vision I: Introduction 19

[Slide Credits: John Winn, ICML 2008]

Scene type

Scene geometry

Object classes

Object position

Object orientation

Scene type

Scene geometry

Object classes

Object position

Object orientation

Object shape

Street scene

Page 20: Computer Vision I - Algorithms and Applications: Introduction

Image-formation model

22/10/2013Computer Vision I: Introduction 20

[Slide Credits: John Winn, ICML 2008]

Scene type

Scene geometry

Object classes

Object position

Object orientation

Object shape

Scene type

Scene geometry

Object classes

Object position

Object orientation

Object shape

Depth/occlusions

Page 21: Computer Vision I - Algorithms and Applications: Introduction

Image-formation model

22/10/2013Computer Vision I: Introduction 21

[Slide Credits: John Winn, ICML 2008]

Scene type

Scene geometry

Object classes

Object position

Object orientation

Object shape

Depth/occlusions

Scene type

Scene geometry

Object classes

Object position

Object orientation

Object shape

Depth/occlusions

Object appearance

Page 22: Computer Vision I - Algorithms and Applications: Introduction

Image-formation model

22/10/2013Computer Vision I: Introduction 22

[Slide Credits: John Winn, ICML 2008]

Scene type

Scene geometry

Object classes

Object position

Object orientation

Object shape

Depth/occlusions

Object appearance

Scene type

Scene geometry

Object classes

Object position

Object orientation

Object shape

Depth/occlusions

Object appearance

Illumination

Shadows

Page 23: Computer Vision I - Algorithms and Applications: Introduction

Image-formation model

22/10/2013Computer Vision I: Introduction 23

[Slide Credits: John Winn, ICML 2008]

Scene type

Scene geometry

Object classes

Object position

Object orientation

Object shape

Depth/occlusions

Object appearance

Illumination

Shadows

Page 24: Computer Vision I - Algorithms and Applications: Introduction

Image-formation model

22/10/2013Computer Vision I: Introduction 24

[Slide Credits: John Winn, ICML 2008]

Scene type

Scene geometry

Object classes

Object position

Object orientation

Object shape

Depth/occlusions

Object appearance

Illumination

Shadows

Motion blur

Camera effects

Page 25: Computer Vision I - Algorithms and Applications: Introduction

Image-formation model

22/10/2013Computer Vision I: Introduction 25

[Slide Credits: John Winn, ICML 2008]

Scene type

Scene geometry

Object classes

Object position

Object orientation

Object shape

Depth/occlusions

Object appearance

Illumination

Shadows

Motion blur

Camera effects

Page 26: Computer Vision I - Algorithms and Applications: Introduction

The “Scene Parsing” challenge ---a “grand challenge” of computer vision

22/10/2013Computer Vision I: Introduction 26

(Probabilistic) Script = {Camera, Light, Geometry, Material, Objects, Scene, Attributes, Others}

Many applications do not have to extract the full probabilistic script but only a subset, e.g. “does the image contain a car?”

… many examples to come later

Single image

Page 27: Computer Vision I - Algorithms and Applications: Introduction

Why is “scene parsing” hard?

22/10/2013Computer Vision I: Introduction 27

Computer Vision

Computer Graphics

3D Rich Representation,

2D pixel representation

Computer Vision can be seen as “inverse graphics”

Script = {Camera, Light, Geometry, Material, Objects, Scene, Attributes, Others}

Page 28: Computer Vision I - Algorithms and Applications: Introduction

Example of a recent work

22/10/2013Computer Vision I: Introduction 28

Input

Scen

e gr

aph

[Gupta, Efros, Herbert, ECCV ‘10]

Page 29: Computer Vision I - Algorithms and Applications: Introduction

Why is “scene parsing” hard?

22/10/2013Computer Vision I: Introduction 29

[Sussman, Lamport, Guzman 1966]

[Slide credits Andrew Blake]

[Xiao et al. NIPS 2012]

Page 30: Computer Vision I - Algorithms and Applications: Introduction

Introduction to Computer Vision

What is computer Vision?

22/10/2013Computer Vision I: Introduction 30

(Potential) Definition:Developing computational models and algorithmsto interpret digital images and visual data in order to understand the visual world we live in.

Page 31: Computer Vision I - Algorithms and Applications: Introduction

How can we interpret visual data?

22/10/2013Computer Vision I: Introduction 31

• What general (prior) knowledge of the world (not necessarily visual) can be exploit?

• What properties / cues from the image can be used?

2D pixel representation

3D Rich Representation,

Both aspects are quite well understood (a lot is based on physics) … but how to use them is efficiently is open challenged (see later)

Computer Graphics

Computer Vision

Script = {Camera, Light, Geometry, Material, Objects, Scene, Attributes, Others}

Page 32: Computer Vision I - Algorithms and Applications: Introduction

How can we interpret visual data?

22/10/2013Computer Vision I: Introduction 32

• What general (prior) knowledge of the world (not necessarily visual) can be exploit?

• What properties / cues from the image can be used?

2D pixel representation

3D Rich Representation,

Both aspects are quite well understood (a lot is based on physics) … but how to use them is efficiently is open challenged (see later)

Computer Graphics

Computer Vision

Script = {Camera, Light, Geometry, Material, Objects, Scene, Attributes, Others}

Page 33: Computer Vision I - Algorithms and Applications: Introduction

Prior knowledge (examples)

• “Hard” prior knowledge

• Trains do not fly in the air

• Objects are connected in 3D

• “Soft” prior knowledge:

• The camera is more likely 1.70m above ground and not 0.1m.

• Self-similarity: “all black pixels belong to the same object”

22/10/2013Computer Vision I: Introduction 33

Page 34: Computer Vision I - Algorithms and Applications: Introduction

Prior knowledge – harder to describe

• Describe Image Texture

• Microscopic Images. What is the true shape of these objects

22/10/2013Computer Vision I: Introduction 34

Not a real Image zoomReal Image zoom

Page 35: Computer Vision I - Algorithms and Applications: Introduction

22/10/2013Computer Vision I: Introduction 35

Dust on LensGround truth “Perceptual Error “normal Error”

Example: State-of-the Art Denoising

[Janscary, Nowozin, Rother, ECCV 12]

Page 36: Computer Vision I - Algorithms and Applications: Introduction

The importance of Prior knowledge

22/10/2013Computer Vision I: Introduction 36

[Edward Adelson]

Which patch is brighter: A or B?

Page 37: Computer Vision I - Algorithms and Applications: Introduction

The importance of Prior knowledge

22/10/2013Computer Vision I: Introduction 37

[Edward Adelson]

Which patch is brighter: A or B?

Page 38: Computer Vision I - Algorithms and Applications: Introduction

The importance of Prior knowledge

22/10/2013Computer Vision I: Introduction 38

Direct Light

The most likely3D representation

2D Image - local

What the computer sees

This is what humans see implicitly. Ideally the computer sees the sane.

True coloursIn 3D world

A

B

A

B

Ambient Light

An unlikely 3D representation

(hard to see for a human)

2D 3D 3D

True colorsin 3D world

A

B

Page 39: Computer Vision I - Algorithms and Applications: Introduction

The importance of Prior knowledge

22/10/2013Computer Vision I: Introduction 39

2D Image

Light

3D representation

Humans see an image not as a set of 2D pixels. They understand an image as a projection of the 3D world we live in

Humans have the prior knowledge about the world encoded, such as:• Light cast shadows• Objects do not fly in the air• A car is likely to move but a table is unlikely to move

We have to teach the computer this prior knowledge to understand 2D images as picture of the 3D world

Page 40: Computer Vision I - Algorithms and Applications: Introduction

The importance of Prior knowledge

22/10/2013Computer Vision I: Introduction 40

Which monster is bigger?

Page 41: Computer Vision I - Algorithms and Applications: Introduction

The importance of Prior knowledge

22/10/2013Computer Vision I: Introduction 41

Which monster is bigger?

In the 2D Image

In the 3D world (true)

1meter 2meter

Page 42: Computer Vision I - Algorithms and Applications: Introduction

22/10/2013Computer Vision I: Introduction 42

Two Explanations:a) People are different height and room right shapeb) People are same height but room weirdly shaped

Page 43: Computer Vision I - Algorithms and Applications: Introduction

Human Vision can be fooled

22/10/2013Computer Vision I: Introduction 43

Page 44: Computer Vision I - Algorithms and Applications: Introduction

Male or Female

22/10/2013Computer Vision I: Introduction 44

Page 45: Computer Vision I - Algorithms and Applications: Introduction

How can we interpret visual data?

22/10/2013Computer Vision I: Introduction 45

• What general (prior) knowledge of the world (not necessarily visual) can be exploit?

• What properties / cues from the image can be used?

2D pixel representation

3D Rich Representation,

Both aspects are quite well understood (a lot is based on physics) … but how to use them is efficiently is open challenged (see later)

Computer Graphics

Computer Vision

Script = {Camera, Light, Geometry, Material, Objects, Scene, Attributes, Others}

Page 46: Computer Vision I - Algorithms and Applications: Introduction

Cue: Appearance (Colour, Texture) for object recognition

22/10/2013Computer Vision I: Introduction 46

To what object does the patch belong to ?

Page 47: Computer Vision I - Algorithms and Applications: Introduction

Cue: Outlines (shape) for object recognition

22/10/2013Computer Vision I: Introduction 47

Page 48: Computer Vision I - Algorithms and Applications: Introduction

Guess the Object

22/10/2013Computer Vision I: Introduction 48

Colour

Texture Shape

[from JohnWinn ICML 2008]

Page 49: Computer Vision I - Algorithms and Applications: Introduction

Guess the ob ject

22/10/2013Computer Vision I: Introduction 49

? Colour

Texture Shape

[from JohnWinn ICML 2008]

Page 50: Computer Vision I - Algorithms and Applications: Introduction

Cue: Context for object recognition

22/10/2013Computer Vision I: Introduction 50

Page 51: Computer Vision I - Algorithms and Applications: Introduction

Cue: Context for object recognition

22/10/2013Computer Vision I: Introduction 51

Page 52: Computer Vision I - Algorithms and Applications: Introduction

Cue: stereo vision (2 frames) for geometry estimation

22/10/2013Computer Vision I: Introduction 52

Ground truth Algorithmic output

Page 53: Computer Vision I - Algorithms and Applications: Introduction

Cue: Multiple Frames for geometry estimation

22/10/2013Computer Vision I: Introduction 53

Page 54: Computer Vision I - Algorithms and Applications: Introduction

Cue: Convergence for geometry estimation

22/10/2013Computer Vision I: Introduction 54

vp

Lines with same vanishing point may also be parallel in 3D

Page 55: Computer Vision I - Algorithms and Applications: Introduction

Cue: Shading & shadows for geometry and Light estimation

22/10/2013Computer Vision I: Introduction 55

Page 56: Computer Vision I - Algorithms and Applications: Introduction

Texture gradient for geometry estimation

22/10/2013Computer Vision I: Introduction 56

Page 57: Computer Vision I - Algorithms and Applications: Introduction

The “Scene Parsing” challenge ---a “grand challenge” of computer vision

22/10/2013Computer Vision I: Introduction 57

(Probabilistic) Script = {Camera, Light, Geometry, Material, Objects, Scene, Attributes, Others}

Many applications do not have to extract the full probabilistic script but only a subset, e.g. “does the image contain a car?”

… many examples to come later

Single image

Page 58: Computer Vision I - Algorithms and Applications: Introduction

… many application scenarios are in reach To simplify the problem:

1) Richer Input:- Modern sensing technology- Moving images- User involvement

2) Rich Data to learn from:

- use the web

- crowdsourcing to get labels(online games, mechanical turk)

- Powerful graphics engines

3) For many practical applications:We do not have to infer the full probabilistic script

22/10/2013Computer Vision I: Introduction 58

Page 59: Computer Vision I - Algorithms and Applications: Introduction

Kinect has simplified (revolutionized) computer vision

22/10/2013Computer Vision I: Introduction 59

[Izadi et al. ´11]

Page 60: Computer Vision I - Algorithms and Applications: Introduction

Animate the world

22/10/2013Computer Vision I: Introduction 60

[Chen et al. UIST ‘12]

Page 61: Computer Vision I - Algorithms and Applications: Introduction

New hardware design …

22/10/2013Computer Vision I: Introduction 61

Page 62: Computer Vision I - Algorithms and Applications: Introduction

Kinect Body Pose estimation and tracking

22/10/2013Computer Vision I: Introduction 62

Page 63: Computer Vision I - Algorithms and Applications: Introduction

Kinect Body Pose estimation and tracking

22/10/2013Computer Vision I: Introduction 63

Page 64: Computer Vision I - Algorithms and Applications: Introduction

behind the scene …

22/10/2013Computer Vision I: Introduction 64

Graphics simulation

Synthetic (graphics) Real (hand-labelled)

Page 65: Computer Vision I - Algorithms and Applications: Introduction

Body tracking and Gesture Recognition has many applications

22/10/2013Computer Vision I: Introduction 65

Very large impact in many field: Gaming, Robotics, HCI, Medicine, …

StartUp 2012: Try Fashion online

Page 66: Computer Vision I - Algorithms and Applications: Introduction

Real-time pedestrian detection

22/10/2013Computer Vision I: Introduction 66

Page 67: Computer Vision I - Algorithms and Applications: Introduction

Real-time Face recognition

22/10/2013Computer Vision I: Introduction 67

e.g. Canon powershot

Page 68: Computer Vision I - Algorithms and Applications: Introduction

General Object recognition & segmentation

22/10/2013Computer Vision I: Introduction 68

[TextonBoost; Shotton et al, ‘06]

Good results …

Page 69: Computer Vision I - Algorithms and Applications: Introduction

General Object recognition & segmentation

22/10/2013Computer Vision I: Introduction 69

[TextonBoost; Shotton et al, ‘06]

Failure cases…

Page 70: Computer Vision I - Algorithms and Applications: Introduction

Image Search

22/10/2013Computer Vision I: Introduction 70

Page 71: Computer Vision I - Algorithms and Applications: Introduction

Start-Up Company: Like.com

22/10/2013Computer Vision I: Introduction 71

Page 72: Computer Vision I - Algorithms and Applications: Introduction

Interactive Image manipulation

22/10/2013Computer Vision I: Introduction 72

[Agrawal et al ’04]

Page 73: Computer Vision I - Algorithms and Applications: Introduction

Interactive Image manipulation

22/10/2013Computer Vision I: Introduction 73

Page 74: Computer Vision I - Algorithms and Applications: Introduction

Image manipulation - stitching

22/10/2013Computer Vision I: Introduction 74

Page 75: Computer Vision I - Algorithms and Applications: Introduction

Image manipulation - stitching

22/10/2013Computer Vision I: Introduction 75

Page 76: Computer Vision I - Algorithms and Applications: Introduction

Video manipulation

22/10/2013Computer Vision I: Introduction 76

Video

Video (duplicated)

Page 77: Computer Vision I - Algorithms and Applications: Introduction

Image de-convolution

22/10/2013Computer Vision I: Introduction 77

Input Output Output –kernel

[Schmidt, Rother, Nowozin, Jancsary, Roth 2013] Best Student Paper award

Page 78: Computer Vision I - Algorithms and Applications: Introduction

Image de-convolution (other domains)

22/10/2013Computer Vision I: Introduction 78

input output

Page 79: Computer Vision I - Algorithms and Applications: Introduction

Video Editing

22/10/2013Computer Vision I: Introduction 79

[Rav-Acha et al. ‘08]

Page 80: Computer Vision I - Algorithms and Applications: Introduction

Automatic Video Summary (StartUp: Magisto)

22/10/2013Computer Vision I: Introduction 80

Page 81: Computer Vision I - Algorithms and Applications: Introduction

Automatic Photo Summary - Commercial

22/10/2013Computer Vision I: Introduction 81

AutoCollage 2008 - Microsoft Research [Rother et al. Siggraph 2006]

Page 82: Computer Vision I - Algorithms and Applications: Introduction

Movie Industry

22/10/2013Computer Vision I: Introduction 82

Pirates of the Caribbean, Industrial Light and Magic

Page 83: Computer Vision I - Algorithms and Applications: Introduction

Medicine and Biology

22/10/2013Computer Vision I: Introduction 83

<todo>

Page 84: Computer Vision I - Algorithms and Applications: Introduction

Robotics

22/10/2013Computer Vision I: Introduction 84

Robocup

Nasa Mars exploration

Page 85: Computer Vision I - Algorithms and Applications: Introduction

Introduction to Computer Vision

What is computer Vision?

22/10/2013Computer Vision I: Introduction 85

(Potential) Definition:Developing computational models and algorithmsto interpret digital images and visual data in order to understand the visual world we live in.

Page 86: Computer Vision I - Algorithms and Applications: Introduction

Interactive Segmentation

22/10/2013Computer Vision I: Introduction 86

Page 87: Computer Vision I - Algorithms and Applications: Introduction

Model versus Algorithm

22/10/2013Computer Vision I: Introduction 87

Goal

Given z; derive binary x:

Algorithm to minimization: 𝒙∗ = 𝑎𝑟𝑔𝑚𝑖𝑛𝑥 𝐸(𝒙)

(user-specified pixels are not optimized for)𝒛 = 𝑅, 𝐺, 𝐵 𝑛 x= 0,1 𝑛

Model: Energy function 𝑬 𝒙 (implicitly models a statistical model 𝑷(𝒙|𝒛) )

Example: Interactive Segmentation

Page 88: Computer Vision I - Algorithms and Applications: Introduction

Model for a starfish

22/10/2013Computer Vision I: Introduction 88

Goal: formulate 𝑬(𝒙) such that

Optimal solution 𝒙∗ = 𝑎𝑟𝑔𝑚𝑖𝑛𝑥 𝐸(𝒙)

𝑬 𝒙 = 0.01 𝑬 𝒙 = 0.05 𝑬 𝒙 = 0.05 𝑬 𝒙 = 0.1

Page 89: Computer Vision I - Algorithms and Applications: Introduction

How does the energy looks like?

22/10/2013Computer Vision I: Introduction 89

Unary terms Pairwise terms

Energy function (sum of terms 𝜃):

𝑬(𝒙) =

𝑖

𝜃𝑖 𝑥𝑖 +

𝑖,𝑗

𝜃𝑖𝑗(𝑥𝑖 , 𝑥𝑗)

Page 90: Computer Vision I - Algorithms and Applications: Introduction

How does the energy looks like?

22/10/2013Computer Vision I: Introduction 90

Visualization: Undirected graphical models

𝜃𝑖𝑗(𝑥𝑖 , 𝑥𝑗)

“pairwise terms”

𝑥𝑗

𝜃𝑖(𝑥𝑖)“unary terms”

𝑥𝑖

Page 91: Computer Vision I - Algorithms and Applications: Introduction

Unary term

22/10/2013Computer Vision I: Introduction 91

Red

Gre

en

Red

Gre

en

User labelled pixels Gaussian Mixture Model Fit

Page 92: Computer Vision I - Algorithms and Applications: Introduction

Unary term

22/10/2013Computer Vision I: Introduction 92

Optimum with unary terms onlyDark means likely

backgroundDark means likely

foreground

𝜃𝑖(𝑥𝑖 = 0)𝜃𝑖(𝑥𝑖 = 1)

New query image 𝑧𝑖

Page 93: Computer Vision I - Algorithms and Applications: Introduction

Pairwise term

22/10/2013Computer Vision I: Introduction 93

Most likely Most likely Intermediate likely

“Ising Prior”

most unlikely

This models the assumption that the object is spatially coherentNext step could be: model shapes of starfishes

𝜃𝑖𝑗 𝑥𝑖 , 𝑥𝑗 = |𝑥𝑖 − 𝑥𝑗|

When is 𝜃𝑖𝑗(𝑥𝑖 , 𝑥𝑗) small, i.e. likely configuration ?

Page 94: Computer Vision I - Algorithms and Applications: Introduction

Energy minimization (optimization)

22/10/2013Computer Vision I: Introduction 94

𝝎 = 10𝝎 = 0

𝝎 = 200𝝎 = 40

𝑬(𝒙) =

𝑖

𝜃𝑖 𝑥𝑖 +

𝜔

𝑖,𝑗

|𝑥𝑖 − 𝑥𝑗|

Page 95: Computer Vision I - Algorithms and Applications: Introduction

The key Questions• What type of modelling language should be chosen:

undirected or directed discrete Graphical models, Continuous-Domain models

• How does the exact model look like:• What is the structure• How do the terms look like

• Can we learn the Model from Data:• Learn structure• Learn potential functions

• How do we optimize the model (perform inference): • fast, approximate• Exactly solvable?• NP-hard?

22/10/2013Computer Vision I: Introduction 95

This is the focus of the course (SS 14): Computer Vision II: Models, Inference and Learning

This lecture: mainly about algorithms (optimization)

Page 96: Computer Vision I - Algorithms and Applications: Introduction

Another Example: Model versus Algorithm

22/10/2013Computer Vision I: Introduction 96

[Data courtesy from Oliver Woodford]

Model: Minimize a binary 4-connected pair-wise graph (choose a colour-mode at each pixel)

Input: Image sequence

Output: New view

[Fitzgibbon et al. ‘03]

Page 97: Computer Vision I - Algorithms and Applications: Introduction

Another Example: Model versus Algorithm

22/10/2013Computer Vision I: Introduction 97

Belief Propagation ICM, Simulated Annealing

Ground Truth Graph Cut with truncation [Rother et al. ‘05]

Why is the result not perfect? Model or Optimization

(approximate solution) (exact solution)

QPBOP [Boros et al. ’06;Rother et al. ‘07](approximate solution)

(approximate solution)

Page 98: Computer Vision I - Algorithms and Applications: Introduction

Why is computer vision interesting (to you)?

• It is a challenging problem that is far from being solved

• It combines insights and tools from many fields and disciplines:

• Mathematics and statistics

• Cognition and perception

• Engineering (signal processing)

• And of course, computer science

22/10/2013Computer Vision I: Introduction 98

Page 99: Computer Vision I - Algorithms and Applications: Introduction

Why is computer vision interesting (to you)?

• Allows you to apply theoretical skills

... that you may otherwise only use rarely.

• Quite rewarding:

• Often visually intuitive and encouraging results.

• It is a growing field:

• Cameras are becoming more and more popular

• There are a lot of companies (big, small, startups) working in vision

• Conferences are growing rapidly.

22/10/2013Computer Vision I: Introduction 99

Page 100: Computer Vision I - Algorithms and Applications: Introduction

Relationship to other fields

22/10/2013Computer Vision I: Introduction 100

[Wikipedia]

Page 101: Computer Vision I - Algorithms and Applications: Introduction

Relationship to other fields – my personal view

22/10/2013Computer Vision I: Introduction 101

Biology Robotics

AI

(many more)

Human-Computer Interaction

Applications

Medicine

Computer Vision

Page 102: Computer Vision I - Algorithms and Applications: Introduction

Reading for next class

This lecture: Chapter 1 (in particular: 1.1)

Next lecture:

• Chapter 3 (in particular: 3.2, 3.3) - Basics of Digital Image Processing

• Chapter 4.2 and 4.3 - Edge and Line detection

22/10/2013Computer Vision I: Introduction 102