All Projects → amirhertz → Geometric Textures

amirhertz / Geometric Textures

Licence: mit

Projects that are alternatives of or similar to Geometric Textures

Fssgi
Exploratory Project on Fast Screen Space Global Illumination
Stars: ✭ 22 (-18.52%)
Mutual labels:  jupyter-notebook, computer-graphics
Johansen
Python implementation of the Johansen test for cointegration
Stars: ✭ 26 (-3.7%)
Mutual labels:  jupyter-notebook
Tutorial
Stars: ✭ 26 (-3.7%)
Mutual labels:  jupyter-notebook
Style Transfer
Style Transfer - Alia Bhatt (Google Colab)
Stars: ✭ 26 (-3.7%)
Mutual labels:  jupyter-notebook
Futures strategy
Stars: ✭ 26 (-3.7%)
Mutual labels:  jupyter-notebook
Datascience
Stars: ✭ 26 (-3.7%)
Mutual labels:  jupyter-notebook
Resources
PyMC3 educational resources
Stars: ✭ 930 (+3344.44%)
Mutual labels:  jupyter-notebook
Spark Cloudant
Cloudant integration with Spark as Spark SQL external datasource
Stars: ✭ 26 (-3.7%)
Mutual labels:  jupyter-notebook
Pytorch Notebooks
random pytorch hacks
Stars: ✭ 26 (-3.7%)
Mutual labels:  jupyter-notebook
Cs224n
Random stuff related to CS224N that I'm making public. Not the main repository.
Stars: ✭ 26 (-3.7%)
Mutual labels:  jupyter-notebook
Brent
bayesian graphical modelling and a bit of do-calculus for discrete data.
Stars: ✭ 26 (-3.7%)
Mutual labels:  jupyter-notebook
Batch Effect Removal Benchmarking
A benchmark of batch-effect correction methods for single-cell RNA sequencing data
Stars: ✭ 26 (-3.7%)
Mutual labels:  jupyter-notebook
Mariadb.org Tools
This project collects together various small scripts or projects that are used for MariaDB development, but for one reason or another do not make sense to keep inside the main MariaDB source tree.
Stars: ✭ 26 (-3.7%)
Mutual labels:  jupyter-notebook
Codes
不可能不会系列
Stars: ✭ 25 (-7.41%)
Mutual labels:  jupyter-notebook
Jupyter keyboard shortcuts snippets
Materials for a talk I gave to Metis Data Science Bootcamp on useful Jupyter Keyboard Shortcuts and Text Snippets
Stars: ✭ 26 (-3.7%)
Mutual labels:  jupyter-notebook
Gen bias gain
A Convenient Generalization of Schlick's Bias and Gain Functions
Stars: ✭ 26 (-3.7%)
Mutual labels:  jupyter-notebook
Heat and trees
Using HoloViz to explore relationship between surface temperature and tree density
Stars: ✭ 26 (-3.7%)
Mutual labels:  jupyter-notebook
Redistrict
Gerrymandering and Computational Redistricting
Stars: ✭ 26 (-3.7%)
Mutual labels:  jupyter-notebook
Eemeter
‼️ MOVED TO https://github.com/openeemeter/eemeter - Core computation engine for the Open Energy Efficiency Meter
Stars: ✭ 26 (-3.7%)
Mutual labels:  jupyter-notebook
Rainbow Is All You Need
Rainbow is all you need! A step-by-step tutorial from DQN to Rainbow
Stars: ✭ 938 (+3374.07%)
Mutual labels:  jupyter-notebook

Deep Geometric Texture Synthesis in PyTorch

SIGGRAPH 2020 [Paper] [Project Page]

Deep Geometric Texture Synthesis is an approach for learning the local geometric textures present within a 3D mesh model. This can be used to learn the unknown 3D geometric texture statistics from a single 3D model, and then synthesizes them on different 3D models. This repository contains the code for:

(1) creating multi-scale training data

(2) training a series of multi-scale generators

(3) synthesizing the learned geometric textures on unseen models

Installation

  • Clone this repo git clone https://github.com/amirhertz/geometric-textures.git.
  • Install via conda environment conda env create -f environment.yml (creates an environment called dgts)

Jupyter Demo

We provide an End-to-End Notebook which covers the 3 steps above. Or you can run each step seperately below. To use the Jupyter demo you should additionally install: jupyter, requests, and pytorch-gpu

Training Demo

Download Example Data

First get the multi-scaled training inputs already prepared by running

bash ./scripts/train/get_train_data.sh

Running Training

The example scripts can be found in scripts/train. If using conda env first activate env e.g. conda activate dgts, then from the root directory:

bash ./scripts/train/virus_ball.sh

will train on the spikey-ball from the paper. There is also a demo script for the "sphere rail" and the lizard.

Inference Demo

Get Trained Weights & Some Demo Data

bash ./scripts/inference/get_pretrained_data.sh

Note that if you already ran the training demo from above, this will overwrite some your training snapshots.

Unconditional & Coarse Mesh Generation

This will generate unconditional & conditioned on coarse mesh generative results (Fig. 5 from the paper):

bash ./scripts/inference/anky_generate.sh

Progressively Add Geometric Texture

This will generate a series of progressive textures. The target mesh will progressively gain textures, starting from a low-level, generator, up to a finer resolution generator. This results in a series of animated textures.

bash ./scripts/inference/sphere_rail_animate.sh

Create Training Data Demo

Download Example Data

First get some example 3D meshes with geometric texture

bash ./scripts/gt_optimization/get_demo_data.sh

Running Optimization

The example scripts can be found in scripts/gt_optimization. For example, run the following from the root directory

bash ./scripts/gt_optimization/covid.sh

which will generate the coronavirus from the paper.

Citation

If you find this code useful, please consider citing our paper

@article{Hertz2020deep,
  title = {Deep Geometric Texture Synthesis},
  author = {Hertz, Amir and Hanocka, Rana and Giryes, Raja and Cohen-Or, Daniel},
  year = {2020},
  issue_date = {July 2020}, 
  publisher = {Association for Computing Machinery}, 
  volume = {39}, 
  number = {4}, 
  issn = {0730-0301},
  url = {https://doi.org/10.1145/3386569.3392471},
  doi = {10.1145/3386569.3392471},
  articleno = {108},
  journal = {ACM Trans. Graph.} 
}

Questions / Issues

If you have questions or issues running this code, please open an issue.

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].