qinzheng93 / GeoTransformer

[CVPR2022] Geometric Transformer for Fast and Robust Point Cloud Registration
MIT License
671 stars 70 forks source link

why need gt transoform in demo.py #51

Closed MaybeOjbk closed 1 year ago

MaybeOjbk commented 1 year ago

in line 74 in experiments/geotransformer.3dmatch.stage4.gse.k3.max.oacl.stage2.sinkhorn/model.py , transform = data_dict['transform'].detach(), and in line 110 you use gt transform in get_node_correspondences. however If i don't know how the transform matrix of src to ref, how can I use demo.py

qinzheng93 commented 1 year ago

The ground-truth transform is mainly used to compute the registration error (RRE and RTE). And the ground-truth node correspondences are not used in the inference. If you do not need RRE and RTE, just give a np.eye(4).

MaybeOjbk commented 1 year ago

yes, the ground-truth transform is used to compute the registration error, however, when I run demo.py and set gt transform to np.eye(4), the predicted transform is also np.eye(4), when remaining the gt transform unchanged, the predicted transform have small changes

MaybeOjbk commented 1 year ago

first, I follow your instruction of demo.py, use gt transform image ,the second picture is that I changed the gt.npy, which is np.eye(4) image

qinzheng93 commented 1 year ago

Sorry, I forget to set model.eval() in the demo script. Fixed in the latest commit.