DLR-RM / AugmentedAutoencoder

Official Code: Implicit 3D Orientation Learning for 6D Object Detection from RGB Images
MIT License
339 stars 97 forks source link

No 'vertex_scale' in meshrenderer_phong __init__() #24

Closed wangg12 closed 5 years ago

wangg12 commented 5 years ago

It seems there is a bug in SceneRenderer.

BTW: what is the difference between meshrenderer_phong and meshrenderer? And what is the difference between cad and reconst models? Why do you use meshrenderer_phong for reconst models and meshrender for cad models? In LINEMOD, is the model_type "reconst" or "cad"?

MartinSmeyer commented 5 years ago

Yep sorry for the naming. It comes from the T-LESS dataset, where you have CAD models (without vertex color) and reconstruction models (with vertex color). Reconstructions are rendered with the meshrenderer_phong and CAD models with the meshrenderer (could have been merged). LineMOD uses reconst since models have a vertex color. You are right with the vertex_scale, I will fix it today.

wangg12 commented 5 years ago

@MartinSmeyer After this fix, I encountered with another issue.

traceback (most recent call last):
  File "detection_utils/generate_syn_det_train_wg.py", line 116, in <module>
    bgr, obj_info = renderer.render()
  File "auto_pose/meshrenderer/scenerenderer.py", line 130, in render
    random_light=True,
  File "auto_pose/meshrenderer/meshrenderer_phong.py", line 288, in render_many
    glDrawElementsIndirect(GL_TRIANGLES, GL_UNSIGNED_INT, ctypes.c_void_p(o * 4 * 5))
TypeError: cannot be converted to pointer

After changing o = int(obj_ids[i]) before that line, it goes well.