kaolin icon indicating copy to clipboard operation
kaolin copied to clipboard

Adding part, semantic segmentation models

Open pushkalkatara opened this issue 5 years ago • 9 comments

This PR solves issue https://github.com/NVIDIAGameWorks/kaolin/issues/29

Currently under development.

  • [x] Implement Part segmentation model
  • [x] Implement Semantic segmentation model
  • [x] Add classification example with DGCNNClassifier and ModelNet dataset
  • [ ] Add part segmentation example with DGCNNPartSegmentation and ShapeNet dataset
  • [ ] Add semantic segmentation example with DGCNNSemanticSegmentation and S3DIS dataset.
  • [ ] Update documentation
  • [ ] Add example jupyter notebooks.
  • [ ] CLI command to run individual model.
  • [ ] Update CI with regression test(CLI command)

pushkalkatara avatar May 05 '20 02:05 pushkalkatara

Hi @krrish94 Currently I think dgcnn examples are not present in kaolin. Which dataset should I use to develop the examples?

pushkalkatara avatar May 05 '20 02:05 pushkalkatara

I feel ShapeNet or ModelNet should be a good start

krrish94 avatar May 05 '20 02:05 krrish94

Thanks for pointing out. I'll start working on it.

pushkalkatara avatar May 05 '20 02:05 pushkalkatara

Thanks for initiating the WIP PR.

One other thing you might want to add your TODO is a "regression" test that'll be run on CI, to ensure your example "runs". To the extent possible, it'll be great if you can adopt similar names for commandline args. (Also, the regression test will need to be run on the CI side, so we recommend keeping it small. 1 epoch, or fewer (on a very tiny subset of categories), should be good.

Example regression tests can be found here

krrish94 avatar May 05 '20 02:05 krrish94

Not really important rn, but there's minor bugfixes / flake8 issues that you should be able to fix.

http://54.165.235.207:8000/NVIDIAGameWorks/kaolin/232/1/2

(I'd recommend using black to lint, if you're unsure)

krrish94 avatar May 05 '20 02:05 krrish94

I have updated the TODOs with the unit tasks. Thanks for pointing out.

I did this as a very initial commit with raw models to learn development process. I'll fix the issues soon :D

pushkalkatara avatar May 05 '20 02:05 pushkalkatara

Facing the issue

RuntimeError: Input type (torch.FloatTensor) and weight type (torch.cuda.FloatTensor) should be the same

due to https://github.com/NVIDIAGameWorks/kaolin/issues/249

pushkalkatara avatar May 06 '20 09:05 pushkalkatara

DGCNN PointCloud Classification now working - https://github.com/pushkalkatara/kaolin/blob/dgcnn-seg/examples/Classification/DGCNN_PointCloud_Classification.ipynb

pushkalkatara avatar May 07 '20 09:05 pushkalkatara

As a sub-issue for Part/Semantic segmentation examples, dataset required - ShapeNetCore PartSeg labels, S3DIS (Semantic Segmmentation). https://github.com/NVIDIAGameWorks/kaolin/issues/246

pushkalkatara avatar May 10 '20 00:05 pushkalkatara