chensong1995 / HybridPose

HybridPose: 6D Object Pose Estimation under Hybrid Representation (CVPR 2020)
MIT License
418 stars 64 forks source link

About code for creating dataset format #20

Closed firstdeep closed 4 years ago

firstdeep commented 4 years ago

Thank you for sharing your research. I want to use T-less datasets. http://cmp.felk.cvut.cz/t-less/

I have some difficulties trying to fit your data-format.

Q1. How do you create a "cor{}.npy" file in "correspondences" folder? Is it created by running the project? (https://github.com/aecins/symseg) https://github.com/chensong1995/HybridPose/blob/master/lib/datasets/linemod.py#L211

Q2. What do the point and normal values of the "symmetries.txt" file in the "symmetries" folder mean and how do you create it? https://github.com/chensong1995/HybridPose/blob/master/lib/datasets/linemod.py#L212

Q3. Are pts2d and pts3d the same as FPS_2d and FPS_3d provided by pvnet? https://github.com/chensong1995/HybridPose/blob/master/lib/datasets/linemod.py#L206

pvnet fps_3d and fps_2d: https://github.com/zju3dv/clean-pvnet/blob/master/lib/datasets/linemod/linemod_to_coco.py#L270

Q4. Is the unit of translation in meters?

Thank you in advance for your reply.

If you have a code that makes datasets-format, please share it with us.

Regards

David

chensong1995 commented 4 years ago

Hello David,

Thanks for your questions!

For Q1 and Q2, please refer to the discussion here: #13.

Q3: I created 3D keypoints using the FPS implementation in PVNet. However, I am not exactly sure whether my coordinates align with theirs exactly.

Q4: Yes, the __getitem__() method in the Dataset object should output translation in meters.

I hope this helps.

firstdeep commented 4 years ago

Hello David,

Thanks for your questions!

For Q1 and Q2, please refer to the discussion here: #13.

Q3: I created 3D keypoints using the FPS implementation in PVNet. However, I am not exactly sure whether my coordinates align with theirs exactly.

Q4: Yes, the __getitem__() method in the Dataset object should output translation in meters.

I hope this helps.

Thank you for your answer.

I referred to the link you sent me. (https://github.com/chensong1995/HybridPose/issues/13)

I understand that link, you didn't use symseg Did you get symmetry_correspondences through the code you provided?

And I still wonder how you got 'symmetries.txt' from the code you provided. Finally, what is the reason for flips of rotation and translation? ex) R = F_flip R T = F_flip T

Thank you for your reply in advance.

Regards. David.

chensong1995 commented 4 years ago

Hello David,

I used SymSeg to label the 3D symmetry plane (symmetriex.txt), and the code script in the other link to project 3D symmetry and get 2D symmetry correspondences.

The flips are specific to the Linemod Occlusion dataset. The raw dataset uses a different coordinate convention than ours so there was a conversion process.

I hope this helps.

firstdeep commented 4 years ago

Thank you for your reply. Your reply was very helpful.

Is there another way to get symmetries.txt without using symseg?

cheers

david

chensong1995 commented 4 years ago

You can also just estimate the 3D symmetry plane using human eyes, and fill the plane parameters into symmetries.txt.

I hope this helps.