isl-org / Open3D

Open3D: A Modern Library for 3D Data Processing
http://www.open3d.org
Other
11.26k stars 2.29k forks source link

Customize-able open3d.visualization.VisualizerWithEditing? #2281

Closed DustinReagan closed 4 years ago

DustinReagan commented 4 years ago

I need to create a custom point-cloud and mesh selection and landmark placement tool.

Open3d's VisualizerWithEditing is very close to what I need, but I don't quite understand if/how I am able to inherit from or otherwise customize open3d.visualization.VisualizerWithEditing.

I need to be able to do 3 things:

1) Multi-selection (and de-selection) of point-cloud points. Currently the functionality is close: I can select a single point, or draw a screen-space bounding rectangle or polygon and use this to crop a point cloud or mesh.

2) Apply "labels" to points in a point-cloud. I suppose I could just apply a color to points, and each color represents a label?

I will use the functionality described in 1) & 2) to create training data for a deep-learning point-cloud segmentation model.

3) Place points on a mesh (i.e. place 'landmark points'). Each landmark needs to be labelled in some fashion.

Currently, I believe I would need to fork open3d and add a custom cpp visualizer and the appropriate python bindings to do something like this. Is that correct?

Thanks for any tips or information. Also, if you know of another (open source) framework or toolset I could use to accomplish the above, please let me know.

Zumbalamambo commented 4 years ago

+1

DustinReagan commented 4 years ago

After reviewing the state of the open3d c++ renderer/scene-manager (it looks like it's being heavily over-hauled at the moment), I decided to go with panda3d. I am still using the really nice mesh & point-cloud processing capabilities of open3d, but within an editor I have written using panda3d.