Ich versuche, Kameramatrix von wesentlicher Matrix zu extrahieren. Ich habe dazu einige Antworten gefunden.Kameramatrix von wesentlicher Matrix
determine camera rotation and translation matrix from essential matrix
Rotation and Translation from Essential Matrix incorrect
In diesen Antworten, schlagen sie mich newE
wo [U,S,V] = svd(E)
und newE = U*diag(1,1,0)*Vt
zu verwenden. Ich verstehe nicht, warum ich newE
verwenden muss. Wie ich weiß, sind singuläre Werte einzigartig. Das Ändern von Singulärwerten auf diag(1,1,0)
scheint also die Werte E
zu völlig anderen Werten zu machen.
Ich lese 'Multiple View Geometrie in Computer Vision' auch, aber es bezieht sich nur auf den Idealfall, d. H. Singuläre Werte sind (1,1,0). Ich habe den Grund der Verwendung newE
nicht gefunden.
Kann mir bitte jemand erklären, warum Leute newE
benutzen?
Danke für Ihre Antwort. Auf diese Weise können Einschränkungen erfüllt werden, aber das Ergebnis scheint falsch zu werden. Ist das Ergebnis sehr zuverlässig? – Bahamut