SBPL-Cruz / perception

PERCH 2.0 : Fast and Accurate GPU-based Perception via Search for Object Pose Estimation
https://sbpl-cruz.github.io/perception/
BSD 3-Clause "New" or "Revised" License
16 stars 5 forks source link

YCB models #133

Open ErinZhang1998 opened 3 years ago

ErinZhang1998 commented 3 years ago

In the Wiki for "Running 3-DOF : Conveyor Dataset ": https://github.com/SBPL-Cruz/perception/wiki/Running-With-Docker#running-3-dof--conveyor-dataset

It says: "Download the YCB Video object models from this link the place the downloaded models folder into the YCB_Video_Dataset follder."

However, when I check the code in perch.py https://github.com/SBPL-Cruz/perception/blob/4c97c2ef9f6fe24172cd459b5c0d6e01faad483d/sbpl_perception/src/scripts/tools/fat_dataset/perch.py#L119

https://github.com/SBPL-Cruz/perception/blob/4c97c2ef9f6fe24172cd459b5c0d6e01faad483d/sbpl_perception/src/scripts/tools/fat_dataset/perch.py#L121

From line 119 to 121, it seems like we need a textured_upright.ply file. But the downloaded models from this link do not have this file?

ErinZhang1998 commented 3 years ago

I was wondering if you could also make the textured.ply files for all YCB models available? Thanks a lot!

ErinZhang1998 commented 3 years ago

Turns out since 6Dof estimation at its current state does not optimize with color cost, textured pointcloud is not needed. Just output using open3d (which is called textured.ply to work with the code but doesn't actually have texture) seems to work right now.

import open3d as o3d
import os
dirpath = "/data/YCB_Video_Dataset/models/002_master_chef_can"
fname = os.path.join(dirpath, 'textured.obj')
copy_textured_mesh = o3d.io.read_triangle_mesh(fname)
o3d.io.write_triangle_mesh(os.path.join(dirpath, 'textured.ply'), copy_textured_mesh)

But it would still be helpful to obtain the actual textured pointcloud if the author has them

aditya2592 commented 3 years ago

Hi, for 6dof pose estimation you wouldnt need textured models for the current approach. The RGB part is handled by the instance segmentation network