(CVPR 2021) PAConv: Position Adaptive Convolution with Dynamic Kernel Assembling on Point Clouds

Related tags

Deep Learning PAConv
Overview

PAConv: Position Adaptive Convolution with Dynamic Kernel Assembling on Point Clouds

by Mutian Xu*, Runyu Ding*, Hengshuang Zhao, and Xiaojuan Qi.

Introduction

This repository is built for the official implementation of:

PAConv: Position Adaptive Convolution with Dynamic Kernel Assembling on Point Clouds (CVPR2021) [arXiv]

If you find our work useful in your research, please consider citing:

@inproceedings{xu2021paconv,
  title={PAConv: Position Adaptive Convolution with Dynamic Kernel Assembling on Point Clouds},
  author={Xu, Mutian and Ding, Runyu and Zhao, Hengshuang and Qi, Xiaojuan},
  booktitle={CVPR},
  year={2021}
}

Highlight

  • All initialization models and trained models are available.
  • Provide fast multiprocessing training (nn.parallel.DistributedDataParallel) with official nn.SyncBatchNorm.
  • Incorporated with tensorboardX for better visualization of the whole training process.
  • Support recent versions of PyTorch.
  • Well designed code structures for easy reading and using.

Usage

We provide scripts for different point cloud processing tasks:

You can find the instructions for running these tasks in the above corresponding folders.

Performance

The following tables report the current performances on different tasks and datasets. ( * denotes the backbone architectures)

Object Classification on ModelNet40

Method OA
PAConv (*PointNet) 93.2%
PAConv (*DGCNN) 93.9%

Shape Part Segmentation on ShapeNet Part

Method Class mIoU Instance mIoU
PAConv (*DGCNN) 84.6% 86.1%

Indoor Scene Segmentation on S3DIS Area-5

Method S3DIS mIoU
PAConv (*PointNet++) 66.58%

Contact

You are welcome to send pull requests or share some ideas with us. Contact information: Mutian Xu ([email protected]) or Runyu Ding ([email protected]).

Acknowledgement

Our code base is partially borrowed from PointWeb, DGCNN and PointNet++.

Comments
  • issue with classification

    issue with classification

    Hello ! your work is very interesting.When I tried to put the classification model on training it doesn't show any error,but it does get stuck here and doesn't proceed forward.Please tell me what is this issue? Thanks for your time. image

    opened by rabbiahassan 9
  • S3DIS preprocessing

    S3DIS preprocessing

    First of all, thanks for sharing your amazing work and code. By the way, we have a single question on S3DIS dataset preprocessing. The size of S3DIS you provided is about 4GB, which is much lighter than standard S3DIS dataset (about 60 GB). Could you share preprocessing method for the S3DIS dataset?

    opened by honggudrnjs 9
  • Error when enabling correlation loss

    Error when enabling correlation loss

    Hello @Dingry,

    Thank you for sharing your great work. I managed to run the code on the task of semantic segmentation on S3DIS but without the correlation loss. Whenever I enable the correlation loss I get the following error: torch.nn.modules.module.ModuleAttributeError: 'PAConvCUDA' object has no attribute 'matrice1' from line 203 in train.py.

    Also can you please provide the preprocessing details of S3DIS and perhaps the scripts to generate the h5 files from raw S3DIS data files? That'd be much appreciated.

    Thank you in advance. Best regards, Hani

    opened by HaniItani 5
  • Reproduction of PAConv_PointNet results on ModelNet40

    Reproduction of PAConv_PointNet results on ModelNet40

    Dear authors,

    Thank you for your great work. I trained your PAConv_PointNet model (pointnet_paconv_train.yaml) on ModelNet40 dataset, and got results different from what is reported in the paper (93.2% w/o voting). I got OA 92.4% with main_ddp.py and 92.7% with main.py.

    The command I used: python main.py --config config/pointnet_paconv_train.yaml.

    Could you please kindly advise if there is anything that I did not do correctly, or if you could kindly share your pre-trained model? Thank you so much!

    opened by haotian-liu 4
  • Some Problems with the reproduced results

    Some Problems with the reproduced results

    Dears:

    Thanks for your excellent work! Now I am trying to reproduce the results on the task of 3D Object Classification on ModelNet40 through the provided code, but the best reproduced result using DGCNN as the backbone is only 93.07. Do you know what's wrong with it? Is it the randomness of the training that causes this phenomenon? If so, can you provide a random seed for the training?

    image

    Looking forward to hearing from you. Thanks for your excellent work again!

    opened by Gao-JT 4
  • Questions about `knn` and `knn_heap`

    Questions about `knn` and `knn_heap`

    Hi, I found out that you use knn_heap instead of knn here. I have never seen knn_heap before, so I wonder how much speed improvement does this operation bring about compared to knn? Besides, if I understand correctly, using knn or knn_heap will only affect speed but not performance right?

    Another question is that, in the original PointNet++ paper, they use ball query instead of knn, which means the radius is not None here. So I wonder did you tried ball query in PAConv? Is knn better than ball query in PAConv?

    Thank you so much for your time!

    opened by Wuziyi616 4
  • About custom ops

    About custom ops

    I notice that in PointWeb, we need to compile the custom ops before running the code by python setup.py install. I don't see such instructions in this repo. So I wonder do we need to also compile the custom ops for paconv first? Thanks!

    opened by Wuziyi616 4
  • Visualization of Part Segmentation predictions

    Visualization of Part Segmentation predictions

    Hi! I'm following your 3D Shape Part Segmentation work. Could you please provide instuctions how to visualize predictions like in the paper: In main.py test() we get predictions for batches: https://github.com/CVMI-Lab/PAConv/blob/696d36844e6b2f475f732579c24f67ae8059449d/part_seg/main.py#L370-L371 How to combine them into predictions for an individual test file?

    opened by Ritchizh 3
  • subprocess.CalledProcessError: Command '['ninja', '-v']' returned non-zero exit status 1.

    subprocess.CalledProcessError: Command '['ninja', '-v']' returned non-zero exit status 1.

    作者你好,我在尝试执行scene_seg训练时,碰到以下错误,我尝试了降低PyTorch版本但无法解决,查询其他方案包括将 -v 更改为 --version,但这样会导致一些其他报错。 作者是否有解决思路?

    Traceback (most recent call last):
      File "/data1/zyy/usr/local/anaconda3/envs/PAConv/lib/python3.7/site-packages/torch/utils/cpp_extension.py", line 1030, in _build_extension_module
        check=True)
      File "/data1/zyy/usr/local/anaconda3/envs/PAConv/lib/python3.7/subprocess.py", line 512, in run
        output=stdout, stderr=stderr)
    subprocess.CalledProcessError: Command '['ninja', '-v']' returned non-zero exit status 1.
    
    During handling of the above exception, another exception occurred:
    
    Traceback (most recent call last):
      File "tool/train.py", line 19, in <module>
        from model.pointnet2.paconv import PAConv
      File "/data1/zyy/code/PAConv/scene_seg/model/pointnet2/paconv.py", line 9, in <module>
        from lib.paconv_lib.functional import assign_score_withk as assign_score_cuda
      File "/data1/zyy/code/PAConv/scene_seg/lib/paconv_lib/functional.py", line 1, in <module>
        from . import functions
      File "/data1/zyy/code/PAConv/scene_seg/lib/paconv_lib/functions/__init__.py", line 1, in <module>
        from .assignscore import *
      File "/data1/zyy/code/PAConv/scene_seg/lib/paconv_lib/functions/assignscore.py", line 4, in <module>
        from .. import src
      File "/data1/zyy/code/PAConv/scene_seg/lib/paconv_lib/src/__init__.py", line 20, in <module>
        ], build_directory=gpu_path, verbose=False)
      File "/data1/zyy/usr/local/anaconda3/envs/PAConv/lib/python3.7/site-packages/torch/utils/cpp_extension.py", line 661, in load
        is_python_module)
      File "/data1/zyy/usr/local/anaconda3/envs/PAConv/lib/python3.7/site-packages/torch/utils/cpp_extension.py", line 830, in _jit_compile
        with_cuda=with_cuda)
      File "/data1/zyy/usr/local/anaconda3/envs/PAConv/lib/python3.7/site-packages/torch/utils/cpp_extension.py", line 883, in _write_ninja_file_and_build
        _build_extension_module(name, build_directory, verbose)
      File "/data1/zyy/usr/local/anaconda3/envs/PAConv/lib/python3.7/site-packages/torch/utils/cpp_extension.py", line 1043, in _build_extension_module
        raise RuntimeError(message)
    RuntimeError: Error building extension 'pointnet2_paconv_cuda': [1/2] /data1/zyy/usr/local/cuda-10.1:/bin/nvcc -DTORCH_EXTENSION_NAME=pointnet2_paconv_cuda -DTORCH_API_INCLUDE_EXTENSION_H -isystem /data1/zyy/usr/local/anaconda3/envs/PAConv/lib/python3.7/site-packages/torch/include -isystem /data1/zyy/usr/local/anaconda3/envs/PAConv/lib/python3.7/site-packages/torch/include/torch/csrc/api/include -isystem /data1/zyy/usr/local/anaconda3/envs/PAConv/lib/python3.7/site-packages/torch/include/TH -isystem /data1/zyy/usr/local/anaconda3/envs/PAConv/lib/python3.7/site-packages/torch/include/THC -isystem /data1/zyy/usr/local/cuda-10.1:/include -isystem /data1/zyy/usr/local/anaconda3/envs/PAConv/include/python3.7m -D_GLIBCXX_USE_CXX11_ABI=0 -D__CUDA_NO_HALF_OPERATORS__ -D__CUDA_NO_HALF_CONVERSIONS__ -D__CUDA_NO_HALF2_OPERATORS__ --expt-relaxed-constexpr -gencode=arch=compute_75,code=sm_75 --compiler-options '-fPIC' -std=c++11 -c /data1/zyy/code/PAConv/scene_seg/lib/paconv_lib/src/gpu/assign_score_withk_gpu.cu -o assign_score_withk_gpu.cuda.o
    FAILED: assign_score_withk_gpu.cuda.o 
    /data1/zyy/usr/local/cuda-10.1:/bin/nvcc -DTORCH_EXTENSION_NAME=pointnet2_paconv_cuda -DTORCH_API_INCLUDE_EXTENSION_H -isystem /data1/zyy/usr/local/anaconda3/envs/PAConv/lib/python3.7/site-packages/torch/include -isystem /data1/zyy/usr/local/anaconda3/envs/PAConv/lib/python3.7/site-packages/torch/include/torch/csrc/api/include -isystem /data1/zyy/usr/local/anaconda3/envs/PAConv/lib/python3.7/site-packages/torch/include/TH -isystem /data1/zyy/usr/local/anaconda3/envs/PAConv/lib/python3.7/site-packages/torch/include/THC -isystem /data1/zyy/usr/local/cuda-10.1:/include -isystem /data1/zyy/usr/local/anaconda3/envs/PAConv/include/python3.7m -D_GLIBCXX_USE_CXX11_ABI=0 -D__CUDA_NO_HALF_OPERATORS__ -D__CUDA_NO_HALF_CONVERSIONS__ -D__CUDA_NO_HALF2_OPERATORS__ --expt-relaxed-constexpr -gencode=arch=compute_75,code=sm_75 --compiler-options '-fPIC' -std=c++11 -c /data1/zyy/code/PAConv/scene_seg/lib/paconv_lib/src/gpu/assign_score_withk_gpu.cu -o assign_score_withk_gpu.cuda.o
    /bin/sh: 1: /data1/zyy/usr/local/cuda-10.1:/bin/nvcc: not found
    ninja: build stopped: subcommand failed.
    [2021-10-27 12:06:55,042 INFO test_s3dis.py line 25 1280] arch: pointnet2_paconv_seg
    base_lr: 0.05
    block_size: 1.0
    classes: 13
    color_augment: 0.0
    correlation_loss: True
    correlation_loss_scale: 10.0
    cuda: True
    data_name: s3dis
    data_root: dataset/s3dis
    epochs: 100
    evaluate: True
    fea_dim: 6
    hidden: [8, 16, 16]
    ignore_label: 255
    kernel_input: neighbor
    lr_multidecay: True
    m: 16
    manual_seed: None
    model_path: exp/s3dis/pointnet2_paconv_cuda/model/best_train.pth
    momentum: 0.9
    multiplier: 0.1
    names_path: data/s3dis/s3dis_names.txt
    no_transformation: False
    norm_no_trans: True
    num_point: 4096
    paconv: [True, True, True, True, False, False, False, False]
    print_freq: 100
    resume: None
    sample_rate: 1.0
    save_folder: exp/s3dis/pointnet2_paconv_cuda/result/best_epoch/val5_0.5
    save_freq: 1
    save_path: exp/s3dis/pointnet2_paconv_cuda/model
    score_input: ed7
    split: val
    start_epoch: 0
    step_epoch: 30
    stride_rate: 0.5
    sync_bn: True
    test_area: 5
    test_batch_size: 8
    test_gpu: [0]
    test_list: dataset/s3dis/list/val5.txt
    test_list_full: dataset/s3dis/list/val5_full.txt
    test_workers: 4
    train_batch_size: 16
    train_batch_size_val: 8
    train_full_folder: dataset/s3dis/trainval_fullarea
    train_gpu: [0, 1]
    train_list: dataset/s3dis/list/train12346.txt
    train_workers: 8
    use_xyz: True
    val_list: dataset/s3dis/list/val5.txt
    weight: None
    weight_decay: 0.0001
    [2021-10-27 12:06:55,042 INFO test_s3dis.py line 28 1280] => creating model ...
    [2021-10-27 12:06:55,042 INFO test_s3dis.py line 29 1280] Classes: 13
    /data1/zyy/code/PAConv/scene_seg/lib/pointops/functions/pointops.py:13: UserWarning: Unable to load pointops_cuda cpp extension.
      warnings.warn("Unable to load pointops_cuda cpp extension.")
    Traceback (most recent call last):
      File "/data1/zyy/code/PAConv/scene_seg/lib/pointops/functions/pointops.py", line 8, in <module>
        import pointops_cuda
    ModuleNotFoundError: No module named 'pointops_cuda'
    
    During handling of the above exception, another exception occurred:
    
    Traceback (most recent call last):
      File "/data1/zyy/usr/local/anaconda3/envs/PAConv/lib/python3.7/site-packages/torch/utils/cpp_extension.py", line 1030, in _build_extension_module
        check=True)
      File "/data1/zyy/usr/local/anaconda3/envs/PAConv/lib/python3.7/subprocess.py", line 512, in run
        output=stdout, stderr=stderr)
    subprocess.CalledProcessError: Command '['ninja', '-v']' returned non-zero exit status 1.
    
    During handling of the above exception, another exception occurred:
    
    Traceback (most recent call last):
      File "tool/test_s3dis.py", line 198, in <module>
        main()
      File "tool/test_s3dis.py", line 36, in main
        from model.pointnet2.pointnet2_paconv_seg import PointNet2SSGSeg as Model
      File "/data1/zyy/code/PAConv/scene_seg/model/pointnet2/pointnet2_paconv_seg.py", line 6, in <module>
        from model.pointnet2.pointnet2_paconv_modules import PointNet2FPModule
      File "/data1/zyy/code/PAConv/scene_seg/model/pointnet2/pointnet2_paconv_modules.py", line 7, in <module>
        from lib.pointops.functions import pointops
      File "/data1/zyy/code/PAConv/scene_seg/lib/pointops/functions/pointops.py", line 35, in <module>
        ], build_directory=pointops_cuda_src, verbose=False)
      File "/data1/zyy/usr/local/anaconda3/envs/PAConv/lib/python3.7/site-packages/torch/utils/cpp_extension.py", line 661, in load
        is_python_module)
      File "/data1/zyy/usr/local/anaconda3/envs/PAConv/lib/python3.7/site-packages/torch/utils/cpp_extension.py", line 830, in _jit_compile
        with_cuda=with_cuda)
      File "/data1/zyy/usr/local/anaconda3/envs/PAConv/lib/python3.7/site-packages/torch/utils/cpp_extension.py", line 883, in _write_ninja_file_and_build
        _build_extension_module(name, build_directory, verbose)
      File "/data1/zyy/usr/local/anaconda3/envs/PAConv/lib/python3.7/site-packages/torch/utils/cpp_extension.py", line 1043, in _build_extension_module
        raise RuntimeError(message)
    RuntimeError: Error building extension 'pointops_cuda': [1/12] /data1/zyy/usr/local/cuda-10.1:/bin/nvcc -DTORCH_EXTENSION_NAME=pointops_cuda -DTORCH_API_INCLUDE_EXTENSION_H -isystem /data1/zyy/usr/local/anaconda3/envs/PAConv/lib/python3.7/site-packages/torch/include -isystem /data1/zyy/usr/local/anaconda3/envs/PAConv/lib/python3.7/site-packages/torch/include/torch/csrc/api/include -isystem /data1/zyy/usr/local/anaconda3/envs/PAConv/lib/python3.7/site-packages/torch/include/TH -isystem /data1/zyy/usr/local/anaconda3/envs/PAConv/lib/python3.7/site-packages/torch/include/THC -isystem /data1/zyy/usr/local/cuda-10.1:/include -isystem /data1/zyy/usr/local/anaconda3/envs/PAConv/include/python3.7m -D_GLIBCXX_USE_CXX11_ABI=0 -D__CUDA_NO_HALF_OPERATORS__ -D__CUDA_NO_HALF_CONVERSIONS__ -D__CUDA_NO_HALF2_OPERATORS__ --expt-relaxed-constexpr -gencode=arch=compute_75,code=sm_75 --compiler-options '-fPIC' -std=c++11 -c /data1/zyy/code/PAConv/scene_seg/lib/pointops/src/ballquery/ballquery_cuda_kernel.cu -o ballquery_cuda_kernel.cuda.o
    FAILED: ballquery_cuda_kernel.cuda.o 
    /data1/zyy/usr/local/cuda-10.1:/bin/nvcc -DTORCH_EXTENSION_NAME=pointops_cuda -DTORCH_API_INCLUDE_EXTENSION_H -isystem /data1/zyy/usr/local/anaconda3/envs/PAConv/lib/python3.7/site-packages/torch/include -isystem /data1/zyy/usr/local/anaconda3/envs/PAConv/lib/python3.7/site-packages/torch/include/torch/csrc/api/include -isystem /data1/zyy/usr/local/anaconda3/envs/PAConv/lib/python3.7/site-packages/torch/include/TH -isystem /data1/zyy/usr/local/anaconda3/envs/PAConv/lib/python3.7/site-packages/torch/include/THC -isystem /data1/zyy/usr/local/cuda-10.1:/include -isystem /data1/zyy/usr/local/anaconda3/envs/PAConv/include/python3.7m -D_GLIBCXX_USE_CXX11_ABI=0 -D__CUDA_NO_HALF_OPERATORS__ -D__CUDA_NO_HALF_CONVERSIONS__ -D__CUDA_NO_HALF2_OPERATORS__ --expt-relaxed-constexpr -gencode=arch=compute_75,code=sm_75 --compiler-options '-fPIC' -std=c++11 -c /data1/zyy/code/PAConv/scene_seg/lib/pointops/src/ballquery/ballquery_cuda_kernel.cu -o ballquery_cuda_kernel.cuda.o
    /bin/sh: 1: /data1/zyy/usr/local/cuda-10.1:/bin/nvcc: not found
    [2/12] /data1/zyy/usr/local/cuda-10.1:/bin/nvcc -DTORCH_EXTENSION_NAME=pointops_cuda -DTORCH_API_INCLUDE_EXTENSION_H -isystem /data1/zyy/usr/local/anaconda3/envs/PAConv/lib/python3.7/site-packages/torch/include -isystem /data1/zyy/usr/local/anaconda3/envs/PAConv/lib/python3.7/site-packages/torch/include/torch/csrc/api/include -isystem /data1/zyy/usr/local/anaconda3/envs/PAConv/lib/python3.7/site-packages/torch/include/TH -isystem /data1/zyy/usr/local/anaconda3/envs/PAConv/lib/python3.7/site-packages/torch/include/THC -isystem /data1/zyy/usr/local/cuda-10.1:/include -isystem /data1/zyy/usr/local/anaconda3/envs/PAConv/include/python3.7m -D_GLIBCXX_USE_CXX11_ABI=0 -D__CUDA_NO_HALF_OPERATORS__ -D__CUDA_NO_HALF_CONVERSIONS__ -D__CUDA_NO_HALF2_OPERATORS__ --expt-relaxed-constexpr -gencode=arch=compute_75,code=sm_75 --compiler-options '-fPIC' -std=c++11 -c /data1/zyy/code/PAConv/scene_seg/lib/pointops/src/knnquery/knnquery_cuda_kernel.cu -o knnquery_cuda_kernel.cuda.o
    FAILED: knnquery_cuda_kernel.cuda.o 
    /data1/zyy/usr/local/cuda-10.1:/bin/nvcc -DTORCH_EXTENSION_NAME=pointops_cuda -DTORCH_API_INCLUDE_EXTENSION_H -isystem /data1/zyy/usr/local/anaconda3/envs/PAConv/lib/python3.7/site-packages/torch/include -isystem /data1/zyy/usr/local/anaconda3/envs/PAConv/lib/python3.7/site-packages/torch/include/torch/csrc/api/include -isystem /data1/zyy/usr/local/anaconda3/envs/PAConv/lib/python3.7/site-packages/torch/include/TH -isystem /data1/zyy/usr/local/anaconda3/envs/PAConv/lib/python3.7/site-packages/torch/include/THC -isystem /data1/zyy/usr/local/cuda-10.1:/include -isystem /data1/zyy/usr/local/anaconda3/envs/PAConv/include/python3.7m -D_GLIBCXX_USE_CXX11_ABI=0 -D__CUDA_NO_HALF_OPERATORS__ -D__CUDA_NO_HALF_CONVERSIONS__ -D__CUDA_NO_HALF2_OPERATORS__ --expt-relaxed-constexpr -gencode=arch=compute_75,code=sm_75 --compiler-options '-fPIC' -std=c++11 -c /data1/zyy/code/PAConv/scene_seg/lib/pointops/src/knnquery/knnquery_cuda_kernel.cu -o knnquery_cuda_kernel.cuda.o
    /bin/sh: 1: /data1/zyy/usr/local/cuda-10.1:/bin/nvcc: not found
    [3/12] /data1/zyy/usr/local/cuda-10.1:/bin/nvcc -DTORCH_EXTENSION_NAME=pointops_cuda -DTORCH_API_INCLUDE_EXTENSION_H -isystem /data1/zyy/usr/local/anaconda3/envs/PAConv/lib/python3.7/site-packages/torch/include -isystem /data1/zyy/usr/local/anaconda3/envs/PAConv/lib/python3.7/site-packages/torch/include/torch/csrc/api/include -isystem /data1/zyy/usr/local/anaconda3/envs/PAConv/lib/python3.7/site-packages/torch/include/TH -isystem /data1/zyy/usr/local/anaconda3/envs/PAConv/lib/python3.7/site-packages/torch/include/THC -isystem /data1/zyy/usr/local/cuda-10.1:/include -isystem /data1/zyy/usr/local/anaconda3/envs/PAConv/include/python3.7m -D_GLIBCXX_USE_CXX11_ABI=0 -D__CUDA_NO_HALF_OPERATORS__ -D__CUDA_NO_HALF_CONVERSIONS__ -D__CUDA_NO_HALF2_OPERATORS__ --expt-relaxed-constexpr -gencode=arch=compute_75,code=sm_75 --compiler-options '-fPIC' -std=c++11 -c /data1/zyy/code/PAConv/scene_seg/lib/pointops/src/knnquery_heap/knnquery_heap_cuda_kernel.cu -o knnquery_heap_cuda_kernel.cuda.o
    FAILED: knnquery_heap_cuda_kernel.cuda.o 
    /data1/zyy/usr/local/cuda-10.1:/bin/nvcc -DTORCH_EXTENSION_NAME=pointops_cuda -DTORCH_API_INCLUDE_EXTENSION_H -isystem /data1/zyy/usr/local/anaconda3/envs/PAConv/lib/python3.7/site-packages/torch/include -isystem /data1/zyy/usr/local/anaconda3/envs/PAConv/lib/python3.7/site-packages/torch/include/torch/csrc/api/include -isystem /data1/zyy/usr/local/anaconda3/envs/PAConv/lib/python3.7/site-packages/torch/include/TH -isystem /data1/zyy/usr/local/anaconda3/envs/PAConv/lib/python3.7/site-packages/torch/include/THC -isystem /data1/zyy/usr/local/cuda-10.1:/include -isystem /data1/zyy/usr/local/anaconda3/envs/PAConv/include/python3.7m -D_GLIBCXX_USE_CXX11_ABI=0 -D__CUDA_NO_HALF_OPERATORS__ -D__CUDA_NO_HALF_CONVERSIONS__ -D__CUDA_NO_HALF2_OPERATORS__ --expt-relaxed-constexpr -gencode=arch=compute_75,code=sm_75 --compiler-options '-fPIC' -std=c++11 -c /data1/zyy/code/PAConv/scene_seg/lib/pointops/src/knnquery_heap/knnquery_heap_cuda_kernel.cu -o knnquery_heap_cuda_kernel.cuda.o
    /bin/sh: 1: /data1/zyy/usr/local/cuda-10.1:/bin/nvcc: not found
    [4/12] /data1/zyy/usr/local/cuda-10.1:/bin/nvcc -DTORCH_EXTENSION_NAME=pointops_cuda -DTORCH_API_INCLUDE_EXTENSION_H -isystem /data1/zyy/usr/local/anaconda3/envs/PAConv/lib/python3.7/site-packages/torch/include -isystem /data1/zyy/usr/local/anaconda3/envs/PAConv/lib/python3.7/site-packages/torch/include/torch/csrc/api/include -isystem /data1/zyy/usr/local/anaconda3/envs/PAConv/lib/python3.7/site-packages/torch/include/TH -isystem /data1/zyy/usr/local/anaconda3/envs/PAConv/lib/python3.7/site-packages/torch/include/THC -isystem /data1/zyy/usr/local/cuda-10.1:/include -isystem /data1/zyy/usr/local/anaconda3/envs/PAConv/include/python3.7m -D_GLIBCXX_USE_CXX11_ABI=0 -D__CUDA_NO_HALF_OPERATORS__ -D__CUDA_NO_HALF_CONVERSIONS__ -D__CUDA_NO_HALF2_OPERATORS__ --expt-relaxed-constexpr -gencode=arch=compute_75,code=sm_75 --compiler-options '-fPIC' -std=c++11 -c /data1/zyy/code/PAConv/scene_seg/lib/pointops/src/grouping/grouping_cuda_kernel.cu -o grouping_cuda_kernel.cuda.o
    FAILED: grouping_cuda_kernel.cuda.o 
    /data1/zyy/usr/local/cuda-10.1:/bin/nvcc -DTORCH_EXTENSION_NAME=pointops_cuda -DTORCH_API_INCLUDE_EXTENSION_H -isystem /data1/zyy/usr/local/anaconda3/envs/PAConv/lib/python3.7/site-packages/torch/include -isystem /data1/zyy/usr/local/anaconda3/envs/PAConv/lib/python3.7/site-packages/torch/include/torch/csrc/api/include -isystem /data1/zyy/usr/local/anaconda3/envs/PAConv/lib/python3.7/site-packages/torch/include/TH -isystem /data1/zyy/usr/local/anaconda3/envs/PAConv/lib/python3.7/site-packages/torch/include/THC -isystem /data1/zyy/usr/local/cuda-10.1:/include -isystem /data1/zyy/usr/local/anaconda3/envs/PAConv/include/python3.7m -D_GLIBCXX_USE_CXX11_ABI=0 -D__CUDA_NO_HALF_OPERATORS__ -D__CUDA_NO_HALF_CONVERSIONS__ -D__CUDA_NO_HALF2_OPERATORS__ --expt-relaxed-constexpr -gencode=arch=compute_75,code=sm_75 --compiler-options '-fPIC' -std=c++11 -c /data1/zyy/code/PAConv/scene_seg/lib/pointops/src/grouping/grouping_cuda_kernel.cu -o grouping_cuda_kernel.cuda.o
    /bin/sh: 1: /data1/zyy/usr/local/cuda-10.1:/bin/nvcc: not found
    [5/12] /data1/zyy/usr/local/cuda-10.1:/bin/nvcc -DTORCH_EXTENSION_NAME=pointops_cuda -DTORCH_API_INCLUDE_EXTENSION_H -isystem /data1/zyy/usr/local/anaconda3/envs/PAConv/lib/python3.7/site-packages/torch/include -isystem /data1/zyy/usr/local/anaconda3/envs/PAConv/lib/python3.7/site-packages/torch/include/torch/csrc/api/include -isystem /data1/zyy/usr/local/anaconda3/envs/PAConv/lib/python3.7/site-packages/torch/include/TH -isystem /data1/zyy/usr/local/anaconda3/envs/PAConv/lib/python3.7/site-packages/torch/include/THC -isystem /data1/zyy/usr/local/cuda-10.1:/include -isystem /data1/zyy/usr/local/anaconda3/envs/PAConv/include/python3.7m -D_GLIBCXX_USE_CXX11_ABI=0 -D__CUDA_NO_HALF_OPERATORS__ -D__CUDA_NO_HALF_CONVERSIONS__ -D__CUDA_NO_HALF2_OPERATORS__ --expt-relaxed-constexpr -gencode=arch=compute_75,code=sm_75 --compiler-options '-fPIC' -std=c++11 -c /data1/zyy/code/PAConv/scene_seg/lib/pointops/src/grouping_int/grouping_int_cuda_kernel.cu -o grouping_int_cuda_kernel.cuda.o
    FAILED: grouping_int_cuda_kernel.cuda.o 
    /data1/zyy/usr/local/cuda-10.1:/bin/nvcc -DTORCH_EXTENSION_NAME=pointops_cuda -DTORCH_API_INCLUDE_EXTENSION_H -isystem /data1/zyy/usr/local/anaconda3/envs/PAConv/lib/python3.7/site-packages/torch/include -isystem /data1/zyy/usr/local/anaconda3/envs/PAConv/lib/python3.7/site-packages/torch/include/torch/csrc/api/include -isystem /data1/zyy/usr/local/anaconda3/envs/PAConv/lib/python3.7/site-packages/torch/include/TH -isystem /data1/zyy/usr/local/anaconda3/envs/PAConv/lib/python3.7/site-packages/torch/include/THC -isystem /data1/zyy/usr/local/cuda-10.1:/include -isystem /data1/zyy/usr/local/anaconda3/envs/PAConv/include/python3.7m -D_GLIBCXX_USE_CXX11_ABI=0 -D__CUDA_NO_HALF_OPERATORS__ -D__CUDA_NO_HALF_CONVERSIONS__ -D__CUDA_NO_HALF2_OPERATORS__ --expt-relaxed-constexpr -gencode=arch=compute_75,code=sm_75 --compiler-options '-fPIC' -std=c++11 -c /data1/zyy/code/PAConv/scene_seg/lib/pointops/src/grouping_int/grouping_int_cuda_kernel.cu -o grouping_int_cuda_kernel.cuda.o
    /bin/sh: 1: /data1/zyy/usr/local/cuda-10.1:/bin/nvcc: not found
    [6/12] /data1/zyy/usr/local/cuda-10.1:/bin/nvcc -DTORCH_EXTENSION_NAME=pointops_cuda -DTORCH_API_INCLUDE_EXTENSION_H -isystem /data1/zyy/usr/local/anaconda3/envs/PAConv/lib/python3.7/site-packages/torch/include -isystem /data1/zyy/usr/local/anaconda3/envs/PAConv/lib/python3.7/site-packages/torch/include/torch/csrc/api/include -isystem /data1/zyy/usr/local/anaconda3/envs/PAConv/lib/python3.7/site-packages/torch/include/TH -isystem /data1/zyy/usr/local/anaconda3/envs/PAConv/lib/python3.7/site-packages/torch/include/THC -isystem /data1/zyy/usr/local/cuda-10.1:/include -isystem /data1/zyy/usr/local/anaconda3/envs/PAConv/include/python3.7m -D_GLIBCXX_USE_CXX11_ABI=0 -D__CUDA_NO_HALF_OPERATORS__ -D__CUDA_NO_HALF_CONVERSIONS__ -D__CUDA_NO_HALF2_OPERATORS__ --expt-relaxed-constexpr -gencode=arch=compute_75,code=sm_75 --compiler-options '-fPIC' -std=c++11 -c /data1/zyy/code/PAConv/scene_seg/lib/pointops/src/interpolation/interpolation_cuda_kernel.cu -o interpolation_cuda_kernel.cuda.o
    FAILED: interpolation_cuda_kernel.cuda.o 
    /data1/zyy/usr/local/cuda-10.1:/bin/nvcc -DTORCH_EXTENSION_NAME=pointops_cuda -DTORCH_API_INCLUDE_EXTENSION_H -isystem /data1/zyy/usr/local/anaconda3/envs/PAConv/lib/python3.7/site-packages/torch/include -isystem /data1/zyy/usr/local/anaconda3/envs/PAConv/lib/python3.7/site-packages/torch/include/torch/csrc/api/include -isystem /data1/zyy/usr/local/anaconda3/envs/PAConv/lib/python3.7/site-packages/torch/include/TH -isystem /data1/zyy/usr/local/anaconda3/envs/PAConv/lib/python3.7/site-packages/torch/include/THC -isystem /data1/zyy/usr/local/cuda-10.1:/include -isystem /data1/zyy/usr/local/anaconda3/envs/PAConv/include/python3.7m -D_GLIBCXX_USE_CXX11_ABI=0 -D__CUDA_NO_HALF_OPERATORS__ -D__CUDA_NO_HALF_CONVERSIONS__ -D__CUDA_NO_HALF2_OPERATORS__ --expt-relaxed-constexpr -gencode=arch=compute_75,code=sm_75 --compiler-options '-fPIC' -std=c++11 -c /data1/zyy/code/PAConv/scene_seg/lib/pointops/src/interpolation/interpolation_cuda_kernel.cu -o interpolation_cuda_kernel.cuda.o
    /bin/sh: 1: /data1/zyy/usr/local/cuda-10.1:/bin/nvcc: not found
    [7/12] /data1/zyy/usr/local/cuda-10.1:/bin/nvcc -DTORCH_EXTENSION_NAME=pointops_cuda -DTORCH_API_INCLUDE_EXTENSION_H -isystem /data1/zyy/usr/local/anaconda3/envs/PAConv/lib/python3.7/site-packages/torch/include -isystem /data1/zyy/usr/local/anaconda3/envs/PAConv/lib/python3.7/site-packages/torch/include/torch/csrc/api/include -isystem /data1/zyy/usr/local/anaconda3/envs/PAConv/lib/python3.7/site-packages/torch/include/TH -isystem /data1/zyy/usr/local/anaconda3/envs/PAConv/lib/python3.7/site-packages/torch/include/THC -isystem /data1/zyy/usr/local/cuda-10.1:/include -isystem /data1/zyy/usr/local/anaconda3/envs/PAConv/include/python3.7m -D_GLIBCXX_USE_CXX11_ABI=0 -D__CUDA_NO_HALF_OPERATORS__ -D__CUDA_NO_HALF_CONVERSIONS__ -D__CUDA_NO_HALF2_OPERATORS__ --expt-relaxed-constexpr -gencode=arch=compute_75,code=sm_75 --compiler-options '-fPIC' -std=c++11 -c /data1/zyy/code/PAConv/scene_seg/lib/pointops/src/sampling/sampling_cuda_kernel.cu -o sampling_cuda_kernel.cuda.o
    FAILED: sampling_cuda_kernel.cuda.o 
    /data1/zyy/usr/local/cuda-10.1:/bin/nvcc -DTORCH_EXTENSION_NAME=pointops_cuda -DTORCH_API_INCLUDE_EXTENSION_H -isystem /data1/zyy/usr/local/anaconda3/envs/PAConv/lib/python3.7/site-packages/torch/include -isystem /data1/zyy/usr/local/anaconda3/envs/PAConv/lib/python3.7/site-packages/torch/include/torch/csrc/api/include -isystem /data1/zyy/usr/local/anaconda3/envs/PAConv/lib/python3.7/site-packages/torch/include/TH -isystem /data1/zyy/usr/local/anaconda3/envs/PAConv/lib/python3.7/site-packages/torch/include/THC -isystem /data1/zyy/usr/local/cuda-10.1:/include -isystem /data1/zyy/usr/local/anaconda3/envs/PAConv/include/python3.7m -D_GLIBCXX_USE_CXX11_ABI=0 -D__CUDA_NO_HALF_OPERATORS__ -D__CUDA_NO_HALF_CONVERSIONS__ -D__CUDA_NO_HALF2_OPERATORS__ --expt-relaxed-constexpr -gencode=arch=compute_75,code=sm_75 --compiler-options '-fPIC' -std=c++11 -c /data1/zyy/code/PAConv/scene_seg/lib/pointops/src/sampling/sampling_cuda_kernel.cu -o sampling_cuda_kernel.cuda.o
    /bin/sh: 1: /data1/zyy/usr/local/cuda-10.1:/bin/nvcc: not found
    [8/12] /data1/zyy/usr/local/cuda-10.1:/bin/nvcc -DTORCH_EXTENSION_NAME=pointops_cuda -DTORCH_API_INCLUDE_EXTENSION_H -isystem /data1/zyy/usr/local/anaconda3/envs/PAConv/lib/python3.7/site-packages/torch/include -isystem /data1/zyy/usr/local/anaconda3/envs/PAConv/lib/python3.7/site-packages/torch/include/torch/csrc/api/include -isystem /data1/zyy/usr/local/anaconda3/envs/PAConv/lib/python3.7/site-packages/torch/include/TH -isystem /data1/zyy/usr/local/anaconda3/envs/PAConv/lib/python3.7/site-packages/torch/include/THC -isystem /data1/zyy/usr/local/cuda-10.1:/include -isystem /data1/zyy/usr/local/anaconda3/envs/PAConv/include/python3.7m -D_GLIBCXX_USE_CXX11_ABI=0 -D__CUDA_NO_HALF_OPERATORS__ -D__CUDA_NO_HALF_CONVERSIONS__ -D__CUDA_NO_HALF2_OPERATORS__ --expt-relaxed-constexpr -gencode=arch=compute_75,code=sm_75 --compiler-options '-fPIC' -std=c++11 -c /data1/zyy/code/PAConv/scene_seg/lib/pointops/src/labelstat/labelstat_cuda_kernel.cu -o labelstat_cuda_kernel.cuda.o
    FAILED: labelstat_cuda_kernel.cuda.o 
    /data1/zyy/usr/local/cuda-10.1:/bin/nvcc -DTORCH_EXTENSION_NAME=pointops_cuda -DTORCH_API_INCLUDE_EXTENSION_H -isystem /data1/zyy/usr/local/anaconda3/envs/PAConv/lib/python3.7/site-packages/torch/include -isystem /data1/zyy/usr/local/anaconda3/envs/PAConv/lib/python3.7/site-packages/torch/include/torch/csrc/api/include -isystem /data1/zyy/usr/local/anaconda3/envs/PAConv/lib/python3.7/site-packages/torch/include/TH -isystem /data1/zyy/usr/local/anaconda3/envs/PAConv/lib/python3.7/site-packages/torch/include/THC -isystem /data1/zyy/usr/local/cuda-10.1:/include -isystem /data1/zyy/usr/local/anaconda3/envs/PAConv/include/python3.7m -D_GLIBCXX_USE_CXX11_ABI=0 -D__CUDA_NO_HALF_OPERATORS__ -D__CUDA_NO_HALF_CONVERSIONS__ -D__CUDA_NO_HALF2_OPERATORS__ --expt-relaxed-constexpr -gencode=arch=compute_75,code=sm_75 --compiler-options '-fPIC' -std=c++11 -c /data1/zyy/code/PAConv/scene_seg/lib/pointops/src/labelstat/labelstat_cuda_kernel.cu -o labelstat_cuda_kernel.cuda.o
    /bin/sh: 1: /data1/zyy/usr/local/cuda-10.1:/bin/nvcc: not found
    [9/12] /data1/zyy/usr/local/cuda-10.1:/bin/nvcc -DTORCH_EXTENSION_NAME=pointops_cuda -DTORCH_API_INCLUDE_EXTENSION_H -isystem /data1/zyy/usr/local/anaconda3/envs/PAConv/lib/python3.7/site-packages/torch/include -isystem /data1/zyy/usr/local/anaconda3/envs/PAConv/lib/python3.7/site-packages/torch/include/torch/csrc/api/include -isystem /data1/zyy/usr/local/anaconda3/envs/PAConv/lib/python3.7/site-packages/torch/include/TH -isystem /data1/zyy/usr/local/anaconda3/envs/PAConv/lib/python3.7/site-packages/torch/include/THC -isystem /data1/zyy/usr/local/cuda-10.1:/include -isystem /data1/zyy/usr/local/anaconda3/envs/PAConv/include/python3.7m -D_GLIBCXX_USE_CXX11_ABI=0 -D__CUDA_NO_HALF_OPERATORS__ -D__CUDA_NO_HALF_CONVERSIONS__ -D__CUDA_NO_HALF2_OPERATORS__ --expt-relaxed-constexpr -gencode=arch=compute_75,code=sm_75 --compiler-options '-fPIC' -std=c++11 -c /data1/zyy/code/PAConv/scene_seg/lib/pointops/src/featuredistribute/featuredistribute_cuda_kernel.cu -o featuredistribute_cuda_kernel.cuda.o
    FAILED: featuredistribute_cuda_kernel.cuda.o 
    /data1/zyy/usr/local/cuda-10.1:/bin/nvcc -DTORCH_EXTENSION_NAME=pointops_cuda -DTORCH_API_INCLUDE_EXTENSION_H -isystem /data1/zyy/usr/local/anaconda3/envs/PAConv/lib/python3.7/site-packages/torch/include -isystem /data1/zyy/usr/local/anaconda3/envs/PAConv/lib/python3.7/site-packages/torch/include/torch/csrc/api/include -isystem /data1/zyy/usr/local/anaconda3/envs/PAConv/lib/python3.7/site-packages/torch/include/TH -isystem /data1/zyy/usr/local/anaconda3/envs/PAConv/lib/python3.7/site-packages/torch/include/THC -isystem /data1/zyy/usr/local/cuda-10.1:/include -isystem /data1/zyy/usr/local/anaconda3/envs/PAConv/include/python3.7m -D_GLIBCXX_USE_CXX11_ABI=0 -D__CUDA_NO_HALF_OPERATORS__ -D__CUDA_NO_HALF_CONVERSIONS__ -D__CUDA_NO_HALF2_OPERATORS__ --expt-relaxed-constexpr -gencode=arch=compute_75,code=sm_75 --compiler-options '-fPIC' -std=c++11 -c /data1/zyy/code/PAConv/scene_seg/lib/pointops/src/featuredistribute/featuredistribute_cuda_kernel.cu -o featuredistribute_cuda_kernel.cuda.o
    /bin/sh: 1: /data1/zyy/usr/local/cuda-10.1:/bin/nvcc: not found
    [10/12] c++ -MMD -MF labelstat_cuda.o.d -DTORCH_EXTENSION_NAME=pointops_cuda -DTORCH_API_INCLUDE_EXTENSION_H -isystem /data1/zyy/usr/local/anaconda3/envs/PAConv/lib/python3.7/site-packages/torch/include -isystem /data1/zyy/usr/local/anaconda3/envs/PAConv/lib/python3.7/site-packages/torch/include/torch/csrc/api/include -isystem /data1/zyy/usr/local/anaconda3/envs/PAConv/lib/python3.7/site-packages/torch/include/TH -isystem /data1/zyy/usr/local/anaconda3/envs/PAConv/lib/python3.7/site-packages/torch/include/THC -isystem /data1/zyy/usr/local/cuda-10.1:/include -isystem /data1/zyy/usr/local/anaconda3/envs/PAConv/include/python3.7m -D_GLIBCXX_USE_CXX11_ABI=0 -fPIC -std=c++11 -c /data1/zyy/code/PAConv/scene_seg/lib/pointops/src/labelstat/labelstat_cuda.cpp -o labelstat_cuda.o
    [11/12] c++ -MMD -MF featuredistribute_cuda.o.d -DTORCH_EXTENSION_NAME=pointops_cuda -DTORCH_API_INCLUDE_EXTENSION_H -isystem /data1/zyy/usr/local/anaconda3/envs/PAConv/lib/python3.7/site-packages/torch/include -isystem /data1/zyy/usr/local/anaconda3/envs/PAConv/lib/python3.7/site-packages/torch/include/torch/csrc/api/include -isystem /data1/zyy/usr/local/anaconda3/envs/PAConv/lib/python3.7/site-packages/torch/include/TH -isystem /data1/zyy/usr/local/anaconda3/envs/PAConv/lib/python3.7/site-packages/torch/include/THC -isystem /data1/zyy/usr/local/cuda-10.1:/include -isystem /data1/zyy/usr/local/anaconda3/envs/PAConv/include/python3.7m -D_GLIBCXX_USE_CXX11_ABI=0 -fPIC -std=c++11 -c /data1/zyy/code/PAConv/scene_seg/lib/pointops/src/featuredistribute/featuredistribute_cuda.cpp -o featuredistribute_cuda.o
    ninja: build stopped: subcommand failed.
    
    opened by yaoyz96 3
  • Why set npoints=None for Sampling layer in pointnet2_paconv_seg.py?

    Why set npoints=None for Sampling layer in pointnet2_paconv_seg.py?

    Hi @mutianxu

    I go through the seg code, and have one question. Why the points for sampling layer is set to None for paconv? Do you mean setting the npoint to the original point number in all the sampling layer?

    In the paper, it's said that replacing MLP with PAConv. But, actually, PAConv is used in sampling layer?

    https://github.com/CVMI-Lab/PAConv/blob/main/scene_seg/model/pointnet2/pointnet2_paconv_seg.py#L28

    opened by whuhxb 2
  • 编译环境

    编译环境

    您好,非常感谢您能够分享你的工作。我在运行代码的过程中遇到了一些关于编译环境的问题。 请问代码使用的CUDA版本和PyTorch版本是什么呢。 下面是我在运行代码过程中遇到的一些问题。 imagescene_seg/lib/paconv_lib/src/gpu/utils.h文件中的AT_ASSERT函数改为AT_ASSERTM函数后,对应报错消失。

    但是出现了新的错误。 image 请问这个什么问题呢

    opened by twn29004 2
  • path

    path

    Is the S3IDS dataset used Stanford3dDataset_v1.2_Aligned_Version? Excuse me code data_list = '/ MNT/sda1 / hszhao/dataset / 3 d/s3dis/list/train12346. TXT' how does this set?

    opened by r1y2p3 0
  • .t7 to .onnx problem

    .t7 to .onnx problem

    Hi, nice work.

    im trying to convert .t7 to .onnx model, but i got something wrong. Currently using: torch.onnx.export()

        path = "/home/t72onnx/best_model.t7"
        model = PAConv(args).to(device)
        dummy_input = torch.randn(16, 3, 1024).to(device)
        model.load_state_dict({k.replace('module.', ''):v for k, v in torch.load(path, map_location=device).items()})
        model.eval()
       
        torch.onnx.export(model.to(device),               # model being run
                      dummy_input.to(device),                         # model input (or a tuple for multiple inputs)
                      "my_mobileface.onnx",   # where to save the model (can be a file or file-like object)
                      export_params=True,        # store the trained parameter weights inside the model file
                      opset_version=12,
                      verbose=False, 
                      do_constant_folding=True,  # whether to execute constant folding for optimization
                      input_names = ['input'],   # the model's input names
                      output_names = ['output'], # the model's output names
                    #   Operator_export_types = torch.onnx.OperatorExportTypes.onnx_aten_fallack,
                     )
    

    but i got RuntimeError with AssignScoreWithK

    Traceback (most recent call last):
      File "main.py", line 307, in <module>
        torch.onnx.export(model.to(device),               # model being run
      File "/opt/conda/lib/python3.8/site-packages/torch/onnx/__init__.py", line 271, in export
        return utils.export(model, args, f, export_params, verbose, training,
      File "/opt/conda/lib/python3.8/site-packages/torch/onnx/utils.py", line 88, in export
        _export(model, args, f, export_params, verbose, training, input_names, output_names,
      File "/opt/conda/lib/python3.8/site-packages/torch/onnx/utils.py", line 709, in _export
        proto, export_map = graph._export_onnx(
    RuntimeError: ONNX export failed: Couldn't export Python operator AssignScoreWithK
    

    is that because torch.onnx.export does not surport PAConv model? Many thanks!

    opened by Printeger 0
Owner
CVMI Lab
CVMI Lab
Not All Points Are Equal: Learning Highly Efficient Point-based Detectors for 3D LiDAR Point Clouds (CVPR 2022, Oral)

Not All Points Are Equal: Learning Highly Efficient Point-based Detectors for 3D LiDAR Point Clouds (CVPR 2022, Oral) This is the official implementat

Yifan Zhang 259 Dec 25, 2022
Adaptive Graph Convolution for Point Cloud Analysis

Adaptive Graph Convolution for Point Cloud Analysis This repository contains the implementation of AdaptConv for point cloud analysis. Adaptive Graph

null 64 Dec 21, 2022
DGCNN - Dynamic Graph CNN for Learning on Point Clouds

DGCNN is the author's re-implementation of Dynamic Graph CNN, which achieves state-of-the-art performance on point-cloud-related high-level tasks including category classification, semantic segmentation and part segmentation.

Wang, Yue 1.3k Dec 26, 2022
(CVPR 2021) Back-tracing Representative Points for Voting-based 3D Object Detection in Point Clouds

BRNet Introduction This is a release of the code of our paper Back-tracing Representative Points for Voting-based 3D Object Detection in Point Clouds,

null 86 Oct 5, 2022
Implementation of the "PSTNet: Point Spatio-Temporal Convolution on Point Cloud Sequences" paper.

PSTNet: Point Spatio-Temporal Convolution on Point Cloud Sequences Introduction Point cloud sequences are irregular and unordered in the spatial dimen

Hehe Fan 63 Dec 9, 2022
(CVPR 2022 Oral) Official implementation for "Surface Representation for Point Clouds"

RepSurf - Surface Representation for Point Clouds [CVPR 2022 Oral] By Haoxi Ran* , Jun Liu, Chengjie Wang ( * : corresponding contact) The pytorch off

Haoxi Ran 264 Dec 23, 2022
Voxel Set Transformer: A Set-to-Set Approach to 3D Object Detection from Point Clouds (CVPR 2022)

Voxel Set Transformer: A Set-to-Set Approach to 3D Object Detection from Point Clouds (CVPR2022)[paper] Authors: Chenhang He, Ruihuang Li, Shuai Li, L

Billy HE 141 Dec 30, 2022
Implementation of CVPR'2022:Reconstructing Surfaces for Sparse Point Clouds with On-Surface Priors

Reconstructing Surfaces for Sparse Point Clouds with On-Surface Priors (CVPR 2022) Personal Web Pages | Paper | Project Page This repository contains

null 151 Dec 26, 2022
Implementation of CVPR'2022:Surface Reconstruction from Point Clouds by Learning Predictive Context Priors

Surface Reconstruction from Point Clouds by Learning Predictive Context Priors (CVPR 2022) Personal Web Pages | Paper | Project Page This repository c

null 136 Dec 12, 2022
Repo for FUZE project. I will also publish some Linux kernel LPE exploits for various real world kernel vulnerabilities here. the samples are uploaded for education purposes for red and blue teams.

Linux_kernel_exploits Some Linux kernel exploits for various real world kernel vulnerabilities here. More exploits are yet to come. This repo contains

Wei Wu 472 Dec 21, 2022
Code for Mesh Convolution Using a Learned Kernel Basis

Mesh Convolution This repository contains the implementation (in PyTorch) of the paper FULLY CONVOLUTIONAL MESH AUTOENCODER USING EFFICIENT SPATIALLY

Yi_Zhou 35 Jan 3, 2023
Semantic Segmentation for Real Point Cloud Scenes via Bilateral Augmentation and Adaptive Fusion (CVPR 2021)

Semantic Segmentation for Real Point Cloud Scenes via Bilateral Augmentation and Adaptive Fusion (CVPR 2021) This repository is for BAAF-Net introduce

null 90 Dec 29, 2022
Style-based Point Generator with Adversarial Rendering for Point Cloud Completion (CVPR 2021)

Style-based Point Generator with Adversarial Rendering for Point Cloud Completion (CVPR 2021) An efficient PyTorch library for Point Cloud Completion.

Microsoft 119 Jan 2, 2023
This project is the official implementation of our accepted ICLR 2021 paper BiPointNet: Binary Neural Network for Point Clouds.

BiPointNet: Binary Neural Network for Point Clouds Created by Haotong Qin, Zhongang Cai, Mingyuan Zhang, Yifu Ding, Haiyu Zhao, Shuai Yi, Xianglong Li

Haotong Qin 59 Dec 17, 2022
Code Release for ICCV 2021 (oral), "AdaFit: Rethinking Learning-based Normal Estimation on Point Clouds"

AdaFit: Rethinking Learning-based Normal Estimation on Point Clouds (ICCV 2021 oral) **Project Page | Arxiv ** Runsong Zhu¹, Yuan Liu², Zhen Dong¹, Te

null 40 Dec 30, 2022
Code for the paper "Spatio-temporal Self-Supervised Representation Learning for 3D Point Clouds" (ICCV 2021)

Spatio-temporal Self-Supervised Representation Learning for 3D Point Clouds This is the official code implementation for the paper "Spatio-temporal Se

Hesper 63 Jan 5, 2023
Neural-Pull: Learning Signed Distance Functions from Point Clouds by Learning to Pull Space onto Surfaces(ICML 2021)

Neural-Pull: Learning Signed Distance Functions from Point Clouds by Learning to Pull Space onto Surfaces(ICML 2021) This repository contains the code

null 149 Dec 15, 2022
Code for the paper SphereRPN: Learning Spheres for High-Quality Region Proposals on 3D Point Clouds Object Detection, ICIP 2021.

SphereRPN Code for the paper SphereRPN: Learning Spheres for High-Quality Region Proposals on 3D Point Clouds Object Detection, ICIP 2021. Authors: Th

Thang Vu 15 Dec 2, 2022
Public repository of the 3DV 2021 paper "Generative Zero-Shot Learning for Semantic Segmentation of 3D Point Clouds"

Generative Zero-Shot Learning for Semantic Segmentation of 3D Point Clouds Björn Michele1), Alexandre Boulch1), Gilles Puy1), Maxime Bucher1) and Rena

valeo.ai 15 Dec 22, 2022