NVlabs / Deep_Object_Pose

Deep Object Pose Estimation (DOPE) – ROS inference (CoRL 2018)
Other
1.03k stars 287 forks source link

Use training script train2 for NDDS data #264

Open WilkoLu opened 2 years ago

WilkoLu commented 2 years ago

Hello

I need NDDS Data to work on the "new" training script with tensorboard visualisation. It seems not possible yet. Do you consider to improve in this way? I want to use NDDS data for training and NVISII data for testing. NDDS is pretty performant in creating big datasets for training and NVISII delivers good looking testing datasets.

TontonTremblay commented 2 years ago

Did you try? @mintar I think made everything backward compatible!

mintar commented 2 years ago

I had to check myself to see what I did. This is what I did:

The second point is @WilkoLu 's problem.

However, I think the differences are small, so it should be easy to adapt train2 to the NDSS format. Here is what's currently failing:

I think the best solution here would be to fix the NDSS json data (search/replace), because NDSS only stores visible objects (but always sets visibility to "0"), whereas "visibility = 0" in NVISII means that the object actually is occluded/out of view, so it must be discarded.

Here we could check whether we have 8 or 9 points in the json file, and if it's 8, read "projected_cuboid_centroid" and append it, like I did in the old train.py script:

https://github.com/NVlabs/Deep_Object_Pose/blob/538d12bf1aef17d3f094eaefe4f82d46d69b0575/scripts/train.py#L294-L300

I think in the long run we should unify train.py and train2, there's no point in keeping both around.