5

Vorrei verificare che la mia comprensione della matrice fondamentale sia corretta e se è possibile calcolare F senza utilizzare coppie di punti corrispondenti.Calcolo della matrice fondamentale senza corrispondenza tra punti?

La matrice fondamentale è calcolato come F = inv(transpose(Mr))*R*S*inv(Ml) dove Mr e Ml sono fianco matrici fotocamera intrinseche destra e, R è la matrice di rotazione che porta la coordinata destra sistema a quella sinistra, e S è l'inclinazione matrice simmetrica

S = 0 -T[3] T[2] where T is the translation vector of the right coordinate system 
    T[3]  0 -T[1] from the left. 
    -T[2] T[1]  0 

Capisco che la matrice fondamentale può essere calcolata con l'algoritmo a 8 punti, ma non ho alcuna corrispondenza puntiforme. Tuttavia, entrambe le mie fotocamere sono calibrate, quindi ho tutti i parametri intrinseci ed estrinseci. Dalla definizione della matrice fondamentale di cui sopra, è possibile calcolare F con questi parametri da soli, giusto?

(Il problema che esperienza è che la matrice fondamentale sembra sbagliato se calcolato dalla sua definizione. Al momento, vorrei solo sapere se la mia comprensione di cui sopra è corretto.)

+2

Se si sono calibrate le telecamere e si hanno i parametri estrinseci e intrinseci, allora sì non è necessario il punto di corrispondenza. Le corrispondenze puntuali vengono utilizzate quando ** non si conoscono ** i parametri della telecamera (a.k.a. non calibrati) e si desidera determinare la Matrice fondamentale solo dalle corrispondenze puntiformi. Come stai calibrando le telecamere? C'è il codice che puoi mostrarci? – rayryeng

+0

@Booley Ciao, ho una domanda riguardante la matrice di inclinazione menzionata sopra nella formula della matrice F. Se le mie due fotocamere hanno i seguenti parametri estrinseci: {1,0,0,15 | 0,1,0,0 | 0, 0, 1, 0} e {1,0,0,25 | 0,1,0,0 | 0, 0, 1, 0} l'inclinazione tra di loro sarebbe:? {0, 0, 0 | 0, 0, -10 | 0, 10, 0} cercando di calcolare anche la matrice Fondamentale, per provare a trovare il corrispondente x 'punto per x usando F come detto sopra. –

risposta

0

Se avete la rotazione e traduzione di ciascuna delle telecamere rispetto a un sistema di coordinate comune, quindi è possibile calcolare la rotazione e la traduzione tra le telecamere e quindi utilizzare la formula che hai citato per calcolare la matrice fondamentale.

Un modo migliore per andare sarebbe quello di calibrare entrambe le telecamere insieme come un singolo sistema stereo. L'ultima versione (2014a) di Computer Vision System Toolbox ti consente di farlo. Vedi this example.

+0

Ciao, ho una domanda. Se le mie due fotocamere hanno i seguenti parametri estrinseci: {1,0,0,15 | 0,1,0,0 | 0, 0, 1, 0} e {1,0,0,25 | 0,1,0,0 | 0, 0, 1, 0} l'inclinazione tra di loro sarebbe:? {0, 0, 0 | 0, 0, -10 | 0, 10, 0} cercando di calcolare anche la matrice fondamentale, per provare a trovare il corrispondente x 'punto per x usando F come sopra indicato –

0

Preferirei farlo come le equazioni nel capitolo 9 di "Vista multipla geometria". Li ho verificati in Matlab. È giusto.

Se si può ottenere sia di matrice intrinseca ed estrinseca di entrambe le fotocamere, è possibile calcolare la matrice F come:

F = [E '] _ x * P' * p^+

(Si prega di fare riferimento a pp244 di "Multiple View Geometry" per definizioni dettagliate)