2021년 4월 14일 수요일

Torch Points3d 사용 및 개발 방법

이 글은 Torch Points3d 사용 및 개발 방법을 간단히 다룬다. 

텐서플로우 3D가 릴리즈되었지만, 아직 당장 사용하기에는 불완전하다. 이런 이유로 토치에서 제공하는 포인트 클라우드 세그먼테이션, 객체 분류 및 인식 패키지를 사용해 보기로 한다.


파이썬 패키지 설치

PIP 설치는 매우 간단하다. Ubuntu, NVIDIA driver, CUDA, Tensorflow 등 개발환경이 설치되어 있다는 가정하에 다음과 같이 터미널에서 명령 입력한다.

pip install torch
pip install torch-points3d

소스 및 예제 설치
소스 및 예제 설치는 다음 링크 참고해 진행한다.
튜토리얼
튜토리얼 실행은 다음 링크를 참고해 진행한다.
부록: 도커 기반 OpenPCDet 사용

sudo docker run -it -v /path/to/data/on/host:/usr/src/OpenPCDet/data/kitti --rm --gpus all opheliayuan/pcdet:3.0 nvidia-smi


레퍼런스
  • PointNet from Charles R. Qi et al.: PointNet: Deep Learning on Point Sets for 3D Classification and Segmentation (CVPR 2017)
  • PointNet++ from Charles from Charles R. Qi et al.: PointNet++: Deep Hierarchical Feature Learning on Point Sets in a Metric Space
  • RSConv from Yongcheng Liu et al.: Relation-Shape Convolutional Neural Network for Point Cloud Analysis (CVPR 2019)
  • RandLA-Net from Qingyong Hu et al.: RandLA-Net: Efficient Semantic Segmentation of Large-Scale Point Clouds
  • PointCNN from Yangyan Li et al.: PointCNN: Convolution On X-Transformed Points (NIPS 2018)
  • KPConv from Hugues Thomas et al.: KPConv: Flexible and Deformable Convolution for Point Clouds (ICCV 2019)
  • MinkowskiEngine from Christopher Choy et al.: 4D Spatio-Temporal ConvNets: Minkowski Convolutional Neural Networks (CVPR19)
  • VoteNet from Charles R. Qi et al.: Deep Hough Voting for 3D Object Detection in Point Clouds (ICCV 19)
  • FCGF from Christopher Choy et al.: Fully Convolutional Geometric Features (ICCV'19)
  • PointGroup from Li Jiang et al.: PointGroup: Dual-Set Point Grouping for 3D Instance Segmentation
  • PPNet (PosPool) from Ze Liu et al.: A Closer Look at Local Aggregation Operators in Point Cloud Analysis (ECCV 2020)
  • TorchSparse from Haotian Tang et al: Searching Efficient 3D Architectures with Sparse Point-Voxel Convolution
  • PVCNN model for semantic segmentation from Zhijian Liu et al:Point-Voxel CNN for Efficient 3D Deep Learning
  • MS-SVConv from Sofiane Horache et al: 3D Point Cloud Registration with Multi-Scale Architecture and Self-supervised Fine-tuning

댓글 7개:

  1. 작성자가 댓글을 삭제했습니다.

    답글삭제
  2. 안녕하세요~
    Pytorch Points 3D는 직접 해보신건가요??
    Open3D-ML 시도 중인데.. 제가 못해서그런지 진전이없는 와중에 우연히 Pytorch Points 3D를 확인했네요 ㅎㅎ

    답글삭제
    답글
    1. cuda 설치 버전에 민감합니다. cuda 10버전을 권장하니 참고바랍니다. open3d같은 패키지는 설치 안되면, 소스 빌드 직접 하셔야 할 듯 합니다.

      삭제
    2. 감사합니다. CUDA 10, 10.1, 10.2 바꿔가며 해봤는데 안되네요..
      파이썬 버전 문제인 듯 하여 conda install python=3.6 을 시도하였으나 Env solving 에러가 발생합니다. 혹시 이같은 경험을 해보셨는지요..ㅠ

      삭제
  3. 안녕하세요! 3d 라이다를 공부하는 학생입니다. pointnet++을 사용해보고 싶은데, 궁금사항이 있습니다. 1. 제가 가지고 있는 라이다로 pointnet++ 알고리즘이 사용가는지 2. 위에서 알려주신 Pytorch Points 3D는 pointnet 알고리즘처럼 포인트클라우드를 detect하고 segmentation하는 알고리즘인가요? 어디서부터 해야할지 막막하네요...

    답글삭제