This code developed during the Google Summer of Code 2020 and is pedning in TensorFlow Graphics.
This module contains a python TensorFlow module pylib
and a custom ops package in tfg_custom_ops
.
While it is possible to run without the custom ops package, it is strongly advised to install it for performance and memory efficiency.
This code contains all necessary operations to perform point cloud convolutions
- Datastructure
- Point cloud class for batches of arbitrary sized point clouds.
- Memory efficient regular grid data structure
- Point cloud operations
- Neighborhood computation
- Point density estimation
- Spatial sampling
- Poisson Disk sampling
- Cell average sampling
- Convolution kernels
- Feature aggregation inside receptive fields
- Monte-Carlo integration with pdf
- Constant summation
- Easy to use classes for building models
PointCloud
classPointHierarchy
for sequential downsampling of point clouds- layer classes
MCConv
PointConv
KPConv
Conv1x1
Precompiled versions of the custom ops package are provided in custom_ops/pkg_builds/tf_*
for the latest TensorFlow versions.
For compilation instructions see the README in the custom_ops
folder.
To install it run the following command (replace VERSION
with your installed TensorFlow version, e.g. 2.3.0
)
pip install custom_ops/tf_VERSION/*.whl
Check out the Colab notebooks for an introduction to the code
Unit tests can be evaluated using
pip install -r pytest_requirements.txt
pytest pylib/
These include tests of the custom ops if they are installed.
You may use this software under the Apache 2.0 License.
Moved to https://github.com/schellmi42/graphics/tree/point_convolutions/tensorflow_graphics/projects
You may use this software under the Apache 2.0 License.