ml-for-gp / jaxgptoolbox

Geometry processing utilities compatible with jax for autodifferentiation.

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

jaxgptoolbox

This is a collection of basic geometry processing functions, constructed to work with jax's autodifferentiation feature for applications in machine learning. We split these functions into not differentiable ones in the general folder, and differentiable ones in the differentiable folder. We also include some wrappers of third party functions in the external folder for convenience. To use these utility functions, one can simply import this package and use it as

import jaxgptoolbox as jgp
import polyscope as ps
V,F = jgp.read_mesh('path_to_OBJ')
ps.init()
ps.register_surface_mesh('my_mesh',V,F)
ps.show()

Dependencies

This library depends on jax and some common python libraries numpy scipy. Our demos rely on matplotlib and polyscope for visualization. Some functions in the external folder depend on libigl. Please make sure to install all dependencies (for example, with conda) before using the library.

Contacts & Warnings

The toolbox grew out of Oded Stein's and Hsueh-Ti Derek Liu's private research codebase during their PhD studies. Some of these functions are not fully tested nor optimized, please use them with caution. If you're interested in contributing or noticing any issues, please contact us (ostein@mit.edu, hsuehtil@cs.toronto.edu) or submit a pull request.

License

Consult the LICENSE file for details about the license of this project.

About

Geometry processing utilities compatible with jax for autodifferentiation.

License:Other


Languages

Language:Python 100.0%