سؤال

I have done some camera calibration for 3D reconstruction from multi-view images. I want to compare my result with the ground truth for the camera matrices. I have worked with the dinosaur data set from: http://www.robots.ox.ac.uk/~vgg/data/data-mview.html

I want to know what is the best way to match the camera projection matrices to do the evaluation on them. And if it is better to do the evaluation on the camera matrices than the 3D points.

هل كانت مفيدة؟

المحلول

The problem with comparing 3D reconstruction results is, that your reconstruction is only up to scale. Unless you have some kind of reference object with known dimension in your scene the absolute scale of your reconstruction is arbitrary.

The same goes for the orientation of the cameras and the 3d points. Think about rotating or moving the cameras together with the 3d points. The projected images in the cameras look identical, but the 3D positions of cameras and points will change.

If you can establish some kind of correspondence between the original ground truth and the reconstruction, it is possible to align the two scenes first and then compare the 3D positions. This process is sometimes called registration.

For example if you know where the original camera positions are, you can compute the transformation that moves all reconstructed cameras to the known ground truth positions. Afterwards you can apply the same transformation to the 3D points and start comparing the transformed reconstruction to the ground truth.

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top