Giter VIP home page Giter VIP logo

lightconvpoint's Introduction

A framework to build convolutional network for point cloud processing.

FKAConv products

Paper: FKAConv, Feature-Kernel Alignment for Point Cloud Convolution

LightConvPoint is the framework developped and used for FKAConv experiments. The paper is available at openaccess.thecvf.com

If you use the FKAConv code or the LightConvPoint framework in your research, please consider citing:

@inproceedings{boulch2020fka,
  title={{FKAConv: Feature-Kernel Alignment for Point Cloud Convolution}},
  author={Boulch, Alexandre and Puy, Gilles and Marlet, Renaud},
  booktitle={15th Asian Conference on Computer Vision (ACCV 2020)},
  year={2020}
}

Code for FKAConv

The complete code and examples for FKAConv is available at https://github.com/valeoai/FKAConv. It relies on LightConvPoint v0.2.

Ressources

Example

We provide examples classification and segmentation datasets:

  • ModelNet40
  • ShapeNet
  • S3DIS
  • Semantic8
  • NPM3D

lightconvpoint's People

Contributors

aboulch avatar gabrieldemarmiesse avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar

lightconvpoint's Issues

Is KPconv kinda implemented in this repo?

Dear author,

I notice that part of accuracy result of Lightconv is aggragated from result of KPconv in training. So, if this part of result can be regard as the result of KP implementation?

implement your model for cloudpoint

Dear Author,

I have 3D point Cloud dataset of form: Data(pos=[10240, 3], y=[1]) .
I am really confused of the input_pts.

what would be the best way to implement your model?

transfrom my data? rewrite the achiecture and forward pass, and training loop?

No 'libtorch_cpu.so' for knn

Hi,
I tried installing LightConvPoint without the C++ libs for knn search, as instructed in the #Installation. Although, I got an error:

UserWarning: Disabling all use of wheels due to the use of --build-option / --global-option / --install-opt
ion.
  cmdoptions.check_install_build_global(options)
Using pip 20.3.1 from /u/amancu/anaconda3/envs/lcp/lib/python3.7/site-packages/pip (python 3.7)
Non-user install because site-packages writeable
Created temporary directory: /tmp/pip-ephem-wheel-cache-vaa8slyv
Created temporary directory: /tmp/pip-req-tracker-t8qqiwxb
Initialized build tracking at /tmp/pip-req-tracker-t8qqiwxb
Created build tracker: /tmp/pip-req-tracker-t8qqiwxb
Entered build tracker: /tmp/pip-req-tracker-t8qqiwxb
Created temporary directory: /tmp/pip-install-u4xsb_cb
Obtaining file:///wholebrain/u/amancu/Projects/LightConvPoint
  Added file:///wholebrain/u/amancu/Projects/LightConvPoint to build tracker '/tmp/pip-req-tracker-t8qqiwxb'
    Running setup.py (path:/wholebrain/u/amancu/Projects/LightConvPoint/setup.py) egg_info for package from file:///wholebrain/u/amancu/Projects/LightConvPoint
    Created temporary directory: /tmp/pip-pip-egg-info-h33zv15c
    Running command python setup.py egg_info
    ['/wholebrain/u/amancu/Projects/LightConvPoint/setup.py', 'egg_info', '--egg-base', '/tmp/pip-pip-egg-info-h33zv15c']
    LIGHTCONVPOINT -- PYTHON MODULES
    running egg_info
    creating /tmp/pip-pip-egg-info-h33zv15c/lightconvpoint.egg-info
    writing /tmp/pip-pip-egg-info-h33zv15c/lightconvpoint.egg-info/PKG-INFO
    writing dependency_links to /tmp/pip-pip-egg-info-h33zv15c/lightconvpoint.egg-info/dependency_links.txt
    writing top-level names to /tmp/pip-pip-egg-info-h33zv15c/lightconvpoint.egg-info/top_level.txt
    writing manifest file '/tmp/pip-pip-egg-info-h33zv15c/lightconvpoint.egg-info/SOURCES.txt'
    reading manifest file '/tmp/pip-pip-egg-info-h33zv15c/lightconvpoint.egg-info/SOURCES.txt'
    writing manifest file '/tmp/pip-pip-egg-info-h33zv15c/lightconvpoint.egg-info/SOURCES.txt'
  Source in /wholebrain/u/amancu/Projects/LightConvPoint has version 0.0.0, which satisfies requirement lightconvpoint==0.0.0 from file:///wholebrain/u/amancu/Projects/LightConvPoint
  Removed lightconvpoint==0.0.0 from file:///wholebrain/u/amancu/Projects/LightConvPoint from build tracker '/tmp/pip-req-tracker-t8qqiwxb'
Created temporary directory: /tmp/pip-unpack-dpl2fx6v
Installing collected packages: lightconvpoint
  Running setup.py develop for lightconvpoint
    Running command /u/amancu/anaconda3/envs/lcp/bin/python3.7 -c 'import sys, setuptools, tokenize; sys.argv[0] = '"'"'.../u/amancu/Projects/LightConvPoint/setup.py'"'"'; __file__='"'"'.../u/amancu/Projects/LightConvPoint/setup.py'"'"';f=getattr(tokenize, '"'"'open'"'"', open)(__file__);code=f.read().replace('"'"'\r\n'"'"', '"'"'\n'"'"');f.close();exec(compile(code, __file__, '"'"'exec'
"'"'))' develop --no-deps --nocompile
    usage: setup.py [global_opts] cmd1 [cmd1_opts] [cmd2 [cmd2_opts] ...]
       or: setup.py --help [cmd1 cmd2 ...]
       or: setup.py --help-commands
       or: setup.py cmd --help

    error: option --nocompile not recognized
    ['.../u/amancu/Projects/LightConvPoint/setup.py', 'develop', '--no-deps', '--nocompile']
    LIGHTCONVPOINT -- PYTHON MODULES
ERROR: Command errored out with exit status 1: /u/amancu/anaconda3/envs/lcp/bin/python3.7 -c 'import sys, setuptools, tokenize; sys.argv[0] = '"'"'.../u/amancu/Projects/LightConvPoint/setup.py'"'"'; __file__='"'"'.../u/amancu/Projects/LightConvPoint/setup.py'"'"';f=getattr(tokenize, '"'"'open'"'"', open)(__file__);code=f.read().replace('"'"'\r\n'"'"', '"'"'\n'"'"');f.close();exec(compile(code, __file__, '"'"'exec'"'"'))' develop --no-deps --nocompile Check the logs for full command output.
Exception information:
Traceback (most recent call last):
  File "/u/amancu/anaconda3/envs/lcp/lib/python3.7/site-packages/pip/_internal/cli/base_command.py", line 224, in _main
    status = self.run(options, args)
  File "/u/amancu/anaconda3/envs/lcp/lib/python3.7/site-packages/pip/_internal/cli/req_command.py", line 180, in wrapper
    return func(self, options, args)
File "/u/amancu/anaconda3/envs/lcp/lib/python3.7/site-packages/pip/_internal/commands/install.py", line 403, in run
    pycompile=options.compile,
  File "/u/amancu/anaconda3/envs/lcp/lib/python3.7/site-packages/pip/_internal/req/__init__.py", line 90, in install_given_reqs
    pycompile=pycompile,
  File "/u/amancu/anaconda3/envs/lcp/lib/python3.7/site-packages/pip/_internal/req/req_install.py", line 802, in install
    unpacked_source_directory=self.unpacked_source_directory,
  File "/u/amancu/anaconda3/envs/lcp/lib/python3.7/site-packages/pip/_internal/operations/install/editable_legacy.py", line 51, in install_editable
    cwd=unpacked_source_directory,
  File "/u/amancu/anaconda3/envs/lcp/lib/python3.7/site-packages/pip/_internal/utils/subprocess.py", line 240, in call_subprocess
    raise InstallationError(exc_msg)
pip._internal.exceptions.InstallationError: Command errored out with exit status 1: /u/amancu/anaconda3/envs/lcp/bin/python3.7 -c 'import sys, setuptools, tokenize; sys.argv[0] = '"'"'/.../LightConvPoint/setup.py'"'"'; __file__='"'"'.../LightConvPoint/setup.py'"'"';f=getattr(tokenize, '"'"'open'"'"', open)(__file__);code=f.read().replace('"'"'\r\n'"'"', '"'"'\n'"'"');f.close();exec(compile(code, __file__, '"'"'exec'"'"'))' develop --no-deps --nocompile Check the logs for full command output.
Removed build tracker: '/tmp/pip-req-tracker-t8qqiwxb'

Then, I tried with the C++ libs. It worked fine, until I wanted to run a script that uses lightconvpoint:

Traceback (most recent call last):
  File "train_merge_error.py", line 19, in <module>
    from elektronn3.models.lcp_adapt import ConvAdaptSeg
  File ".../models/lcp_adapt.py", line 15, in <module>
    import lightconvpoint.nn as lcp_nn
  File ".../LightConvPoint/lightconvpoint/nn/__init__.py", line 10, in <module>
    from .search_convpoint import SearchConvPoint
  File ".../LightConvPoint/lightconvpoint/nn/search_convpoint.py", line 2, in <module>
    import lightconvpoint.knn as nearest_neighbors
  File ".../LightConvPoint/lightconvpoint/knn/__init__.py", line 1, in <module>
    from .knn import knn
  File ".../LightConvPoint/lightconvpoint/knn/knn.py", line 8, in <module>
    knn_c_func = importlib.util.module_from_spec(knn_c_func_spec)
ImportError: libtorch_cpu.so: cannot open shared object file: No such file or directory

Any ideas of how I can fix this?

My torch specs are:
pytorch 1.4.0 py3.7_cuda10.1.243_cudnn7.6.3_0
torch-cluster 1.5.4 pypi_0
torch-geometric 1.7.0 pypi_0
torch-scatter 2.0.4 pypi_0
torch-sparse 0.6.1 pypi_0
torch-spline-conv 1.2.0 pypi_0
torchvision 0.5.0 py37_cu101

Thank you!

validation

Hi thank you so much for the code,
can i know what files from Paris-lille dataset are used for the validation, also it is unclear for me where the iou per classes are stored or the confusion matrix since i am unfamiliar with the tqdm module , i would appreciate your help.
Thanks

error about installing package in project

Hi, I tried to install this package in my project according file of install.md, but I failed . My environment of project is
pytorch + cuda = 1.8.1 + 11.1
python = 3.8
So, Is it a matter of the environment configuration ? And how can I install it in my project successfully
Thanks a lot.

Setup.py

hi, is the file src is named knn in the code because i had the error
import lightconvpoint.knn as nearest_neighbors
ModuleNotFoundError: No module named 'lightconvpoint.knn'
?

Space quantization

Hi, great work for this filed.
I intent to compare this methon with FPS in my dataset, but my ability of coding can't do things. So ,how should I use code in this project to mine.
Thanks a lot

question

Hello, i am very glad to see your code! Can you tell me what the meaning of 2500000 in prepare_data.py is? thanks.

I am very interested in your work, but A problem accured when install the setup.py. Do you kown why?

cc1plus: warning: command line option '-Wstrict-prototypes' is valid for C/ObjC but not for C++
./src/knn.cxx: In function 'at::Tensor knn(at::Tensor, at::Tensor, size_t)':
./src/knn.cxx:32:39: error: expected primary-expression before 'float'
const float* pts_data = pts.data_ptr();
^
./src/knn.cxx:38:40: error: expected primary-expression before 'float'
const float* qrs_data = qrs.data_ptr();
^
error: command 'gcc' failed with exit status 1

SemanticKITTI benchmark

Hi,
Thanks for your paper and code! Would you like to test on the SemanticKITTI benchmark, I'm very interested in the performance :)

Best,
Xuemeng

Install Error

Hello.
I have a couple of questions for you all. In setup.py I get this error.


Running command python setup.py egg_info
Traceback (most recent call last):
File "", line 2, in
File "", line 34, in
File "C:\Users\nicor\anaconda3\envs\FKAConv\LightConvPoint\setup.py", line 31, in
sys.argv.remove("--compile")
ValueError: list.remove(x): x not in list
['C:\Users\nicor\anaconda3\envs\FKAConv\LightConvPoint\setup.py', 'egg_info', '--egg-base', 'C:\Users\nicor\AppData\Local\Temp\pip-pip-egg-info-cmmwqvzq']
LIGHTCONVPOINT -- COMPILING CPP MODULES
error: subprocess-exited-with-error

× python setup.py egg_info did not run successfully.
│ exit code: 1
╰─> See above for output.

note: This error originates from a subprocess, and is likely not a problem with pip.
full command: 'C:\Users\nicor\anaconda3\envs\FKAConv\python.exe' -c '
exec(compile('"'"''"'"''"'"'
This is -- a caller that pip uses to run setup.py

  • It imports setuptools before invoking setup.py, to enable projects that directly
    import from distutils.core to work with newer packaging standards.
  • It provides a clear error message when setuptools is not installed.
  • It sets sys.argv[0] to the underlying setup.py, when invoking setup.py so
    setuptools doesn'"'"'t think the script is -c. This avoids the following warning:
    manifest_maker: standard file '"'"'-c'"'"' not found".
  • It generates a shim setup.py, for handling setup.cfg-only projects.
    import os, sys, tokenize

try:
import setuptools
except ImportError as error:
print(
"ERROR: Can not execute setup.py since setuptools is not available in "
"the build environment.",
file=sys.stderr,
)
sys.exit(1)

file = %r
sys.argv[0] = file

if os.path.exists(file):
filename = file
with tokenize.open(file) as f:
setup_py_code = f.read()
else:
filename = ""
setup_py_code = "from setuptools import setup; setup()"

exec(compile(setup_py_code, filename, "exec"))
'"'"''"'"''"'"' % ('"'"'C:\Users\nicor\anaconda3\envs\FKAConv\LightConvPoint\setup.py'"'"',), "", "exec"))' egg_info --egg-base 'C:\Users\nicor\AppData\Local\Temp\pip-pip-egg-info-cmmwqvzq'
cwd: C:\Users\nicor\anaconda3\envs\FKAConv\LightConvPoint
Preparing metadata (setup.py) ... error
error: metadata-generation-failed

× Encountered error while generating package metadata.

I would like to know how to resolve the error.
My environment is as follows:
Windows
cuda=10.1
torch=1.8.1
torchvison=0.9.1
pymongo=3.12.0
sacred=0.8.2

I would like to know in what environment you implemented it, including the version.
I apologies for my poor English.

time consuming in test.py

Dear author:
I used a point cloud segmentation network model to test 85000 point clouds in 40 seconds in test.py, and the test.py is in npm3d. I saw in your paper that testing 8192 points only took 4.9ms,could you tell me reason,thanks.

NPM3D Benchmark

Hello @valeoai and @aboulch,

Thank you for releasing the code behind your work. Are there any immediate plans to release an example for the NPM3D dataset?

Thanks in advance.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.