Download - Progettazione di sistemi di controllo
![Page 1: Progettazione di sistemi di controllo](https://reader035.vdocuments.pub/reader035/viewer/2022062501/56816597550346895dd86dce/html5/thumbnails/1.jpg)
1
Progettazione di sistemi di controllo
Docente: Prof. Luca Schenato
Studenti: Bristot Francesca Pattarello Marco Schmiedhofer Klaus
Padova, il 18/02/2010
![Page 2: Progettazione di sistemi di controllo](https://reader035.vdocuments.pub/reader035/viewer/2022062501/56816597550346895dd86dce/html5/thumbnails/2.jpg)
2
Autocalibrazione distribuita di videocamere fisse con vincoli di comunicazione dove una
frazione di telecamere e calibrata
Titolo:
![Page 3: Progettazione di sistemi di controllo](https://reader035.vdocuments.pub/reader035/viewer/2022062501/56816597550346895dd86dce/html5/thumbnails/3.jpg)
3
Introduzione
SCOPO: Trovare la posizone delle N videocamere di una rete di sorveglianza sapendo che solo n<<N sono calibrate.
DATI:Parametri interni delle videocamere.
PERCHE’: La calibrazione “manuale” richiede troppo tempo e risorse.
![Page 4: Progettazione di sistemi di controllo](https://reader035.vdocuments.pub/reader035/viewer/2022062501/56816597550346895dd86dce/html5/thumbnails/4.jpg)
4
Teoria base
Modello Pin-hole
RPiano immagine
C Centro ottico
f focale
F piano focale
Z asse ottico
![Page 5: Progettazione di sistemi di controllo](https://reader035.vdocuments.pub/reader035/viewer/2022062501/56816597550346895dd86dce/html5/thumbnails/5.jpg)
5
Matrice di proiezione
m=PMm= punto piano immagineM= punto ‘mondo’
P=K[I 0]GK
Matrice di proiezione:
![Page 6: Progettazione di sistemi di controllo](https://reader035.vdocuments.pub/reader035/viewer/2022062501/56816597550346895dd86dce/html5/thumbnails/6.jpg)
6
Metodo
1) Traiettoria casuale davanti alle videocamere RACCOLTA FRAME DALLA RETE
2) Calcolo matrici fondamentali per ogni coppia CALCOLO BASELINE E DISTANZE
3) Trovo il cammino minimo GRAFO PESATO, CAMMINO MINIMO 4) Ricalibro la rete DIMINUZIONE DELL’ERRORE
1 2F
![Page 7: Progettazione di sistemi di controllo](https://reader035.vdocuments.pub/reader035/viewer/2022062501/56816597550346895dd86dce/html5/thumbnails/7.jpg)
7
Matrice F
DATE min 8 corrispondenze m1m2
TROVO F tale che:
N.B. F non precisa! Va affinata.
ALGORITMO DEGLI 8 PUNTI
![Page 8: Progettazione di sistemi di controllo](https://reader035.vdocuments.pub/reader035/viewer/2022062501/56816597550346895dd86dce/html5/thumbnails/8.jpg)
8
Funzione di costo
STIMA DI MASSIMA VEROSIMIGLIANZA DI F
Si usa il metodo Gold Standard
Si minimizza una distanza geometrica, l’errore di riproiezione
![Page 9: Progettazione di sistemi di controllo](https://reader035.vdocuments.pub/reader035/viewer/2022062501/56816597550346895dd86dce/html5/thumbnails/9.jpg)
9
Matrice essenziale
Fattorizzazione SVD E=SR
R
Traslazione Rotazione
A meno di un fattore di scala
![Page 10: Progettazione di sistemi di controllo](https://reader035.vdocuments.pub/reader035/viewer/2022062501/56816597550346895dd86dce/html5/thumbnails/10.jpg)
Quanto distanti sono le telecamere tra di loro?
Problema di base:
![Page 11: Progettazione di sistemi di controllo](https://reader035.vdocuments.pub/reader035/viewer/2022062501/56816597550346895dd86dce/html5/thumbnails/11.jpg)
L’algoritmo DLT e quello degli 8 punti porta a conoscere le seguenti matrici
Semplifichiamo ulteriormente il problema....
Problema di base:
![Page 12: Progettazione di sistemi di controllo](https://reader035.vdocuments.pub/reader035/viewer/2022062501/56816597550346895dd86dce/html5/thumbnails/12.jpg)
Si tratta dunque di trovare la lunghezza della retta rossa, detta baseline.
Calcolo baseline:
Troviamo un riferimento intelligente....
![Page 13: Progettazione di sistemi di controllo](https://reader035.vdocuments.pub/reader035/viewer/2022062501/56816597550346895dd86dce/html5/thumbnails/13.jpg)
Il sistema di riferimento utilizzato è evidenziato in azzurro
Calcolo baseline:
![Page 14: Progettazione di sistemi di controllo](https://reader035.vdocuments.pub/reader035/viewer/2022062501/56816597550346895dd86dce/html5/thumbnails/14.jpg)
Rispetto al nuovo riferimento l’equazione del piano diventa:
Per l’equazione della retta si ha invece bisogno di conoscere:Il punto in cui passa è C1=[0,0,0]T il vettore direzionale della retta rappresentato nel sistema di riferimento azzurro è dato da:
Equazioni retta e piano:
X=-differenza tra altezze delle telecamere=-diff
Dove C2 è rappresentato rispetto al sistema di riferimento solidale alla seconda telecamera ed è noto a meno di un fattore di scala
![Page 15: Progettazione di sistemi di controllo](https://reader035.vdocuments.pub/reader035/viewer/2022062501/56816597550346895dd86dce/html5/thumbnails/15.jpg)
Mettendo a sistema si ottiene il punto C2=[X,Y,Z]T rispetto al nuovo sistema di riferimento
Pertanto il fattore di scala si calcola come
Sistema:
![Page 16: Progettazione di sistemi di controllo](https://reader035.vdocuments.pub/reader035/viewer/2022062501/56816597550346895dd86dce/html5/thumbnails/16.jpg)
Le altezze nelle telecamere sono ricavate dalla seguente formula:
Altezze:
Dove:H omologia tra il piano testa e il piano dei piedil∞ è la vanishing linev∞ è il vanishing pointh altezza operatorez altezza telecamera
![Page 17: Progettazione di sistemi di controllo](https://reader035.vdocuments.pub/reader035/viewer/2022062501/56816597550346895dd86dce/html5/thumbnails/17.jpg)
Vanishing line e Vanishing Point
Immagine vanishiang line e vanishing point
Calcolo altezze:
![Page 18: Progettazione di sistemi di controllo](https://reader035.vdocuments.pub/reader035/viewer/2022062501/56816597550346895dd86dce/html5/thumbnails/18.jpg)
Prima calibrazione:
![Page 19: Progettazione di sistemi di controllo](https://reader035.vdocuments.pub/reader035/viewer/2022062501/56816597550346895dd86dce/html5/thumbnails/19.jpg)
Trasformata di Hough
Calibrazione Stereo:
![Page 20: Progettazione di sistemi di controllo](https://reader035.vdocuments.pub/reader035/viewer/2022062501/56816597550346895dd86dce/html5/thumbnails/20.jpg)
La calibrazione viene eseguita in maniera incrementale
Calibrazione della rete:
![Page 21: Progettazione di sistemi di controllo](https://reader035.vdocuments.pub/reader035/viewer/2022062501/56816597550346895dd86dce/html5/thumbnails/21.jpg)
Simulazioni Stereo:Software utilizzato per le simulazioni: CINEMA 4D
![Page 22: Progettazione di sistemi di controllo](https://reader035.vdocuments.pub/reader035/viewer/2022062501/56816597550346895dd86dce/html5/thumbnails/22.jpg)
Con piu’ telecamere l’errore peggiora?
Ma a cosa è dovuto questo peggioramento?....
Simulazioni rete:
![Page 23: Progettazione di sistemi di controllo](https://reader035.vdocuments.pub/reader035/viewer/2022062501/56816597550346895dd86dce/html5/thumbnails/23.jpg)
PixellizzazioneCliccare sui punti coniugatiAlgoritmo 8 punti, errori dovuti a:
Tutto questo si riflette sulle matrici R e t sbagliando quindi il versore direzionale della baseline al piu di un grado
Errori:
linearizzazione cattivo condizionamento
![Page 24: Progettazione di sistemi di controllo](https://reader035.vdocuments.pub/reader035/viewer/2022062501/56816597550346895dd86dce/html5/thumbnails/24.jpg)
Per diminuire tale errore l’unico modo è raffinare la matrice F con un algoritmo di costo non lineare come già evidenziato oppure Ricalibrare il sistema.
Teorema della corda:
![Page 25: Progettazione di sistemi di controllo](https://reader035.vdocuments.pub/reader035/viewer/2022062501/56816597550346895dd86dce/html5/thumbnails/25.jpg)
25
Ricalibrazione:
Calcolo della distanza tra ogni coppia di telecamere
Costruzione di un grafo pesato (distanze)
Ricerca del cammino minimo da ogni telecamera incognita verso una nota
Eliminazione degli cammini ridondanti
Nuova sequenza di calibrazione
![Page 26: Progettazione di sistemi di controllo](https://reader035.vdocuments.pub/reader035/viewer/2022062501/56816597550346895dd86dce/html5/thumbnails/26.jpg)
26
Concetti utilizzati:
Grafo pesato
Matrice di adiacenza
Lista calibrata Algoritmo di Dijkstra
![Page 27: Progettazione di sistemi di controllo](https://reader035.vdocuments.pub/reader035/viewer/2022062501/56816597550346895dd86dce/html5/thumbnails/27.jpg)
27
Grafo pesato:
Definizione:
vi ….. Vertice = telecamereei ….. Arco = distanza tra telecamere
Nota: La distanza si trova ovviamente solo se il campo visivo delle due telecamere i ed j si intersecca.
![Page 28: Progettazione di sistemi di controllo](https://reader035.vdocuments.pub/reader035/viewer/2022062501/56816597550346895dd86dce/html5/thumbnails/28.jpg)
28
Matrice di adiacenza:
Definizione:
Un grafo di N vertici puo` essere rappresentato da una matrice A di dimensione NxN. Nel nostro caso gli elementi sono definiti:
![Page 29: Progettazione di sistemi di controllo](https://reader035.vdocuments.pub/reader035/viewer/2022062501/56816597550346895dd86dce/html5/thumbnails/29.jpg)
29
Definizione:
Array L di lunghezza N (numero di telecamere)
L(i) = 0, telecamera incognita L(i) = 1, telecamera nota
Lista calibrata:
1 0 0 0 0 1 0 0
![Page 30: Progettazione di sistemi di controllo](https://reader035.vdocuments.pub/reader035/viewer/2022062501/56816597550346895dd86dce/html5/thumbnails/30.jpg)
30
Algoritmo di Dijkstra:
Definizione:
Trova i camimini minimi in un grafo con pesi non negativi. In particolare il cammino minimo che unisce due nodi precisi del grafo.
Valori in ingresso: Nodo di partenza agente incognitoNodo di arrivo agente notoMatrice di adiacenza (Grafo)
![Page 31: Progettazione di sistemi di controllo](https://reader035.vdocuments.pub/reader035/viewer/2022062501/56816597550346895dd86dce/html5/thumbnails/31.jpg)
31
Modo di operare:
1) Cerchiamo la prima telecamera incognita nella lista calibrata marcata con uno zero
2) Calcoliamo tutti cammini di questa verso le calibrate:
![Page 32: Progettazione di sistemi di controllo](https://reader035.vdocuments.pub/reader035/viewer/2022062501/56816597550346895dd86dce/html5/thumbnails/32.jpg)
32
Modo di operare [2]:
3) Dijkstra trova il cammino minimo
4) Ripetiamo il procedimento (N-n)-volte, per ogni agente incognito
(N-n) cammini minimi: Puo’ essere che i cammini siano ridondanti
![Page 33: Progettazione di sistemi di controllo](https://reader035.vdocuments.pub/reader035/viewer/2022062501/56816597550346895dd86dce/html5/thumbnails/33.jpg)
33
Modo di operare [3]:5) Ordiniamo in maniera decrescente
6) Calibriamo gli agenti contenuti nella prima sequenza
7) Scelgo la successiva:
E’ inclusa nella precedente?
Trovo rete ricalibrata
Si: Elimino
No: Calibro agenti della sequenza
![Page 34: Progettazione di sistemi di controllo](https://reader035.vdocuments.pub/reader035/viewer/2022062501/56816597550346895dd86dce/html5/thumbnails/34.jpg)
34
Commenti:
Diminuzione dell’errore:
1. Calibrazione:
…..Agente noto
…..Agente incognito
d
d
d d d
4d
![Page 35: Progettazione di sistemi di controllo](https://reader035.vdocuments.pub/reader035/viewer/2022062501/56816597550346895dd86dce/html5/thumbnails/35.jpg)
35
Commenti [2]:
2. Ricalibrazione: …..Agente noto
…..Agente incognito
d
d d d
2d 2d
![Page 36: Progettazione di sistemi di controllo](https://reader035.vdocuments.pub/reader035/viewer/2022062501/56816597550346895dd86dce/html5/thumbnails/36.jpg)
36
Commenti [3]:
L’errore e’ proporzionale alla distanza:
Calibrazione: dmax = 4dRicalibrazione: dmax = 2d
La ricalibrazione diminuisce l’errore sulla posizione di ogni agente
![Page 37: Progettazione di sistemi di controllo](https://reader035.vdocuments.pub/reader035/viewer/2022062501/56816597550346895dd86dce/html5/thumbnails/37.jpg)
37
Estensione PTZ:
Obiettivo:
Trovare la rotazione di ogni PTZ rispetto al riferimento mondo
Modellizzare una telecamera PTZ
Espressione della Rotazione totale con Pan e Tilt
![Page 38: Progettazione di sistemi di controllo](https://reader035.vdocuments.pub/reader035/viewer/2022062501/56816597550346895dd86dce/html5/thumbnails/38.jpg)
38
Dati iniziali:
Rete di telecamere calibrata Rotazione tra ogni coppia di telecamere Rotazione delle telecamere note rispetto il riferimento
mondo Tutti i cammini minimi
Inizialmente Modello pinhole con la PTZ a riposo:
RPAN = 0 e RTILT = 0
Centro ottico coincide con l’asse di rotazione della PTZ
![Page 39: Progettazione di sistemi di controllo](https://reader035.vdocuments.pub/reader035/viewer/2022062501/56816597550346895dd86dce/html5/thumbnails/39.jpg)
39
Rotazione della PTZ:
Riferimento mondo
Telecamera nota
Telecamera incognita
![Page 40: Progettazione di sistemi di controllo](https://reader035.vdocuments.pub/reader035/viewer/2022062501/56816597550346895dd86dce/html5/thumbnails/40.jpg)
40
Rotazioni:
![Page 41: Progettazione di sistemi di controllo](https://reader035.vdocuments.pub/reader035/viewer/2022062501/56816597550346895dd86dce/html5/thumbnails/41.jpg)
41
Rotazioni di una PTZ: Scelgo una telecamera con rotazione incognita (C3) Seguo il cammino minimo verso la telecamera nota (C1)
Ogni telecamera che passo, moltiplico per la matrice di rotazione:
mondoR3 = R2 R R-1
C3 C2 C1
Sistema di riferimento mondo
~
R2 R R-1~
![Page 42: Progettazione di sistemi di controllo](https://reader035.vdocuments.pub/reader035/viewer/2022062501/56816597550346895dd86dce/html5/thumbnails/42.jpg)
42
Pan e Tilt:
Se le PTZ si spostano dalla posizone di riposo, le telecamere risultano di nuovo scalibrate
Modifichiamo il modello delle PTZ
Inseriamo le rotazioni:
Pan RPAN (rotazione orizzontale) Tilt RTILT (rotazione verticale)
![Page 43: Progettazione di sistemi di controllo](https://reader035.vdocuments.pub/reader035/viewer/2022062501/56816597550346895dd86dce/html5/thumbnails/43.jpg)
43
Video rotazione Pan e Tilt
![Page 44: Progettazione di sistemi di controllo](https://reader035.vdocuments.pub/reader035/viewer/2022062501/56816597550346895dd86dce/html5/thumbnails/44.jpg)
44
Matrici rotazione Pan e Tilt
![Page 45: Progettazione di sistemi di controllo](https://reader035.vdocuments.pub/reader035/viewer/2022062501/56816597550346895dd86dce/html5/thumbnails/45.jpg)
45
Rotazione di una PTZ:
Quindi la rotazione totale della telecamera rispetto al riferimento mondo e’:
mondoR3,PTZ = RPAN RTILT mondoR3
Vantaggio: Avendo svincolato i riferimenti tra le singole
telecamere, la rete resta calibrata anche in seguito alla rottura di una o pi`u telecamere.
![Page 46: Progettazione di sistemi di controllo](https://reader035.vdocuments.pub/reader035/viewer/2022062501/56816597550346895dd86dce/html5/thumbnails/46.jpg)
46
Conclusioni:
Risultati: Calibrazione dell’intera rete di videocamere con metodi per migliorare la stima della posizione.
Algoritmo per il calcolo del fattore di scala Calcolo baseline
L’algoritmo non porta a risultati perfetti, infatti errori minimi sulla stima della rototraslazione (anche un solo grado)
“crescono” con la distanza.
Teorema della corda
![Page 47: Progettazione di sistemi di controllo](https://reader035.vdocuments.pub/reader035/viewer/2022062501/56816597550346895dd86dce/html5/thumbnails/47.jpg)
47
Sviluppi futuri:
Perfezionamento della stima
Eliminazione dell’errore
Estensione al caso di videocamere Pan-Tilt-Zoom
Estensione al caso distribuito