yewzijian / 3DFeatNet

3DFeat-Net: Weakly Supervised Local 3D Features for Point Cloud Registration
MIT License
220 stars 46 forks source link

Codes for calculating the Relative Translational Error (RTE) and Relative Rotation Error (RRE) #19

Closed MickShen7558 closed 4 years ago

MickShen7558 commented 4 years ago

Hi Zi Jian,

I am trying to run your trained model on the KITTI dataset and see how good it is. Do you still keep the codes for calculating the RTE and RRE so that I can reproduce the result you have in Table 4?

yewzijian commented 4 years ago

Hi, the calculation should be straightforward based on the formula given in [18]. But here's the matlab code I used:

    function [delta_t, delta_deg] = compareTransform(A, B)
        delta_t = norm(A(1:3, 4) - B(1:3, 4));
        delta_R = A(1:3, 1:3)' * B(1:3, 1:3);
        eul = rotm2eul(delta_R);
        delta_deg = sum(abs(eul)) * 180 / pi;
    end

Note that when running inference on the KITTI dataset using my model, you'll need to use the --randomize_points flag. Otherwise the KITTI points are sorted in a particular order which will worsen the performance.

The results will vary a bit because of this, but should be near the reported values.

Zi Jian

MickShen7558 commented 4 years ago

Great, Thanks!