Scopri milioni di eBook, audiolibri e tanto altro ancora con una prova gratuita

Solo $11.99/mese al termine del periodo di prova. Cancella quando vuoi.

Tensore trifocale: Esplorare la profondità, il movimento e la struttura nella visione artificiale
Tensore trifocale: Esplorare la profondità, il movimento e la struttura nella visione artificiale
Tensore trifocale: Esplorare la profondità, il movimento e la struttura nella visione artificiale
E-book202 pagine2 ore

Tensore trifocale: Esplorare la profondità, il movimento e la struttura nella visione artificiale

Valutazione: 0 su 5 stelle

()

Leggi anteprima

Info su questo ebook

Cos'è il tensore trifocale


Nel regno della visione artificiale, il tensore trifocale è una matrice numerica che vanta dimensioni di 3×3×3 e comprende tutte le relazioni geometriche proiettive tra le tre prospettive. Le coordinate dei punti o delle linee corrispondenti in tre diverse viste sono correlate tra loro mediante questo metodo, che è indipendente dalla struttura della scena e si basa esclusivamente sul movimento relativo tra le tre viste e sui parametri di calibrazione intrinseci di ciascuna vista . Di conseguenza, il tensore trifocale può essere pensato come la generalizzazione della matrice fondamentale in tre diverse prospettive. Nonostante il tensore sia composto da 27 elementi, è importante evidenziare che solo 18 di questi elementi sono realmente indipendenti.


Come trarrai beneficio


(I) Approfondimenti e convalide sui seguenti argomenti:


Capitolo 1: Tensore_trifocale


Capitolo 2: Rango_(algebra_lineare)


Capitolo 3: Traccia_(algebra_lineare)


Capitolo 4: Analisi_componente_principale


Capitolo 5: Traslazione_(geometria)


Capitolo 6: Prodotto_Kronecker


Capitolo 7: Autovalori_e_autovettori


Capitolo 8: Spazio_tridimensionale


Capitolo 9: Matrice_Fondamentale_(visione_computer)


Capitolo 10: Rilevamento_angolo


(II) Rispondere alle principali domande del pubblico sul tensore trifocale.


(III) Esempi reali per l'utilizzo del tensore trifocale in molti campi.


A chi è rivolto questo libro


Professionisti, studenti universitari e laureati, appassionati, hobbisti e coloro che vogliono andare oltre le conoscenze o le informazioni di base per qualsiasi tipo di tensore trifocale.

LinguaItaliano
Data di uscita1 mag 2024
Tensore trifocale: Esplorare la profondità, il movimento e la struttura nella visione artificiale

Leggi altro di Fouad Sabry

Autori correlati

Correlato a Tensore trifocale

Titoli di questa serie (100)

Visualizza altri

Ebook correlati

Intelligenza artificiale e semantica per voi

Visualizza altri

Articoli correlati

Recensioni su Tensore trifocale

Valutazione: 0 su 5 stelle
0 valutazioni

0 valutazioni0 recensioni

Cosa ne pensi?

Tocca per valutare

La recensione deve contenere almeno 10 parole

    Anteprima del libro

    Tensore trifocale - Fouad Sabry

    Capitolo 1: Tensore trifocale

    Per quanto riguarda la visione artificiale, il tensore trifocale (anche tritensore) è un array 3×3×3 di numeri (cioè un tensore) che rappresenta l'intero insieme delle relazioni tra tre punti di vista nella geometria proiettiva.

    Le coordinate tridimensionali di linee e punti paralleli sono correlate, non avendo nulla a che fare con la topologia della scena e tutto a che fare con la mobilità relativa (cioè la posizione) tra le tre prospettive e i loro fattori di calibrazione innati.

    Quindi, il tensore trifocale può essere pensato come una versione tridimensionale della matrice di base.

    Si sottolinea che, sebbene il tensore sia costituito da 27 elementi, solo 18 di essi possono essere considerati veramente autosufficienti.

    Ci sono 11 gradi di libertà, o elementi indipendenti, nel cosiddetto tensore trifocale calibrato, che codifica la postura relativa delle telecamere fino alla scala globale mettendo in relazione le coordinate di punti e linee in tre viste date le loro proprietà intrinseche. A causa della diminuzione dei gradi di libertà, è necessario inserire un minor numero di corrispondenze nel modello, ma ciò va a scapito di una maggiore non linearità.

    Il tensore può anche essere visto come un insieme di tre matrici 3 x 3 di rango due {\mathbf T}_1, \; {\mathbf T}_2, \; {\mathbf T}_3 note come sezioni di correlazione.

    Supponendo che le matrici di proiezione di tre viste siano {\mathbf P}=[ {\mathbf I} \; | \; {\mathbf 0} ] , {\displaystyle {\mathbf {P} }'=[{\mathbf {A} }\;|\;{\mathbf {a} }_{4}]} e {\displaystyle {\mathbf {P} ''}=[{\mathbf {B} }\;|\;{\mathbf {b} }_{4}]} , le sezioni di correlazione del tensore corrispondente possono essere espresse in forma chiusa come

    {\mathbf T}_i={\mathbf a}_i {\mathbf b}_4^t - {\mathbf a}_4 {\mathbf b}_i^t, \; i=1 \ldots 3

    , dove {\mathbf a}_i, \; {\mathbf b}_i sono rispettivamente le i-esime colonne delle matrici della camera.

    In pratica, tuttavia, il tensore viene calcolato confrontando ciascuna delle tre prospettive per la corrispondenza di punti e linee.

    Le relazioni lineari tra linee e punti in tre immagini sono uno dei risultati più utili del tensore trifocale.

    Più specificamente, per le triplette di punti corrispondenti e per {\displaystyle {\mathbf {x} }\;\leftrightarrow \;{\mathbf {x} }'\;\leftrightarrow \;{\mathbf {x} }''} tutte le rette corrispondenti {\displaystyle {\mathbf {l} }\;\leftrightarrow \;{\mathbf {l} }'\;\leftrightarrow \;{\mathbf {l} }''} che li attraversano, sono valide le restrizioni tridimensionali elencate di seguito:

    {\displaystyle ({\mathbf {l} }^{\prime t}\left[{\mathbf {T} }_{1},\;{\mathbf {T} }_{2},\;{\mathbf {T} }_{3}\right]{\mathbf {l} }'')[{\mathbf {l} }]_{\times }={\mathbf {0} }^{t}}{\displaystyle {\mathbf {l} }^{\prime t}\left(\sum _{i}x_{i}{\mathbf {T} }_{i}\right){\mathbf {l} }''=0}{\displaystyle {\mathbf {l} }^{\prime t}\left(\sum _{i}x_{i}{\mathbf {T} }_{i}\right)[{\mathbf {x} }'']_{\times }={\mathbf {0} }^{t}}{\displaystyle [{\mathbf {x} }']_{\times }\left(\sum _{i}x_{i}{\mathbf {T} }_{i}\right){\mathbf {l} }''={\mathbf {0} }}{\displaystyle [{\mathbf {x} }']_{\times }\left(\sum _{i}x_{i}{\mathbf {T} }_{i}\right)[{\mathbf {x} }'']_{\times }={\mathbf {0} }_{3\times 3}}

    dove [\cdot]_{\times} indica la matrice del prodotto incrociato asimmetrico.

    La posizione di un punto in una terza vista può essere determinata da una coppia di punti corrispondenti in due viste utilizzando solo il tensore trifocale di tali viste. Il trasferimento di punti descrive questo fenomeno, che si applica anche alle linee e alle coniche. È possibile trasferire curve generiche come coniche modellandole prima come cerchi osculanti in una curva differenziale locale. Tuttavia, la questione dei tensori trifocali non calibrati è ancora nell'aria.

    Il caso standard prevede corrispondenze a sei punti con tre soluzioni.

    Negli ultimi anni si è giunti alla soluzione del problema del calcolo del tensore trifocale utilizzando solo nove corrispondenze lineari.

    Si dice che la stima calibrata del tensore trifocale sia estremamente impegnativa e richieda corrispondenze a quattro punti. Lo stesso metodo si è rivelato minimo anche con il grado 216 per la situazione combinata di corrispondenze a tre punti e una corrispondenza lineare.

    {Fine Capitolo 1}

    Capitolo 2: Rango (algebra lineare)

    Il rango di una matrice A è il numero di dimensioni dello spazio vettoriale formato (o estratto) dalle sue colonne in algebra lineare. Pertanto, la non degenerazione delle equazioni lineari e delle trasformazioni lineari memorizzate da A può essere quantificata in termini di rango. Il rango può essere inteso in vari modi. Il rango di una matrice è una proprietà molto elementare.

    Il rango è tipicamente rappresentato dai simboli rank(A) o rk (A); Il rango di una matrice viene definito in questa sezione. Esiste un'ampia gamma di potenziali significati, alcuni dei quali sono esplorati nella sezione Significati alternativi.

    Se A è un insieme, il suo rango di colonna è il numero di elementi nel suo spazio di colonne e il suo rango di riga è il numero di elementi nel suo spazio di riga.

    In algebra lineare, è un risultato del primo ordine che il rango di una colonna è sempre uguale al rango di una riga.

    (Tre dimostrazioni di questo risultato sono fornite in § Dimostrazioni che rango di colonna = rango di riga, di seguito.) Si consideri questa somma (ad esempio, contando il numero di righe e colonne univoche in A si ottiene il suo rango.

    Se una matrice ha lo stesso numero di righe e colonne della matrice più grande concepibile di quelle dimensioni, allora si dice che ha rango completo. Se una matrice non ha un rango completo, si dice che è carente di rango. Se una matrice ha meno righe che colonne, si dice che ha un deficit di rango.

    Il rango di una mappa lineare o di un operatore \Phi è definito come la dimensione della sua immagine:

    {\displaystyle \operatorname {rank} (\Phi ):=\dim(\operatorname {img} (\Phi ))}

    dove {\displaystyle \dim } è la dimensione di uno spazio vettoriale e {\displaystyle \operatorname {img} } è l'immagine di una mappa.

    La matrice

    {\displaystyle {\begin{bmatrix}1&0&1\\-2&-3&1\\3&3&0\end{bmatrix}}}

    ha rango 2; Ci sono almeno due colonne linearmente indipendenti (la prima e la seconda), quindi il rango è almeno 2, ma il rango non è maggiore di 3 poiché la terza colonna è una combinazione lineare delle prime due (la prima meno la seconda).

    La matrice

    {\displaystyle A={\begin{bmatrix}1&1&0&2\\-1&-1&0&-2\end{bmatrix}}}

    ha rango 1; Ci sono alcune colonne, quindi il rango è diverso da zero; Tuttavia, due colonne sono linearmente dipendenti l'una dall'altra. Allo stesso modo, l'inversione

    {\displaystyle A^{\mathrm {T} }={\begin{bmatrix}1&-1\\1&-1\\0&0\\2&-2\end{bmatrix}}}

    al primo posto, A.

    Infatti, dato che la trasposizione di A ha gli stessi vettori colonna dei vettori riga di A, dire che una matrice ha lo stesso rango della sua trasposizione è paragonabile a dire che il suo rango di colonna è lo stesso del suo rango di riga, cioè rank(A) = rank(AT).

    Trovare il rango di una matrice comporta in genere trasformarla in una forma più semplice, chiamata forma a scaglioni di riga, utilizzando solo semplici operazioni di riga. A causa della loro invertibilità, le operazioni di riga non alterano lo spazio di riga (e quindi il rango di riga) e traslano invece lo spazio di colonna in uno spazio isomorfo (quindi non modificano il rango di colonna). Il formato Row echelon rende il rango uguale alla somma dei numeri di pivot (o colonne di base) più il numero di righe diverse da zero.

    Si consideri la matrice A, che può essere scritta come

    {\displaystyle A={\begin{bmatrix}1&2&1\\-2&-3&1\\3&5&0\end{bmatrix}}}

    può essere scritto in forma compatta row-echelon utilizzando le successive operazioni di base di riga:

    {\displaystyle {\begin{aligned}{\begin{bmatrix}1&2&1\\-2&-3&1\\3&5&0\end{bmatrix}}&\xrightarrow {2R_{1}+R_{2}\to R_{2}} {\begin{bmatrix}1&2&1\\0&1&3\\3&5&0\end{bmatrix}}\xrightarrow {-3R_{1}+R_{3}\to R_{3}} {\begin{bmatrix}1&2&1\\0&1&3\\0&-1&-3\end{bmatrix}}\\&\xrightarrow {R_{2}+R_{3}\to R_{3}} \,\,{\begin{bmatrix}1&2&1\\0&1&3\\0&0&0\end{bmatrix}}\xrightarrow {-2R_{2}+R_{1}\to R_{1}} {\begin{bmatrix}1&0&-5\\0&1&3\\0&0&0\end{bmatrix}}~.\end{aligned}}}

    Di conseguenza, il rango della matrice A è 2, poiché la matrice finale (in forma di scaglione di riga) ha due righe che non sono 0.

    L'eliminazione gaussiana di base (decomposizione LU) può essere instabile quando viene impiegata nei calcoli in virgola mobile sui computer; Si consiglia invece una decomposizione che riveli il rango. La decomposizione del valore singolare (SVD) è un'alternativa potente, anche se ci sono alternative più economiche che sono ancora più robuste numericamente dell'eliminazione gaussiana, come la decomposizione QR con pivoting (la cosiddetta fattorizzazione QR che rivela il rango). Per la determinazione numerica del rango è necessaria una scelta pratica che dipende sia dalla matrice che dall'applicazione, come ad esempio un criterio per selezionare quando un valore, come un valore singolare dell'SVD, deve essere considerato come zero.

    In algebra lineare, l'uguaglianza dei ranghi di colonne e righe di una matrice è una proprietà fondamentale.

    Sono stati forniti numerosi esempi.

    Uno dei più elementari è stato abbozzato in § Rank dalle forme a scaglioni di fila.

    Una dimostrazione alternativa è presentata qui:

    È facile dimostrare che un'operazione di riga di base non ha alcun effetto sul rango di riga o sul rango di colonna. A causa della natura dell'eliminazione gaussiana, che coinvolge solo semplici operazioni di riga, il rango di riga e il rango di colonna di una matrice vengono entrambi conservati nella sua versione a scaglioni di riga ridotta. La matrice può essere trasformata in una matrice di identità eseguendo alcune operazioni di colonna più elementari, ad esempio l'aggiunta di una riga di zeri a ciascun lato. Ancora una volta, questo non ha alcun effetto sull'ordine delle righe o delle colonne. Il numero di matrici con voci diverse da zero è direttamente proporzionale al rango di ogni riga e colonna.

    Vengono fornite altre due prove di questo risultato. Il primo è indipendente dal campo e impiega solo le caratteristiche elementari delle combinazioni lineari di vettori. Wardlaw è il fondamento della dimostrazione (2005).

    Sia A una  matrice m × n.

    Assumiamo che r sia il rango della colonna di A, e sia c1, .., cr una base qualsiasi per lo spazio della colonna di A.

    Posizionali come colonne di una matrice m × r C.

    Ognuna delle colonne di A può essere scritta come una combinazione lineare delle colonne r di C.

    Ciò significa che esiste una matrice r × n R tale che A = CR.

    R è la matrice la cui i-esima colonna è formata dai coefficienti che danno l' i-esima colonna di A come combinazione lineare delle colonne r di C.

    Per riformulare, R è la matrice che contiene i multipli per le basi dello spazio delle colonne di A (che è C), per completare la lettera A.

    Ora, combinando linearmente le r righe di R si ottiene ogni riga di A.

    Pertanto, le righe in R si estendono sia nello spazio delle righe A che in B, secondo il lemma di scambio di Steinitz, r è il rango massimo di riga che A può avere.

    È la prova che A ha un rango di riga inferiore rispetto a un rango di colonna.

    Qualsiasi matrice può trarre beneficio da questa conclusione, quindi utilizzare la soluzione per la trasposizione di A.

    Quando A viene trasposto, il suo rango di riga diventa il suo rango di colonna e il suo rango di colonna diventa il suo rango di riga, Questo dimostra la disuguaglianza inversa e ci dà che il rango di riga di A e il rango di colonna sono uguali.

    Per un concetto correlato, vedere Fattorizzazione del rango.

    Sia A una  matrice m × n con voci nei numeri reali il cui rango di riga è r.

    Pertanto, A ha r righe, quindi r è la dimensione del suo spazio di righe.

    Siano x1, x2, ..., xr una base dello spazio delle righe di A.

    Affermiamo che i vettori Ax1, Ax2, ..., Axr sono linearmente indipendenti.

    Per capire, si consideri una relazione omogenea lineare che coinvolge questi vettori con coefficienti scalari c1, c2, ..., cr:

    {\displaystyle 0=c_{1}A\mathbf {x} _{1}+c_{2}A\mathbf {x} _{2}+\cdots +c_{r}A\mathbf {x} _{r}=A(c_{1}\mathbf {x} _{1}+c_{2}\mathbf {x} _{2}+\cdots +c_{r}\mathbf {x} _{r})=A\mathbf {v} ,}

    dove v = c1x1 + c2x2 + ⋯ + crxr.

    Notiamo due cose: una combinazione lineare di vettori nello spazio delle righe di A è indicata con v, quindi v deve esistere nelle righe di A, inoltre (b), perché Av = 0, Ogni vettore di riga di A e il

    Ti è piaciuta l'anteprima?
    Pagina 1 di 1