NVIDIA Develops PyTorch Library To Accelerate 3D Deep Learning Research

  • Kaolin is a new comprehensive PyTorch library that moves 3D models into the realm of neural networks.
  • It is packed with many graphics components, including rendering, shading, and lightning.
  • It cuts down the task for creating a 3D model for deep learning from 300 lines to code to just 5.

3D deep learning is receiving a lot of attention these days because of its high relevance in complex tasks such as augmented reality, self-driving vehicles, and robotics. The advent of powerful graphics cards and deep learning methods have enabled the analysis of large, previously intractable 3D data.

However, performing experiments in this field is an extremely difficult task because there is no standard system to help researchers easily load common 3D datasets, and train and evaluate machine learning architectures.

This is why researchers at NVIDIA have developed a tool — Kaolin — that moves 3D models into the realm of neural networks. It’s a PyTorch library for accelerating deep learning research.

The named Kaolin comes from Kaolinite, a form of plasticine (clay) that is sometimes used to sculpt 3D models.

A Valuable Tool For Both Beginners and Experienced Developers

By implementing this comprehensive library, users can cut down the task of creating a 3D model for deep learning from 300 lines of code to just 5.

Kaolin offers features to load and preprocesses various 3D datasets and local functions to control different representations like pointclouds, voxel grids, and meshes. It also diminishes the use of unnecessary boilerplate code.

KaolinAn illustration of 5 lines of code required to train and test a PointNet++ classifier for airplane vs car 

The library is packed with a variety of graphics components, ranging from rendering and shading to view warping. It supports a set of evaluation metrics and loss functions for seamless evaluations. And there’s a visualization module for rendering 3D outcomes.

Kaolin can support almost all common 3D tasks, including

  1. Basic graphic utilities (shading, lighting, etc.)
  2. Differentiable rendering
  3. Single-image based mesh reconstruction
  4. Mesh classification and segmentation
  5. 3D superresolution on voxel grids

Reference: arXiv:1911.05063 | GitHub

Real-World Applications

NVIDIA Develops PyTorch Library - Kaolin

Classification: Usually, the first step in the complicated processes is to identify objects in a 3D scene.

3D part segmentation: Kaolin makes it easy to customize a 3D model or rig a character for animation, by automatically identifying different parts of the model.

Image to 3D: It can also build a 3D model from the product image detected by a trained neural network.

Read: NVIDIA Develops AI That Creates Interactive Graphics From Real World

Researchers have released source code and some pre-trained models for such tasks on standard benchmarks. They intend to foster a strong open-source community around Kaolin. Contributions from other researchers and practitioners are welcomed.

Written by
Varun Kumar

Varun Kumar is a professional science and technology journalist and a big fan of AI, machines, and space exploration. He received a Master's degree in computer science from Indraprastha University. To find out about his latest projects, feel free to directly email him at [email protected] 

View all articles
Leave a reply