Tôi đã hiệu chuẩn máy ảnh của mình và tìm thấy các thông số nội tại (K). Ngoài ra tôi đã tính toán ma trận cơ sở (F).Cách đúng để trích xuất Bản dịch từ Ma trận cơ bản qua SVD
Bây giờ E = K_T * F * K. Càng xa càng tốt.
Bây giờ chúng ta vượt qua Matrix Essential (E) để SVD sử dụng các giá trị phân hủy (U, W, V) để trích xuất các Rotation và Dịch:
essentialMatrix = K.Transpose().Mul(fund).Mul(K);
CvInvoke.cvSVD(essentialMatrix, wMatrix, uMatrix, vMatrix, Emgu.CV.CvEnum.SVD_TYPE.CV_SVD_DEFAULT);
** Câu hỏi) Tại thời điểm này, hai phương pháp đã được đề xuất, và nó đã nhầm lẫn cho tôi cái nào thực sự đưa ra quyền answer- đặc biệt cho dịch:
Tại phương pháp đầu tiên enter link description here tác giả gợi ý để tính toán R, T như sau:
Nhưng trong phương pháp thứ hai [http://isit.u-clermont1.fr/~ab/Classes/DIKU-3DCV2/Handouts/Lecture16.pdf] tác giả cung cấp công thức khác cho T được + U, -U như hình dưới đây:
Tôi đang thực hiện điều này trên C# Net sử dụng thư viện OpenCV. Có ai biết công thức dịch nào là đúng không?
Liên kết cho phương pháp thứ hai là chết. Tài liệu được chuyển đến: http://igt.ip.uca.fr/~ab/Classes/DIKU-3DCV2/Handouts/Lecture16.pdf –