Git Product home page Git Product logo

spaghetti's Introduction

Installation

git clone https://github.com/amirhertz/spaghetti && cd spaghetti
conda env create -f environment.yml
conda activate spaghetti

Install Pytorch. The installation during development and testing was pytorch==1.9.0 cudatoolkit=11.1

Demo

  • Download pre-trained models
python download_weights.py
  • Run demo
python demo.py --model_name chairs_large --shape_dir samples

or

python demo.py --model_name airplanes --shape_dir samples
  • User controls
    • Select shapes from the collection on bottom.
    • right click to select / deselect parts
    • Click the pencil button will toggle between selection / deselection.
    • Transform selected parts is similar to Blender short-keys. Pressing 'G' / 'R', will start translation / rotation mode. Toggle axis by pressing 'X' / 'Y' / 'Z'. Press 'Esc' to cancel transform.
    • Click the broom to reset.

Adding shapes to demo

  • From training data
python shape_inversion.py --model_name  <model_name>  --source training --mesh_path --num_samples <num_samples>
  • Random generation
python shape_inversion.py --model_name  <model_name>  --source random --mesh_path --num_samples <num_samples>
  • From existing watertight mesh:
python shape_inversion.py --model_name  <model_name>  --mesh_path <mesh_path>

For example, to add the provided sample chair to the exiting chairs in the demo:

python shape_inversion.py --model_name chairs_large --mesh_path ./assets/mesh/example.obj

Training

Coming soon.

spaghetti's People

Contributors

amirhertz avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

spaghetti's Issues

Errors when trying to add provided chair example

Hi!

Apparently, the downloading script only downloads the model for airplanes, but not for chairs

$ python download_weights.py
Downloading spaghetti_airplanes
100%|##########| 102M/102M [00:02<00:00, 47.3MB/s]
Done!

So, I cannot run the demo with chairs =(

Segmentation fault (core dumped)

Editing shapes in implicit space is really cool, and I really want to try the demo! Unfortunately, I got everything fixed, but I encountered this problem:
2d0ffdb1cf1482d22de7945aecfd3af
(In Linux env)
Is there any good way to solve it? Thank you!

When to release the training code?

@amirhertz Thank you for the nice paper.

It's been over four months since you released the demo code.
May I know when the training code will be released? (or whether it will not be released)

How to perform edit using demo?

Hi, thanks for the cool demo! I'm trying to play around and edit parts -- I can currently select parts but pressing 'G' does not seem to allow me to translate my selected part. Do I have to press some other buttons or click/drag on the mouse a certain way?

Pretrained model

Thanks for your fancy work! And I notice that in your paper's experiment setting, the Generation task includes "table", "chair", "airplane". And now since the pretrained model for table and airplane has been released, will the pretrained model for "table" be released? Really appreciate it if it can be released. Thanks.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.