Giter Site home page Giter Site logo

robust-motion-in-betweening's Introduction

Robust Motion In-betweening

PyTorch Implementation of 'Robust Motion In-betweening'

Gallery

image1 image2
image3 image4
movie1 movie2
movie4 movie4
movie5 movie6

It implements a paper "Robust Motion In-betweening".

This article is a great source to understand authors intention and idea. This repo persues exact implementation of the paper, without tweaks and modifications.

Setup

  1. Follow LAFAN1 dataset's installation guide. You need to install git lfs first before cloning the dataset repo. Your directory will look like this:

    .
    |-- README.md
    |-- config
    |-- requirements.txt
    |-- rmi
    |-- test.py
    |-- tests
    |-- train.py
    `-- ubisoft-laforge-animation-dataset
    
  2. Run evaluate.py to unzip and validate it. (Install numpy first if you don't have it)

    $ pip install numpy
    $ python ubisoft-laforge-animation-dataset/evaluate.py 

    With this, you will have unpacked LAFAN dataset under ubisoft-laforge-animation-dataset folder.

  3. (Optional) You can use your own skeleton format as long as it fits with TorchSkeleton class. However, I recommend to use PyMO since it provides easy-to-use skeleton parser. You can install it as below:

    $ git clone https://github.com/omimo/PyMO.git
    $ cd PyMO
    $ python setup.py install

    Do not install this repo through pip install pymo or you will get a totally different package.

  4. Now, install packages listed in requirements.txt. Use appropriate pytorch version depending on your device(CPU/GPU).

Training & Test

You can simply run train.py and test.py for training and inference. In case of modifying training parameters, strongly recommend to change it from config/config.yaml.

Configuration

If you want to change configuration of processes, modify config_base.yaml in /config.

Reference

  • Quaternion processing utility is employed from Facebook Research's QuaterNet.

    @inproceedings{pavllo:quaternet:2018,
    title={QuaterNet: A Quaternion-based Recurrent Model for Human Motion},
    author={Pavllo, Dario and Grangier, David and Auli, Michael},
    booktitle={British Machine Vision Conference (BMVC)},
    year={2018}}
    
  • LAFAN1 Dataset and its utility codes are used in this repo.

    @article{harvey2020robust,
    author    = {FΓ©lix G. Harvey and Mike Yurick and Derek Nowrouzezahrai and Christopher Pal},
    title     = {Robust Motion In-Betweening},
    booktitle = {ACM Transactions on Graphics (Proceedings of ACM SIGGRAPH)},
    publisher = {ACM},
    volume    = {39},
    number    = {4},
    year      = {2020}
    }
    

robust-motion-in-betweening's People

Contributors

dependabot[bot] avatar jihoonerd 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

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar

robust-motion-in-betweening's Issues

test.py error

When run python test.py, a error as following:
Traceback (most recent call last):
File "/data1/fyy/Robust-Motion-In-betweening-main/test.py", line 223, in
test()
File "/data1/fyy/Robust-Motion-In-betweening-main/test.py", line 48, in test
lafan_dataset_test = LAFAN1Dataset(lafan_path=config['data']['data_dir'], processed_data_dir=config['test']['processed_data_dir'], train=False, device=device, window=window, training_frames=training_frames)
TypeError: LAFAN1Dataset.init() got an unexpected keyword argument 'training_frames'

Visualization

Hello, could you please to show the visualization code about specified maximo character like the provided demo in this repo? Thank you in advance!

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.