56
A.a. 2007/2008 Elaborazione dell’immagine LS Elementi di registrazione delle immagini Ing. Pietro Azzari

A.a. 2007/2008 Elaborazione dell’immagine LSunina.stidue.net/Elaborazione di Segnali Multimediali/Materiale... · Rilevamento del moto, riconoscimento di oggetti, ricostruzione

  • Upload
    hanhan

  • View
    224

  • Download
    0

Embed Size (px)

Citation preview

Page 1: A.a. 2007/2008 Elaborazione dell’immagine LSunina.stidue.net/Elaborazione di Segnali Multimediali/Materiale... · Rilevamento del moto, riconoscimento di oggetti, ricostruzione

A.a. 2007/2008Elaborazione dell’immagine LS

Elementi di registrazione delle immagini

Ing. Pietro Azzari

Page 2: A.a. 2007/2008 Elaborazione dell’immagine LSunina.stidue.net/Elaborazione di Segnali Multimediali/Materiale... · Rilevamento del moto, riconoscimento di oggetti, ricostruzione

Elaborazione dell’immagine LS Pietro Azzari, Luigi Di Stefano

Sommario

• Introduzione • Individuazione delle corrispondenze• Determinazione della relazione spaziale

– Individuazione del modello geometrico– Stima robusta dei parametri

• Rimappatura delle immagini (warping)• Progetto

Page 3: A.a. 2007/2008 Elaborazione dell’immagine LSunina.stidue.net/Elaborazione di Segnali Multimediali/Materiale... · Rilevamento del moto, riconoscimento di oggetti, ricostruzione

Elaborazione dell’immagine LS Pietro Azzari, Luigi Di Stefano

Cosa significa registrareDefinizione: allineamento/normalizzazione di caratteristiche comuni di entità

omogenee osservate in condizioni differenti.Scopo: confronto di entità, composizione di informazioni di diverse entità.

Misura del peso di una popolazioneCaratteristiche: pesoCondizioni: accelerazione di gravità diverse

Graduatoria, peso medio della popolazione

Registrazione di un insieme di immaginiCaratteristiche: soggetto inquadratoCondizioni: inquadratura, esposizione, istante degli scatti, …Rilevamento del moto, riconoscimento di oggetti, ricostruzione 3D

gtpt

glpl

tt l

l

gp pg

′ = Registrazione dei pesi

Page 4: A.a. 2007/2008 Elaborazione dell’immagine LSunina.stidue.net/Elaborazione di Segnali Multimediali/Materiale... · Rilevamento del moto, riconoscimento di oggetti, ricostruzione

Elaborazione dell’immagine LS Pietro Azzari, Luigi Di Stefano

Stesso soggetto, diversa apparenza

Page 5: A.a. 2007/2008 Elaborazione dell’immagine LSunina.stidue.net/Elaborazione di Segnali Multimediali/Materiale... · Rilevamento del moto, riconoscimento di oggetti, ricostruzione

Elaborazione dell’immagine LS Pietro Azzari, Luigi Di Stefano

Diversificazione dell’apparenzaParametri intrinseci (zoom, risoluzione)

Livello di esposizione (otturatore, apertura)

Parametri estrinseci (posizione, orientamento)

Orario (ora del giorno, un minuto prima/dopo)

Taj Mahal, Agra, India.

Page 6: A.a. 2007/2008 Elaborazione dell’immagine LSunina.stidue.net/Elaborazione di Segnali Multimediali/Materiale... · Rilevamento del moto, riconoscimento di oggetti, ricostruzione

Elaborazione dell’immagine LS Pietro Azzari, Luigi Di Stefano

Applicazioni IRilevamento del movimento con videocamera non stazionaria [6]

Costruzione del modello di sfondo, registrazione spaziale di tutti i fotogrammiin un sistema di riferimento unitario (mosaico delle immagini [5][6])

Rilevamento del movimento, registrazione spaziale/tonale del fotogrammaattuale con la corrispondente regione del modello di sfondo

Page 7: A.a. 2007/2008 Elaborazione dell’immagine LSunina.stidue.net/Elaborazione di Segnali Multimediali/Materiale... · Rilevamento del moto, riconoscimento di oggetti, ricostruzione

Elaborazione dell’immagine LS Pietro Azzari, Luigi Di Stefano

Applicazioni II

Riconoscimento di patternIndividuazione della presenza e della posa dello sportello vano motore, registrazione spaziale/tonale del fotogramma attuale rispetto ad un modello di sportello appreso a priori [7].

Page 8: A.a. 2007/2008 Elaborazione dell’immagine LSunina.stidue.net/Elaborazione di Segnali Multimediali/Materiale... · Rilevamento del moto, riconoscimento di oggetti, ricostruzione

Elaborazione dell’immagine LS Pietro Azzari, Luigi Di Stefano

Applicazioni III• Mosaicing [6]

• Super Resolution [8]

• Ricostruzione tridimensionale [9]

Page 9: A.a. 2007/2008 Elaborazione dell’immagine LSunina.stidue.net/Elaborazione di Segnali Multimediali/Materiale... · Rilevamento del moto, riconoscimento di oggetti, ricostruzione

Elaborazione dell’immagine LS Pietro Azzari, Luigi Di Stefano

Applicazioni IV

Controllo del territorio Medical Imaging

Page 10: A.a. 2007/2008 Elaborazione dell’immagine LSunina.stidue.net/Elaborazione di Segnali Multimediali/Materiale... · Rilevamento del moto, riconoscimento di oggetti, ricostruzione

Elaborazione dell’immagine LS Pietro Azzari, Luigi Di Stefano

Registrazione rigida

Si può effettuare una registrazione rigida (stesso modello e stessi parametri per tutti i punti dell’immagine) solo in caso di sequenze di immagini prive di effetti di parallasse (moto apparente dipendente dalla struttura della scena).

Scena planare Rotazione intorno al centro ottico

Page 11: A.a. 2007/2008 Elaborazione dell’immagine LSunina.stidue.net/Elaborazione di Segnali Multimediali/Materiale... · Rilevamento del moto, riconoscimento di oggetti, ricostruzione

Elaborazione dell’immagine LS Pietro Azzari, Luigi Di Stefano

Pseudocodice per la registrazione

Problema:Individuare la trasformazione geometrica (di che tipo?) che registra in maniera ottimale (secondo quale criterio?) regioni corrispondenti delle immagini (quali?).

Procedura intuitiva: • Determinazione delle corrispondenze, individuazione di

coppie di regioni corrispondenti (aventi aspetto simile) Immagini Regioni corrispondenti

• Determinazione della trasformazione spaziale, stima del movimento (trasformazione) che regioni corrispondenti manifestano nel passaggio da un’immagine all’altra.Regioni corrispondenti Trasformazione

Page 12: A.a. 2007/2008 Elaborazione dell’immagine LSunina.stidue.net/Elaborazione di Segnali Multimediali/Materiale... · Rilevamento del moto, riconoscimento di oggetti, ricostruzione

Elaborazione dell’immagine LS Pietro Azzari, Luigi Di Stefano

Procedura intuitiva

TR

O O’

Page 13: A.a. 2007/2008 Elaborazione dell’immagine LSunina.stidue.net/Elaborazione di Segnali Multimediali/Materiale... · Rilevamento del moto, riconoscimento di oggetti, ricostruzione

Elaborazione dell’immagine LS Pietro Azzari, Luigi Di Stefano

Si definiscono features parti di immagini quali punti, linee, strutture, regioni, …Si definisce feature detector un algoritmo che individua features FS da un’immagine

S. Si definisce feature matcher un algoritmo che identifica features FD in un’immagine D corrispondenti alle features FS.

Si definisce Detector+Matcher=Tracker

Determinazione delle corrispondenze

• Harris Corner Detector [1] (1987)• KLT, Kanade Lucas Tomasi [2,3] (80’s - 90’s) • SIFT (Scale Invariant Features Transform), Lowe [4] (2004)

Detector

Detector

Matcher

Page 14: A.a. 2007/2008 Elaborazione dell’immagine LSunina.stidue.net/Elaborazione di Segnali Multimediali/Materiale... · Rilevamento del moto, riconoscimento di oggetti, ricostruzione

Elaborazione dell’immagine LS Pietro Azzari, Luigi Di Stefano

Harris Corner Detector ILocalizzazione [individuazione]: punti dell’immagine caratterizzati da un

elevato valore di un apposito funzionale Cornerness che misura la variazionedell’intensità per unità di spostamento in un intorno del punto.

Descrittore [corrispondenza]: posizione della feature, regione dell’immagine di dimensione predefinita intorno alla posizione.

Metrica di confronto [corrispondenza]: SSD di una coppia di descrittori (oppure SAD, NCC, etc)

( )20 0( , ) det traceR x y M k M= −

0 0

2

0 0 2, ( , )

( , ) ( , ) x x y

x y W x y x y y

I I IM x y w x y

I I I∈

⎡ ⎤= ⎢ ⎥

⎢ ⎥⎣ ⎦∑

Page 15: A.a. 2007/2008 Elaborazione dell’immagine LSunina.stidue.net/Elaborazione di Segnali Multimediali/Materiale... · Rilevamento del moto, riconoscimento di oggetti, ricostruzione

Elaborazione dell’immagine LS Pietro Azzari, Luigi Di Stefano

Perché Harris corner detector?

Regioni uniformi Discontinuità (edge) Angoli (corner)

Pregi:

Difetti:

• Bassa distintività

• Bassa tolleranza al rumore

Pregi:

• Alta distintività ortogonale

Difetti:

• Bassa distintività parallela

Pregi:

• Alta distintività

• Alta tolleranza al rumore

Difetti:

Page 16: A.a. 2007/2008 Elaborazione dell’immagine LSunina.stidue.net/Elaborazione di Segnali Multimediali/Materiale... · Rilevamento del moto, riconoscimento di oggetti, ricostruzione

Elaborazione dell’immagine LS Pietro Azzari, Luigi Di Stefano

LKT Lukas Kanade Tomasi

|)||,(| 21 λλMinR =

Localizzazione: punti dell’immagine caratterizzati da un elevato valore di un funzionale specifico definito come:

dove λ1,λ2 sono gli autovalori della matrice M definita per Harris.

Caratterizzazione [descrittore]: posizione della feature, regione dell’immaginedi dimensione predefinita intorno alla posizione.

Metrica di confronto: SSD di una coppia di descrittori (oppure SAD, NCC, etc)

Page 17: A.a. 2007/2008 Elaborazione dell’immagine LSunina.stidue.net/Elaborazione di Segnali Multimediali/Materiale... · Rilevamento del moto, riconoscimento di oggetti, ricostruzione

Elaborazione dell’immagine LS Pietro Azzari, Luigi Di Stefano

Harris/LKT e OpenCV

Estrazione delle features da un’immagine

GoodFeaturesToTrack in OpenCVDir\docs\ref\opencvref_cv.htm

Determines strong corners on imagevoid cvGoodFeaturesToTrack( const CvArr* image, CvArr* eig_image, CvArr* temp_image,

CvPoint2D32f* corners, int* corner_count, double quality_level, double min_distance, const CvArr* mask=NULL, int block_size=3, int use_harris=0, double k=0.04 );

Individuazione delle corrispondenze tra coppie di immagini

CalcOpticalFlowPyrLK in OpenCVDir\docs\ref\opencvref_cv.htm

Calculates optical flow for a sparse feature set using iterative Lucas-Kanade method in pyramids

void cvCalcOpticalFlowPyrLK( const CvArr* prev, const CvArr* curr, CvArr* prev_pyr, CvArr* curr_pyr, const CvPoint2D32f* prev_features, CvPoint2D32f* curr_features, int count, CvSize win_size, int level, char* status, float* track_error, CvTermCriteria criteria, intflags );

Page 18: A.a. 2007/2008 Elaborazione dell’immagine LSunina.stidue.net/Elaborazione di Segnali Multimediali/Materiale... · Rilevamento del moto, riconoscimento di oggetti, ricostruzione

Elaborazione dell’immagine LS Pietro Azzari, Luigi Di Stefano

SIFT (Scale Invariant Feature Transform)

Proprietà di invarianza rispetto a: • Rumore di formazione• Rotazioni 2D • Cambiamenti di illuminazione (fotometrici)• Cambiamenti di scala• Posizione relativa osservatore/scena

Page 19: A.a. 2007/2008 Elaborazione dell’immagine LSunina.stidue.net/Elaborazione di Segnali Multimediali/Materiale... · Rilevamento del moto, riconoscimento di oggetti, ricostruzione

Elaborazione dell’immagine LS Pietro Azzari, Luigi Di Stefano

Insieme delle corrispondenze

Immagine 1 Immagine 2Feature

1

2

N

X1 Y1 X1‘ Y1

X Y X‘ Y’

X2 Y2 X2‘ Y2

XN YN XN‘ YN

… …… …

fs ft

Page 20: A.a. 2007/2008 Elaborazione dell’immagine LSunina.stidue.net/Elaborazione di Segnali Multimediali/Materiale... · Rilevamento del moto, riconoscimento di oggetti, ricostruzione

Elaborazione dell’immagine LS Pietro Azzari, Luigi Di Stefano

Determinazione della trasformazione spaziale II

Dati due vettori fs, fd di lunghezza N di coordinate corrispondenti, determinare la trasformazione spaziale f che mette in relazione tali coordinate (e con esse le due immagini).

Una trasformazione è determinata dalla forma analitica f e dai parametri p.

Modello: polinomiale di I grado (retta). Parametri: coefficiente angolare e intercettaModello: polinomiale di II grado (parabola) Parametri: vertice e discriminante

• Model Selection, individuazione della forma f del modello (traslazione, rotazione, proiettività)Due immagini sono due proiezioni della stessa scena acquisite da punti di vista differenti. Punti dell’immagine sono proiezioni di punti tridimensionali1. Analisi del processo di formazione delle proiezioni della scena.2. Analisi della relazione geometrica fra due proiezioni della medesima scena

• Model Fitting, determinazione dei parametri p1. Stima dei parametri del modello a partire dai dati

Page 21: A.a. 2007/2008 Elaborazione dell’immagine LSunina.stidue.net/Elaborazione di Segnali Multimediali/Materiale... · Rilevamento del moto, riconoscimento di oggetti, ricostruzione

Elaborazione dell’immagine LS Pietro Azzari, Luigi Di Stefano

Processo di formazione dell’immagine I

Telecamera pin-holeProiezione centrale:

C centro di proiezione, p punto principale, f lunghezza focale

Y

C

X

Z

M

x

ym

( ) ( ), , , ,X Y Z x y= =M m

Y

CZ

M

fpp

( ) ( ), , / , /X Y Z fX Z fY Z→

( ) ( )/f , ,

/x fX Z

fy fY Z=⎧

= =⎨ =⎩M p p

fY/Z

Page 22: A.a. 2007/2008 Elaborazione dell’immagine LSunina.stidue.net/Elaborazione di Segnali Multimediali/Materiale... · Rilevamento del moto, riconoscimento di oggetti, ricostruzione

Elaborazione dell’immagine LS Pietro Azzari, Luigi Di Stefano

Processo di formazione dell’immagine II

Parametri intrinseci:

Parametri estrinseci

f richiede una notazione molto complessa:

funzione razionale NO ALGEBRA LINEARE

( )

( )

/f ,

/

, , , ,

x x

y y

x y x y

x k fX Z py k fY Z p

f p p k k

= +⎧= ⎨ = +⎩

=

M p

p

( ) ( ), , / , /x x y yX Y Z k fX Z p k fY Z p→ + +

Ycam

C

Xcam

Zcam

Z

O YX

R,t

py p xcam

ycam

y

x px

( ) ( )( )

11 12 13 1

31 32 33 3

, , ,...x x

XR YR ZR tX Y Z k f p

XR YR ZR t⎛ ⎞+ + +

→ +⎜ ⎟⎜ ⎟+ + +⎝ ⎠

( ), , , , , ( , , ),x y x yf p p k k α β γ=p R t

Page 23: A.a. 2007/2008 Elaborazione dell’immagine LSunina.stidue.net/Elaborazione di Segnali Multimediali/Materiale... · Rilevamento del moto, riconoscimento di oggetti, ricostruzione

Elaborazione dell’immagine LS Pietro Azzari, Luigi Di Stefano

Coordinate omogeneeRappresentano coordinate bidimensionali con vettori tridimensionali

5 10 205

3 6 123

1 2 4

⎡ ⎤ ⎡ ⎤ ⎡ ⎤⎡ ⎤ ⎢ ⎥ ⎢ ⎥ ⎢ ⎥→ = =⎢ ⎥ ⎢ ⎥ ⎢ ⎥ ⎢ ⎥⎣ ⎦ ⎢ ⎥ ⎢ ⎥ ⎢ ⎥⎣ ⎦ ⎣ ⎦ ⎣ ⎦

xxxwy

y yw

w

⎡ ⎤⎡ ⎤ ⎢ ⎥ ⎡ ⎤⎢ ⎥ → =⎢ ⎥ ⎢ ⎥⎢ ⎥ ⎣ ⎦⎢ ⎥⎢ ⎥⎣ ⎦ ⎢ ⎥⎣ ⎦

wx xx

wy yy

w w

⎡ ⎤ ⎡ ⎤⎡ ⎤ ⎢ ⎥ ⎢ ⎥→ =⎢ ⎥ ⎢ ⎥ ⎢ ⎥⎣ ⎦ ⎢ ⎥ ⎢ ⎥⎣ ⎦ ⎣ ⎦

( ) ( ) ( ) ( ), , , , ,1 , , , ,X Y Z X Y Z x y x y w= → = = → =M M m m

( )f ,x fXy fYw Z

=⎧⎪= =⎨⎪ =⎩

M p

Proiezione centrale

00

1 01 1

X XfX f

Y YfY f

Z ZZ

⎛ ⎞ ⎛ ⎞⎛ ⎞ ⎡ ⎤⎜ ⎟ ⎜ ⎟⎜ ⎟ ⎢ ⎥⎜ ⎟ ⎜ ⎟→ =⎜ ⎟ ⎢ ⎥⎜ ⎟ ⎜ ⎟⎜ ⎟ ⎢ ⎥⎜ ⎟ ⎜ ⎟⎝ ⎠ ⎣ ⎦

⎝ ⎠ ⎝ ⎠( ), ,1 0s diag f f ⎡ ⎤= = ⎣ ⎦m PM I M

Page 24: A.a. 2007/2008 Elaborazione dell’immagine LSunina.stidue.net/Elaborazione di Segnali Multimediali/Materiale... · Rilevamento del moto, riconoscimento di oggetti, ricostruzione

Elaborazione dell’immagine LS Pietro Azzari, Luigi Di Stefano

Processo di formazione dell’immagine in coordinate omogenee

Parametri intrinseci:

Parametri estrinseci

( ) ( ), , / , /x x y yX Y Z k fX Z p k fY Z p→ + +

( ) ( )( )

11 12 13 1

31 32 33 3

, , ,...x x

XR YR ZR tX Y Z k f p

XR YR ZR t⎛ ⎞+ + +

→ +⎜ ⎟⎜ ⎟+ + +⎝ ⎠

00

1 01 1

x x x x

y y y y

X Xk fX p Z k f p

Y Yk fY p Z k f p

Z ZZ

⎛ ⎞ ⎛ ⎞+⎛ ⎞ ⎡ ⎤⎜ ⎟ ⎜ ⎟

⎜ ⎟ ⎢ ⎥⎜ ⎟ ⎜ ⎟→ + =⎜ ⎟ ⎢ ⎥⎜ ⎟ ⎜ ⎟⎜ ⎟ ⎢ ⎥⎜ ⎟ ⎜ ⎟⎝ ⎠ ⎣ ⎦⎝ ⎠ ⎝ ⎠

1

x x

y y

k f pk f p

⎡ ⎤⎢ ⎥= ⎢ ⎥⎢ ⎥⎣ ⎦

K

0s ⎡ ⎤= = ⎣ ⎦m PM K I M

0 11 1

cam

cam

cam

X XY YZ Z

⎛ ⎞ ⎛ ⎞⎜ ⎟ ⎜ ⎟⎡ ⎤⎜ ⎟ ⎜ ⎟= ⎢ ⎥⎜ ⎟ ⎜ ⎟⎣ ⎦⎜ ⎟ ⎜ ⎟⎝ ⎠ ⎝ ⎠

R t 0 cams ⎡ ⎤ ⎡ ⎤= =⎣ ⎦ ⎣ ⎦m K I M K R t M

Page 25: A.a. 2007/2008 Elaborazione dell’immagine LSunina.stidue.net/Elaborazione di Segnali Multimediali/Materiale... · Rilevamento del moto, riconoscimento di oggetti, ricostruzione

Elaborazione dell’immagine LS Pietro Azzari, Luigi Di Stefano

Modello proiettivo/omografico

Analisi della relazione geometrica fra due proiezioni m, m’ dello stesso punto M.

Scena planare

In appendice è svolto il caso generale per immagini prive di effetti di parallasse

[ ] [ ]2 3 1 201 1

1

XX X

Ys Y YΠ

⎛ ⎞⎛ ⎞ ⎛ ⎞⎜ ⎟⎜ ⎟ ⎜ ⎟⎜ ⎟= = = =⎜ ⎟ ⎜ ⎟⎜ ⎟ ⎜ ⎟ ⎜ ⎟⎜ ⎟ ⎝ ⎠ ⎝ ⎠

⎝ ⎠

1m PM K r r r t r r t H

{ }3 : 0ZΠ ∈Π = ∈ℜ =M M

[ ] [ ]0

1 11

XX X

Ys Y YΠ

⎛ ⎞⎛ ⎞ ⎛ ⎞⎜ ⎟⎜ ⎟ ⎜ ⎟⎜ ⎟′ ′ ′ ′ ′ ′ ′ ′ ′ ′= = = =⎜ ⎟ ⎜ ⎟⎜ ⎟ ⎜ ⎟ ⎜ ⎟⎜ ⎟ ⎝ ⎠ ⎝ ⎠

⎝ ⎠

1 2 3 1 2m PM K r r r t r r t H

1

1

Xs Y −

Π

⎛ ⎞⎜ ⎟′ ′ ′ ′= = =⎜ ⎟⎜ ⎟⎝ ⎠

m P M H H H m

H è una matrice 3x3 di rango 3 nota come OMOGRAFIA

1−Π ′=H H H

Page 26: A.a. 2007/2008 Elaborazione dell’immagine LSunina.stidue.net/Elaborazione di Segnali Multimediali/Materiale... · Rilevamento del moto, riconoscimento di oggetti, ricostruzione

Elaborazione dell’immagine LS Pietro Azzari, Luigi Di Stefano

Trasformazioni proiettive 2D II

• Proprietà delle trasformazioni proiettive:– L’origine non mappa necessariamente nell’origine– Rette rimangono rette– Rette parallele non rimangono necessariamente parallele– Rapporti di lunghezza non sono preservati– composizione di trasformazioni proiettive è una trasformazione proiettiva

⎥⎥⎦

⎢⎢⎣

⎥⎥⎦

⎢⎢⎣

⎡=

⎥⎥⎦

⎢⎢⎣

wyx

ihgfedcba

wyx

'''

⎥⎥⎦

⎢⎢⎣

⎟⎟⎟

⎜⎜⎜

⎥⎥⎦

⎢⎢⎣

⎥⎥⎦

⎢⎢⎣

⎡ΘΘΘ−Θ

⎥⎥⎦

⎢⎢⎣

⎡=

⎥⎥⎦

⎢⎢⎣

wyx

sysx

tytx

wyx

1000000

1000cossin0sincos

1001001

'''

x’ = T(tx,ty) R(Θ) S(sx,sy) x

( ), , , , , , , ,a b c d e f g h i=p

Page 27: A.a. 2007/2008 Elaborazione dell’immagine LSunina.stidue.net/Elaborazione di Segnali Multimediali/Materiale... · Rilevamento del moto, riconoscimento di oggetti, ricostruzione

Elaborazione dell’immagine LS Pietro Azzari, Luigi Di Stefano

Trasformazioni parametriche 2D

Page 28: A.a. 2007/2008 Elaborazione dell’immagine LSunina.stidue.net/Elaborazione di Segnali Multimediali/Materiale... · Rilevamento del moto, riconoscimento di oggetti, ricostruzione

Elaborazione dell’immagine LS Pietro Azzari, Luigi Di Stefano

Determinazione della trasformazione

Problema: dati due vettori fs, fd di N corrispondenze ed un modello di trasformazione f di tipo proiettivo, determinare i parametri p in maniera ottimale.

'''

x a b c xs y d e f y

w g h i w

⎡ ⎤ ⎡ ⎤ ⎡ ⎤⎢ ⎥ ⎢ ⎥ ⎢ ⎥=⎢ ⎥ ⎢ ⎥ ⎢ ⎥⎢ ⎥ ⎢ ⎥ ⎢ ⎥⎣ ⎦ ⎣ ⎦ ⎣ ⎦

( , , )x ax by cw

f y dx ey fww gx hy iw

′ = + +⎧⎪′ ′= = + +⎨⎪ ′ = + +⎩

x x p

( 1)1( , , )

( 1)1

ax by cxx gx hy ax by cgx hy

fdx ey f y gx hy dx ey fygx hy

+ +⎧ ′ =⎪ ′ + + = + ++ + ⎧⎪′ = =⎨ ⎨ ′+ + + + = + +⎩⎪ ′ =⎪ + +⎩

x x p

Page 29: A.a. 2007/2008 Elaborazione dell’immagine LSunina.stidue.net/Elaborazione di Segnali Multimediali/Materiale... · Rilevamento del moto, riconoscimento di oggetti, ricostruzione

Elaborazione dell’immagine LS Pietro Azzari, Luigi Di Stefano

Vincoli introdotti dalle corrispondenze

0 0 00 0 0

i i i i i i i

i i i i i i i

x ax by c d e f gx x hx yy a b c dx ey f gy x hy y′ ′ ′= + + + + + − −′ ′ ′= + + + + + − −

Ogni corrispondenza {(xi,yi),(xi’,yi’)} introduce la seguente coppia di vincoli:

Dato che i parametri da stimare sono 8, per ottenere un sistema determinato abbiamo bisogno di 4 corrispondenze:

1 1 1 1 1 1

1 1 1 1 1 1

2 2 2 2 2 2

2 2 2 2 2 2

3 3 3 3 3 3

3 3 3 3 3 3

4 4 4 4 4 4

4 4 4 4 4 4

1 0 0 00 0 0 1

1 0 0 00 0 0 1

1 0 0 00 0 0 1

1 0 0 00 0 0 1

x y x x x y ax y y x y y b

x y x x x y cx y y x y y d

x y x x x y ex y y x y y f

x y x x x y gx y y x y y h

′ ′− −⎡ ⎤ ⎡⎢ ⎥ ⎢′ ′− −⎢ ⎥ ⎢

′ ′⎢ ⎥ ⎢− −⎢ ⎥ ⎢′ ′− −⎢ ⎥⎢ ⎥′ ′− −⎢ ⎥

′ ′− −⎢ ⎥⎢ ⎥′ ′− −⎢ ⎥

′ ′− −⎢ ⎥ ⎣⎣ ⎦

1

1

2

2

3

3

4

4

xyxyxyxy

′⎡ ⎤⎤⎢ ⎥⎥ ′⎢ ⎥⎥′⎢ ⎥⎥

⎢ ⎥⎥ ′⎢ ⎥⎢ ⎥ = ⎢ ⎥⎢ ⎥ ′⎢ ⎥⎢ ⎥′⎢ ⎥⎢ ⎥

⎢ ⎥⎢ ⎥ ′⎢ ⎥⎢ ⎥′⎢ ⎥ ⎢ ⎥⎦ ⎣ ⎦

Page 30: A.a. 2007/2008 Elaborazione dell’immagine LSunina.stidue.net/Elaborazione di Segnali Multimediali/Materiale... · Rilevamento del moto, riconoscimento di oggetti, ricostruzione

Elaborazione dell’immagine LS Pietro Azzari, Luigi Di Stefano

Regressione lineare

• Dato un sistema lineare determinato (2N=P) e di rango massimo (P) della forma:

• Il vettore dei parametri p soluzione del sistema è dato da

dove A-1 è la matrice inversa di A che esiste sempre grazie alle ipotesi. Questa procedura di inferenza dei parametri di un modello a partire da osservazioni e nota come regressione lineare.

Se il rango non è massimo il sistema ammette infiniteP-rango soluzioni.

[ ]i

b

, i=1,..,2N; j=1,..,P

, j=1,..,P

b , i=1,..,2N

ij

j

a

p

=

⎡ ⎤= ⎣ ⎦⎡ ⎤= ⎣ ⎦

=

Ap

A

p

b

−= 1p A b

Page 31: A.a. 2007/2008 Elaborazione dell’immagine LSunina.stidue.net/Elaborazione di Segnali Multimediali/Materiale... · Rilevamento del moto, riconoscimento di oggetti, ricostruzione

Elaborazione dell’immagine LS Pietro Azzari, Luigi Di Stefano

Tolleranza al rumore

Le immagini sono affette da rumore le coordinate delle features sono affetteda rumore

Utilizzare più informazioni significa ridurre l’incidenza del rumore sulla stimafinale, tuttavia il sistema di equazioni non ammetterà alcuna soluzione, avendopiù vincoli che gradi di libertà (2N>P).

In questi casi, si perviene ad una soluzione denominata ai minimi quadrati cheequivale ad individuare il vettore p che minimizza :

cioè la distanza euclidea fra i punti sperimentali ed i corrispondenti punti predettidal modello e dai parametri determinati.

Questo vettore dei parametri viene calcolato come

dove A+-1 è detta matrice pseudoinversa di A che esiste per ogni matrice.

( ) 1− −= =T T 1+p A A A b A b

2'

1

N

i ii

ε=

= −∑ m Hm

Page 32: A.a. 2007/2008 Elaborazione dell’immagine LSunina.stidue.net/Elaborazione di Segnali Multimediali/Materiale... · Rilevamento del moto, riconoscimento di oggetti, ricostruzione

Elaborazione dell’immagine LS Pietro Azzari, Luigi Di Stefano

Esempi di regressioneRegressione lineare di una retta nel piano

Vettore di corrispondenze è dato da:

Ogni corrispondenza fornisce un vincolo:

Quindi per la stima sono necessarie e sufficienti due corrispondenze qualsiasi(figura sopra).

Regressione lineare ai minimi quadratiusando tutte le corrispondenze (figurasotto)

y

x

y

x

( , ) : Pf ℜ×ℜ →ℜx p( , )f x y ax b= = +p[ ] 2,a b= ∈ℜp

( , ), i=1,..,Ni ix y

, i=1,..,Ni iy ax b= +

Page 33: A.a. 2007/2008 Elaborazione dell’immagine LSunina.stidue.net/Elaborazione di Segnali Multimediali/Materiale... · Rilevamento del moto, riconoscimento di oggetti, ricostruzione

Elaborazione dell’immagine LS Pietro Azzari, Luigi Di Stefano

Tolleranza a dati erratiDati errati, o outliers, sono misure non spiegabili attraverso la distribuzione del

rumore che si suppone affligga i dati. Tipicamente si tratta di misuregrossolanamente errate, nel nostro caso errate corrispondenze.

Gli outliers possono alterare in maniera consistente il risultato di unaregressione, per questa ragione è buona norma eliminarli prima di usarli nellaregressione. Una regressione con rimozione degli outlier è denominataregressione robusta.

Random Sample Consensus (RANSAC), Fischler and Bolles 1981Do1. Individuazione di un set minimo di dati, Sm contenuto in S2. Determinazione dei parametri del modello a partire dal set minimo Sm3. Calcolo del consenso del modello da parte del resto dei dati S-SmWhile (consenso<soglia && iterazione<maxIterazioni)Determinazione dei parametri del modello usando tutti i dati compatibili con il

modello di consenso massimo

Page 34: A.a. 2007/2008 Elaborazione dell’immagine LSunina.stidue.net/Elaborazione di Segnali Multimediali/Materiale... · Rilevamento del moto, riconoscimento di oggetti, ricostruzione

Elaborazione dell’immagine LS Pietro Azzari, Luigi Di Stefano

Esempi di regressione robusta

y

x

y

xConsensus=4

y

xConsensus=8

y

x

Page 35: A.a. 2007/2008 Elaborazione dell’immagine LSunina.stidue.net/Elaborazione di Segnali Multimediali/Materiale... · Rilevamento del moto, riconoscimento di oggetti, ricostruzione

Elaborazione dell’immagine LS Pietro Azzari, Luigi Di Stefano

Codice regressione robusta

Risoluzione di sistemi lineari e/o problemi ai minimi quadrati

Solve in OpenCVDir\docs\ref\opencvref_cxcore.htm

Solves linear system or least-squares problemint cvSolve( const CvArr* A, const CvArr* B, CvArr* X, int method=CV_LU );

Risoluzione di sistemi lineari e/o problemi ai minimi quadraticon controllo di congruenza statistica dei dati, segmentazione dei dati in inliers/outliers

RansacEstimator Class in RansacEstimator.cpp

Solves linear system or least-squares problem using robust statistics

RansacEstimator::m_fnRansacModelEstimation(CvPoint2D32f* pSrcPoints, CvPoint2D32f* pDstPoints, float *fNoiseStd);

Page 36: A.a. 2007/2008 Elaborazione dell’immagine LSunina.stidue.net/Elaborazione di Segnali Multimediali/Materiale... · Rilevamento del moto, riconoscimento di oggetti, ricostruzione

Elaborazione dell’immagine LS Pietro Azzari, Luigi Di Stefano

y’

Rimappatura: metodo diretto

Problema: noto un modello di trasformazione f ed i rispettivi parametri p, data unaimmagine sorgente S(x,y), calcolare l’immagine trasformata D(x’,y’) = S(f(x,y)).

x x’

f(x,y)

S (x,y)D (x’,y’)

yx’

Algoritmo

Per ogni pixel (x,y) di S ricopiare il valore di intensità S(x,y) nella sua posizione corrispondente (x’,y’)=f(x,y) di D

Problema: pixel di D non corrispondenti ad alcun pixel di SProblema: (x’,y’) non intere

Page 37: A.a. 2007/2008 Elaborazione dell’immagine LSunina.stidue.net/Elaborazione di Segnali Multimediali/Materiale... · Rilevamento del moto, riconoscimento di oggetti, ricostruzione

Elaborazione dell’immagine LS Pietro Azzari, Luigi Di Stefano

xy

S(x,y) D(x’,y’)

Metodo diretto I

f(x,y)

y’

Soluzione: espansione di S(x,y) in un opportuno intorno di (x’,y’) color splatting

Problema: pixel di D non corrispondenti ad alcun pixel di S

x’

x

y

S(x,y) D(x’,y’)

f(x,y)

y’x’

Page 38: A.a. 2007/2008 Elaborazione dell’immagine LSunina.stidue.net/Elaborazione di Segnali Multimediali/Materiale... · Rilevamento del moto, riconoscimento di oggetti, ricostruzione

Elaborazione dell’immagine LS Pietro Azzari, Luigi Di Stefano

Metodo diretto II

Problema: (x’,y’) non intere

D(x’,y’)f(x,y)S(x,y)

D(x’,y’)f(x,y)S(x,y)

Soluzione: approssimare le coordinate (x’,y’) all’intero più vicino Nearest neighbor

E’ possibile fare meglio? DifficileDopo la rimappatura completa si potrebbe attivare un post processing per miscelare intensità di pixel vicini associati a coordinate non intere.

Page 39: A.a. 2007/2008 Elaborazione dell’immagine LSunina.stidue.net/Elaborazione di Segnali Multimediali/Materiale... · Rilevamento del moto, riconoscimento di oggetti, ricostruzione

Elaborazione dell’immagine LS Pietro Azzari, Luigi Di Stefano

S(x,y) D(x’,y’)xy

Rimappatura: metodo inverso

x x’y’

f -1(x,y)

Algoritmo

Ad ogni pixel (x’,y’) di D assegnare il valore di intensità S(x,y) del suo omologo calcolato come (x,y)=f -1(x’,y’)

Problema: esistenza della funzione inversa f -1

Problema: (x,y) non intere

Page 40: A.a. 2007/2008 Elaborazione dell’immagine LSunina.stidue.net/Elaborazione di Segnali Multimediali/Materiale... · Rilevamento del moto, riconoscimento di oggetti, ricostruzione

Elaborazione dell’immagine LS Pietro Azzari, Luigi Di Stefano

S(x,y) D(x’,y’)

xy

Metodo inverso

x x’

f -1(x,y) y’

Problema: (x,y) non intere

Soluzione: approssimare le coordinate (x,y) all’intero più vicino Nearest neighbor

S(x,y) D(x’,y’)

xy

x x’

f -1(x,y) y’

Soluzioni avanzate: tecniche di interpolazione (vedere appendice).

Variante del medesimo problema: pixels di D distinti potrebbero avere il medesimo pixel di S come nearest neighbor (ingrandimenti) immagine D sgranata, blocking.

Page 41: A.a. 2007/2008 Elaborazione dell’immagine LSunina.stidue.net/Elaborazione di Segnali Multimediali/Materiale... · Rilevamento del moto, riconoscimento di oggetti, ricostruzione

Elaborazione dell’immagine LS Pietro Azzari, Luigi Di Stefano

Rimappatura con OpenCV

Rimappatura dell’immagine con modello proiettivo• Matrice di trasformazione map_matrix• Metodo di interpolazione: CV_INTER_LINEAR, CV_INTER_CUBIC

WarpPerspective in OpenCVDir\docs\ref\opencvref_cv.htm

Applies perspective transformation to the imagevoid cvWarpPerspective( const CvArr* src, CvArr* dst, const CvMat* map_matrix, int

flags=CV_INTER_LINEAR+CV_WARP_FILL_OUTLIERS, CvScalar fillval=cvScalarAll(0));

Rimappatura non parametrica dell’immagine• Matrici di traslazione mapx e mapy

RemapApplies generic geometrical transformation to the imagevoid cvRemap( const CvArr* src, CvArr* dst, const CvArr* mapx, const CvArr* mapy, int

flags=CV_INTER_LINEAR+CV_WARP_FILL_OUTLIERS, CvScalarfillval=cvScalarAll(0));

Page 42: A.a. 2007/2008 Elaborazione dell’immagine LSunina.stidue.net/Elaborazione di Segnali Multimediali/Materiale... · Rilevamento del moto, riconoscimento di oggetti, ricostruzione

Elaborazione dell’immagine LS Pietro Azzari, Luigi Di Stefano

Listato di esempio I

Registrazione di una coppia di immagini

1. Estrazione set di features dalla prima immagine

2. Individuazione delle corrispondenze nella seconda immagine

3. Stima robusta dell’omografia attraverso Ransac (attenzione al formato della matrice risultato)

4. Rimappatura della seconda immagine utilizzando l’omografia stimata

Page 43: A.a. 2007/2008 Elaborazione dell’immagine LSunina.stidue.net/Elaborazione di Segnali Multimediali/Materiale... · Rilevamento del moto, riconoscimento di oggetti, ricostruzione

Elaborazione dell’immagine LS Pietro Azzari, Luigi Di Stefano

Listato di esempio II

Mosaicatura di una sequenza di immagini

1. Per ogni coppia di immagini• Estrazione set di features dalla

prima immagine• Individuazione delle

corrispondenze nella seconda immagine

• Stima robusta dell’omografia attraverso Ransac

2. Calcolo della matrice omograficaincrementale

3. Rimappatura della seconda immagine utilizzando l’omografia incrementale

Page 44: A.a. 2007/2008 Elaborazione dell’immagine LSunina.stidue.net/Elaborazione di Segnali Multimediali/Materiale... · Rilevamento del moto, riconoscimento di oggetti, ricostruzione

Elaborazione dell’immagine LS Pietro Azzari, Luigi Di Stefano

Note sull’utilizzo del codiceUtilizzo della classe Ransac EstimatorIstanziazione:

RansacEstimator *pEstimator=new RansacEstimator(FULLPROJECTIVE);Stima robusta della trasformazione

pEstimator->m_fRansacModelEstimation(vSrcCorners,vDstCorners,iCorners,2);Reshaping del vettore di parametri stimato

CvMat *pHomography=cvCreateMat(3,3,CV_32FC1);cvmSet(pHomography,0,0,cvmGet(pEstimator->m_pFinalTransformationMat,0,0));cvmSet(pHomography,0,1,cvmGet(pEstimator->m_pFinalTransformationMat,1,0));cvmSet(pHomography,0,2,cvmGet(pEstimator->m_pFinalTransformationMat,2,0));cvmSet(pHomography,1,0,cvmGet(pEstimator->m_pFinalTransformationMat,3,0));cvmSet(pHomography,1,1,cvmGet(pEstimator->m_pFinalTransformationMat,4,0));cvmSet(pHomography,1,2,cvmGet(pEstimator->m_pFinalTransformationMat,5,0));cvmSet(pHomography,2,0,cvmGet(pEstimator->m_pFinalTransformationMat,6,0));cvmSet(pHomography,2,1,cvmGet(pEstimator->m_pFinalTransformationMat,7,0));cvmSet(pHomography,2,2,cvmGet(pEstimator->m_pFinalTransformationMat,8,0));

Calcolo della matrice incrementalecvMat *pIncHomography=cvCreateMat(3,3,CV_32FC1);cvSetIdentity(pIncHomography);…cvGEMM(pIncHomography,pHomography,1.0,NULL,0,pIncHomography);

Page 45: A.a. 2007/2008 Elaborazione dell’immagine LSunina.stidue.net/Elaborazione di Segnali Multimediali/Materiale... · Rilevamento del moto, riconoscimento di oggetti, ricostruzione

Elaborazione dell’immagine LS Pietro Azzari, Luigi Di Stefano

Progetto Realtà Aumentata

Specifiche funzionali del sistema• Sovraimporre un layer di realtà aumentata sulla copertina

del libro in maniera “percettivamente credibile”• Eliminare gli artefatti di colore in corrispondenza delle

zone di sovrapposizione del layer di realtà aumentata.Input:• Sequenza filmata: Multiple View.avi• Fotogramma di riferimento (primo della sequenza)

ReferenceFrame.png• Maschera binaria del libro nel fotogramma di riferimento

ObjectMask.png• Immagine costituente un layer di realtà aumentata e relativa

maschera binariaAugmentedLayer.png (immagine)AugmentedLayerMask.png (maschera binaria)

Output:Sequenza filmata Augmented Multiple View.avi con sovraimpressione realistica del layer di realtà aumentata.

Si sviluppi un algoritmo per la generazione di una sequenza video di realtà aumentata.

Page 46: A.a. 2007/2008 Elaborazione dell’immagine LSunina.stidue.net/Elaborazione di Segnali Multimediali/Materiale... · Rilevamento del moto, riconoscimento di oggetti, ricostruzione

Elaborazione dell’immagine LS Pietro Azzari, Luigi Di Stefano

Progetto registrazione di immagini

Algoritmo di registrazione

Page 47: A.a. 2007/2008 Elaborazione dell’immagine LSunina.stidue.net/Elaborazione di Segnali Multimediali/Materiale... · Rilevamento del moto, riconoscimento di oggetti, ricostruzione

Elaborazione dell’immagine LS Pietro Azzari, Luigi Di Stefano

Tesi disponibili• Rilevazione del movimento

– Photo Free People (P3P), individuazione e rimozione di persone ed oggetti in movimento da sequenze di fotografie di luoghi turistici o archeologici.

– Rilevazione e tracking in real time di persone ed oggetti in movimento per sistemi di videosorveglianza per telecamere in movimento.

• Mosaicatura di immagini– Composizione statisticamente ottima di molteplici viste della stessa scena con

stima e correzione automatica di disallineamenti spaziali, fotometrici e ottici.– Ampliamento progetto Virtual camera, generatore di immagini sintetiche per scopi

sperimentali. Sviluppo del processo di formazione dell’immagine ad alto rangedinamico (HDR).

• Realtà aumentata– Progetto ARIS, riconoscimento di oggetti e stima di posizione ed orientamento

degli stessi per la sovrapposizione di strati informativi coerenti con la scena.• Strumenti avanzati per la visione artificiale

– Implementazione Scale Invariant Feature Transform (SIFT).

Page 48: A.a. 2007/2008 Elaborazione dell’immagine LSunina.stidue.net/Elaborazione di Segnali Multimediali/Materiale... · Rilevamento del moto, riconoscimento di oggetti, ricostruzione

Elaborazione dell’immagine LS Pietro Azzari, Luigi Di Stefano

Bibliografia[1] C. Harris, M. Stephens, “A Combined Corner and Edge Detector”, 4th Alvey Vision Conference,

1987, 147-151.[2] B. Lucas, T. Kanade, “An Iterative Image Registration Technique with an Application to Stereo

Vision”, Proc. of 7th of IJCAI, pp. 674-679. [3] J. Shi and C. Tomasi, “Good Features to Track”, Proc. of 9th Conf. on CVPR, 1994. [4] D. Lowe, “Distinctive Image Features from Scale-Invariant Keypoints”, IJCV, 2004.[5] M. Brown, D. Lowe, “Automatic Panoramic Image Stitching Using Invariant Features”, IJCV, pages

59-73.[6] P. Azzari, L. Di Stefano, S. Mattoccia, “An Evaluation Methodology for Image Mosaicing

Algorithms”, submitted to ICVS 2008.[7] P. Azzari, L. Di Stefano, F. Tombari, S. Mattoccia “Markerless Augmented Reality for Aerial

Maintenance Assistance”, AVI 2008 (in preparation).[8] D. Capel and A. Zisserman, “Computer vision applied to super resolution”, IEEE Signal Processing

Mag., vol. 20, no. 3, pp. 75--86, 2003.[9] M. Pollefeys, L. Van Gool, M. Vergauwen, F. Verbiest, K. Cornelis, J. Tops, R. Koch, “Visual

modeling with a hand-held camera”, IJCV 59(3), 207-232, 2004.

[10] R. Hartley, A. Zisserman, “Multiple View Geometry in Computer Vision”, Cambridge University Press, 2003.

[11] E. Trucco, A. Verri, “Introductory Techniques for 3-D Computer Vision”, Prentice Hall, Inc., 1998.

Page 49: A.a. 2007/2008 Elaborazione dell’immagine LSunina.stidue.net/Elaborazione di Segnali Multimediali/Materiale... · Rilevamento del moto, riconoscimento di oggetti, ricostruzione

Elaborazione dell’immagine LS Pietro Azzari, Luigi Di Stefano

Grazie per l’attenzione

Domande?!

Page 50: A.a. 2007/2008 Elaborazione dell’immagine LSunina.stidue.net/Elaborazione di Segnali Multimediali/Materiale... · Rilevamento del moto, riconoscimento di oggetti, ricostruzione

Elaborazione dell’immagine LS Pietro Azzari, Luigi Di Stefano

Problema: Nota la distribuzione delle intensità dell’immagine in posizioni corrispondenti a coordinate intere, determinare le intensità in posizioni arbitrarie.

Processo di formazione dell’immagineLa funzione spazio-continua f(x) della luminosità della scena viene campionatadalla matrice dei pixel dando luogo alla funzione spazio-discreta F[x].

Approccio:

Determinare un’approssimazione (ricostruzione) spazio-continua f(x)’ del segnalef(x) a partire dai campioni F[x]Calcolare il valore del segnale f(x)’ nelle posizioni di interesse

Appendice: Tecniche di interpolazione

1 2 3 4 5x

f(x)

F[x]

Page 51: A.a. 2007/2008 Elaborazione dell’immagine LSunina.stidue.net/Elaborazione di Segnali Multimediali/Materiale... · Rilevamento del moto, riconoscimento di oggetti, ricostruzione

Elaborazione dell’immagine LS Pietro Azzari, Luigi Di Stefano

Ricostruzione del segnaleRicostruire un segnale continuo da campioni discreti richiede di formulare ipotesi

sul segnale f(x) per generare informazione dove i dati sono mancanti. Ipotesi: Il segnale f(x)’ è lineare a tratti interpolazione lineare

1 2 3 4 52.5

f(x)’

Ricostruzione del segnale f(x)’– Convertire F[x] in una funzione continua f(x)’

– Ricostruire f(x)’ a coordinate non intere attraverso correlazione

x

[ ],( ) '

0 altrimentiF x x

f x∈⎧

= ⎨⎩

( ) ' [ ]f x h F x= ⊗

Page 52: A.a. 2007/2008 Elaborazione dell’immagine LSunina.stidue.net/Elaborazione di Segnali Multimediali/Materiale... · Rilevamento del moto, riconoscimento di oggetti, ricostruzione

Elaborazione dell’immagine LS Pietro Azzari, Luigi Di Stefano

Interpolazione lineare

Interpolazione lineare di un segnale unidimensionale discreto F[x]

1 2 3 4=i 5x*

f(x)’

x

Definiamo i parte intera inferiore di x*

Proprietà di triangoli simili* 4i x= =

(f(x*)-F[i])/(F[i+1]-F[i]) =(x*-i)/(i+1-i)f[x*] - F[i]=(x*-i)(F[i+1]-F[i])/(i+1-i) = (x*-i)F[i+1] - (x*-i)F[i]

f(x*)’

F[i]

f(x*)= (1-a) F[i] + a F[i+1], a=x*-if(x*)= F[x] H, F[x]=(F[i],F[i+1]) e H=(a,1-a) ⊗

a

Page 53: A.a. 2007/2008 Elaborazione dell’immagine LSunina.stidue.net/Elaborazione di Segnali Multimediali/Materiale... · Rilevamento del moto, riconoscimento di oggetti, ricostruzione

Elaborazione dell’immagine LS Pietro Azzari, Luigi Di Stefano

Interpolazione bilineare

Interpolazione bilineare di un segnale bidimensionale discreto: immagine I=F[i,j]

( , )i j

( , 1)i j +

( 1, )i j+

( 1, 1)i j+ +

( , )x y

( , ) (1 ) ( , ) ( , 1)

(1 )(1 ) [ , ] (1 ) [ 1, ] [ 1, 1] (1 ) [ , 1]

f x y b f x y b f x y

a b F i j a b F i jab F i j a b F i j

= − + + =

= − − + − + ++ + + − +

( , ) (1 ) [ , ] [ 1, ]f x y a F i j a F i j= − + +

ab

( , 1) (1 ) [ , 1] [ 1, 1]f x y a F i j a F i j+ = − + + + +

( , )x y

( , 1)x y +

1. Interp lin fra (i,j) e (i,j+1)

2. Interp lin fra (i,j) e (i,j+1)

3. Interp lin fra .1 e .2

4. Interp bilin fra (i,j),(i,j+1),(i+1,j),(i+1,j+1)

Page 54: A.a. 2007/2008 Elaborazione dell’immagine LSunina.stidue.net/Elaborazione di Segnali Multimediali/Materiale... · Rilevamento del moto, riconoscimento di oggetti, ricostruzione

Elaborazione dell’immagine LS Pietro Azzari, Luigi Di Stefano

Tecniche di interpolazione a confronto

Nearest neighbor Bilinear

Ideal Butterworth

Page 55: A.a. 2007/2008 Elaborazione dell’immagine LSunina.stidue.net/Elaborazione di Segnali Multimediali/Materiale... · Rilevamento del moto, riconoscimento di oggetti, ricostruzione

Elaborazione dell’immagine LS Pietro Azzari, Luigi Di Stefano

Appendice: Geometria delle omografie

( ), , ,1X Y Z=MScena

Immagine 1

Immagine 2

In che relazione stanno le due proiezioni?

⎡ ⎤= ⎣ ⎦m K R t M′ ′ ′ ′⎡ ⎤= ⎣ ⎦m K R t M

( ), ,x y w=m( ), ,x y w′ ′ ′ ′=m

1 1− −′ ′ ′ ′ ′ ′ ′⎡ ⎤ ⎡ ⎤ ⎡ ⎤= =⎣ ⎦ ⎣ ⎦ ⎣ ⎦m K R t M K R t R t K m

1

0

, dd

⎡ ⎤= →⎣ ⎦⎛ ⎞

= ∈ℜ⎜ ⎟⎝ ⎠

m K I M

K mM

M

C C’

m m’

Page 56: A.a. 2007/2008 Elaborazione dell’immagine LSunina.stidue.net/Elaborazione di Segnali Multimediali/Materiale... · Rilevamento del moto, riconoscimento di oggetti, ricostruzione

Elaborazione dell’immagine LS Pietro Azzari, Luigi Di Stefano

Geometria delle omografie1

1 dd

−−⎛ ⎞

′ ′ ′ ′ ′ ′ ′ ′⎡ ⎤= = +⎜ ⎟⎣ ⎦⎝ ⎠

K mm K R t K R K m K t

Traiettoria arbitraria R,t qualsiasi e scena planare d costante

1 1

00q

− −

⎛ ⎞⎜ ⎟′ ′ ′ ′ ′= + =⎜ ⎟⎜ ⎟⎝ ⎠

m K R K m K R K m

Pura rotazione attorno al centro di proiezione t’=01−′ ′ ′=m K R K m

1−′ ′=H K R K H è una matrice 3x3 semidefinita positiva di rango 3 nota come OMOGRAFIA