NVIDIA/Dataset_Synthesizer

Importing YCB Objects

bjbraun opened this issue · 19 comments

Hey,

in which way did you import the YCB objects into Unreal Engine such that you can use the meshes to render the images?
On the YCB Website (http://ycb-benchmarks.s3-website-us-east-1.amazonaws.com/) it is possible to download the processed data or the laserscan. However, they do not provide a .fbx file for the unreal engine.

How did you create these .fbx files?

Thank you really much in advance!

Best regards,
Björn

UE4 does support .obj files, you don't need to convert it to .fbx files.
The official YCB is not aligned well, so when we generating the training data for DOPE or FAT dataset, we re-aligned them. You can use the NVDU tool: https://github.com/NVIDIA/Dataset_Utilities#nvdu_ycb to download and generate the aligned YCB models. You can drag those .obj files into UE4 afterward.

Thank you really much for your fast reply!
Is it also possible to download objects that are not in your list? Or how would you proceed with a object that is not in your list?
I specifically need the 012_strawberry object.

Thank you really much for your fast reply!
Is it also possible to download objects that are not in your list? Or how would you proceed with a object that is not in your list?
I specifically need the 012_strawberry object.

Excuse me,Could you teach me how to apply the NDDS plugins to UE4?

Just follow the instructions in the Documentation of this repository, that is all I did. Then the plugin should be available in UE4 :).

@bjbraun You can import any .obj 3d model into UE4. The objects in my list are just better aligned so it's easier to debug: root of the 3d model is at the cuboid center, object is stand up straight with the main label facing out. You can realign those object yourself (or not) and the training should still be ok.

@thangt Alright, thank you really much!

@zxprog Just follow this link and press download to get the documentation. There everything is explained in detail :)

https://github.com/NVIDIA/Dataset_Synthesizer/blob/master/Documentation/NDDS.pdf

I am sorry but I do not know the solution to your problem. After I followed the download instructions, the NDDS plugin was listed in my project

@zxprog Are you trying to add the NDDS plugin into your own project? The current NDDS repo include the whole UE4 project setup include the plugin. If you place the NDDS plugins - mean all the plugins in this folder: https://github.com/NVIDIA/Dataset_Synthesizer/tree/master/Source/Plugins you should be able to have it work.

I have a question. How do you add the texture to the object in unreal engine? For example, I input the .obj of the master_chef_can from YCB to UE and used the provided texture image to create the material but when I applied the material on the object, it just not showed up.

@zxprog Yes, we are in 4.22. You can check our release page: https://github.com/NVIDIA/Dataset_Synthesizer/releases for the release notes.

@TrinhTUHH When you import the .obj into UE4 it should automatically import the model's texture and create a material for it too. Can you take a screenshot of how your imported object and material look like?

@zxprog UE4 version 4.22 and later require VisualStudio version 2017 and newer. You should install VS2017 to work with this project. The free VS2017 community version should be good enough to build the project

UE4 确实支持 .obj 文件,您不需要将其转换为 .fbx 文件。 官方的YCB没有很好的对齐,所以当我们为DOPE或FAT数据集生成训练数据时,我们重新对齐了它们。您可以使用 NVDU 工具:https : //github.com/NVIDIA/Dataset_Utilities#nvdu_ycb下载并生成对齐的 YCB 模型。之后您可以将这些 .obj 文件拖入 UE4。
image
AttributeError: 'NoneType' object has no attribute 'obj_settings'
I encountered this problem when using NVDU, could you please help me solve it

@TrinhNC I am having the same issue, importing the original models from YCB either fails because "textured could not be created because all of its polygons are degenerate" or the import is successful but the mesh itself is empty.

@thangt how do you align the model to work in UE4 ?