Code for Learning Manifold Patch-Based Representations of Man-Made Shapes, in ICLR 2021.

Overview

LearningPatches | Webpage | Paper | Video

Learning Manifold Patch-Based Representations of Man-Made Shapes

Learning Manifold Patch-Based Representations of Man-Made Shapes
Dmitriy Smirnov, Mikhail Bessmeltsev, Justin Solomon
International Conference on Learning Representations (ICLR) 2021

Set-up

To install the code, run:

conda create -n learningpatches python=3.6 -y
conda activate learningpatches
conda install pytorch=1.3.1 torchvision cudatoolkit=10.2 -c pytorch -y
pip install -r requirements.txt

Also, be sure to execute export PYTHONPATH=:$PYTHONPATH prior to running any of the scripts.

Demo

First, download the pretrained models for each shape category:

wget -O models.zip https://www.dropbox.com/s/ntt1ytpjwx2385i/learningpatches_models.zip?dl=0
unzip models.zip

Then, run the following to generate an OBJ file with the 3D model for a given input sketch PNG image:

python scripts/run.py demo/airplane.png airplanes out.obj --no-turbines

Make sure to specify airplanes, bathtubs, bottles, cars, guitars, guns, knives, or guns as the shape category. Optionally, for the airplanes category, the --no-turbines flag does not output the turbine patches in the 3D model.

The demo directory contains PNGs of some sample input sketches.

Note that the meshes output by the demo script may have non-manifold discontinuities between patches due to discretization artifacts. This can be avoided by choosing the number of subdivisions based on patch boundary arc lengths. The results shown in the paper are all computed in this way.

BibTeX

@inproceedings{smirnov2021patches,
  title={Learning Manifold Patch-Based Representations of Man-Made Shapes},
  author={Smirnov, Dmitriy and Bessmeltsev, Mikhail and Solomon, Justin},
  year={2021},
  booktitle={International Conference on Learning Representations (ICLR)}
}
You might also like...
SymmetryNet: Learning to Predict Reflectional and Rotational Symmetries of 3D Shapes from Single-View RGB-D Images
SymmetryNet: Learning to Predict Reflectional and Rotational Symmetries of 3D Shapes from Single-View RGB-D Images

SymmetryNet SymmetryNet: Learning to Predict Reflectional and Rotational Symmetries of 3D Shapes from Single-View RGB-D Images ACM Transactions on Gra

Behind the Curtain: Learning Occluded Shapes for 3D Object Detection

Behind the Curtain: Learning Occluded Shapes for 3D Object Detection Acknowledgement We implement our model, BtcDet, based on [OpenPcdet 0.3.0]. Insta

Hierarchical Uniform Manifold Approximation and Projection
Hierarchical Uniform Manifold Approximation and Projection

HUMAP Hierarchical Manifold Approximation and Projection (HUMAP) is a technique based on UMAP for hierarchical non-linear dimensionality reduction. HU

⚡ Fast • 🪶 Lightweight • 0️⃣ Dependency • 🔌 Pluggable • 😈 TLS interception • 🔒 DNS-over-HTTPS • 🔥 Poor Man's VPN • ⏪ Reverse & ⏩ Forward • 👮🏿 This respository includes implementations on Manifoldron: Direct Space Partition via Manifold Discovery
This respository includes implementations on Manifoldron: Direct Space Partition via Manifold Discovery

Manifoldron: Direct Space Partition via Manifold Discovery This respository includes implementations on Manifoldron: Direct Space Partition via Manifo

Arxiv harvester - Poor man's simple harvester for arXiv resources

Poor man's simple harvester for arXiv resources This modest Python script takes

3D AffordanceNet is a 3D point cloud benchmark consisting of 23k shapes from 23 semantic object categories, annotated with 56k affordance annotations and covering 18 visual affordance categories.
3D AffordanceNet is a 3D point cloud benchmark consisting of 23k shapes from 23 semantic object categories, annotated with 56k affordance annotations and covering 18 visual affordance categories.

3D AffordanceNet This repository is the official experiment implementation of 3D AffordanceNet benchmark. 3D AffordanceNet is a 3D point cloud benchma

The official implementation of the research paper
The official implementation of the research paper "DAG Amendment for Inverse Control of Parametric Shapes"

DAG Amendment for Inverse Control of Parametric Shapes This repository is the official Blender implementation of the paper "DAG Amendment for Inverse

DPT: Deformable Patch-based Transformer for Visual Recognition (ACM MM2021)

DPT This repo is the official implementation of DPT: Deformable Patch-based Transformer for Visual Recognition (ACM MM2021). We provide code and model

Comments
  • How to use the Sphere24 and Sphere54 templates to generate Coons patches

    How to use the Sphere24 and Sphere54 templates to generate Coons patches

    Hello,

    As the title suggests, I'm trying to generate patches using the Sphere templates as mentioned in the paper. I can see in the scripts/run.py file that by default the category specific templates are used. Replacing the template paths to use the sphere24/54 folder, raises Unable to load checkpoint error.

    For example, changing the following line in main method of scripts/run.py

    edge_data = [line.strip().split(' ') for line in open(
            os.path.join('templates', args.category, 'edges.txt'), 'r')]
    
    

    to

    edge_data = [line.strip().split(' ') for line in open(
            os.path.join('templates', 'sphere24', 'edges.txt'), 'r')]
    

    and similarly changing paths of variables junction_order, topology, adjacencies, vertex_idx, and processed_vertices

    raises

    Unable to load checkpoint
    torch.Size([3, 128, 128])
    

    Please let me know if any additional information is required. Any guidance about generating patches with sphere templates will be appreciated . Thank you!

    opened by IamMohitM 0
Owner
Dima Smirnov
PhD Student @ MIT CSAIL
Dima Smirnov
This is the official source code for SLATE. We provide the code for the model, the training code, and a dataset loader for the 3D Shapes dataset. This code is implemented in Pytorch.

SLATE This is the official source code for SLATE. We provide the code for the model, the training code and a dataset loader for the 3D Shapes dataset.

Gautam Singh 66 Dec 26, 2022
Tensorflow 2 implementation of the paper: Learning and Evaluating Representations for Deep One-class Classification published at ICLR 2021

Deep Representation One-class Classification (DROC). This is not an officially supported Google product. Tensorflow 2 implementation of the paper: Lea

Google Research 137 Dec 23, 2022
A Pytorch implementation of "Manifold Matching via Deep Metric Learning for Generative Modeling" (ICCV 2021)

Manifold Matching via Deep Metric Learning for Generative Modeling A Pytorch implementation of "Manifold Matching via Deep Metric Learning for Generat

null 69 Dec 10, 2022
Official code release for ICCV 2021 paper SNARF: Differentiable Forward Skinning for Animating Non-rigid Neural Implicit Shapes.

Official code release for ICCV 2021 paper SNARF: Differentiable Forward Skinning for Animating Non-rigid Neural Implicit Shapes.

null 235 Dec 26, 2022
Implementation based on Paper - Learning a Probabilistic Latent Space of Object Shapes via 3D Generative-Adversarial Modeling

Implementation based on Paper - Learning a Probabilistic Latent Space of Object Shapes via 3D Generative-Adversarial Modeling

HamasKhan 3 Jul 8, 2022
Official implementation of NPMs: Neural Parametric Models for 3D Deformable Shapes - ICCV 2021

NPMs: Neural Parametric Models Project Page | Paper | ArXiv | Video NPMs: Neural Parametric Models for 3D Deformable Shapes Pablo Palafox, Aljaz Bozic

PabloPalafox 109 Nov 22, 2022
Research Artifact of USENIX Security 2022 Paper: Automated Side Channel Analysis of Media Software with Manifold Learning

Manifold-SCA Research Artifact of USENIX Security 2022 Paper: Automated Side Channel Analysis of Media Software with Manifold Learning The repo is org

Yuanyuan Yuan 172 Dec 29, 2022
Robot Reinforcement Learning on the Constraint Manifold

Implementation of "Robot Reinforcement Learning on the Constraint Manifold"

null 31 Dec 5, 2022
This repository contains the accompanying code for Deep Virtual Markers for Articulated 3D Shapes, ICCV'21

Deep Virtual Markers This repository contains the accompanying code for Deep Virtual Markers for Articulated 3D Shapes, ICCV'21 Getting Started Get sa

KimHyomin 45 Oct 7, 2022
Learning Skeletal Articulations with Neural Blend Shapes

This repository provides an end-to-end library for automatic character rigging and blend shapes generation as well as a visualization tool. It is based on our work Learning Skeletal Articulations with Neural Blend Shapes that is published in SIGGRAPH 2021.

Peizhuo 504 Dec 30, 2022