{"id":13936140,"url":"https://github.com/jsn5/dancenet","last_synced_at":"2025-07-19T21:31:52.537Z","repository":{"id":76225807,"uuid":"143685321","full_name":"jsn5/dancenet","owner":"jsn5","description":"DanceNet -💃💃Dance generator using Autoencoder, LSTM and Mixture Density Network. (Keras)","archived":false,"fork":false,"pushed_at":"2019-09-15T18:09:41.000Z","size":1756,"stargazers_count":513,"open_issues_count":0,"forks_count":82,"subscribers_count":29,"default_branch":"master","last_synced_at":"2024-11-27T04:30:40.816Z","etag":null,"topics":["autoencoder","computer-vision","generative-model","keras","lstm","mixture-density-networks"],"latest_commit_sha":null,"homepage":"","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/jsn5.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2018-08-06T06:25:22.000Z","updated_at":"2024-10-22T10:01:14.000Z","dependencies_parsed_at":null,"dependency_job_id":"41869db9-e0fb-485a-88b3-dafda17cd994","html_url":"https://github.com/jsn5/dancenet","commit_stats":null,"previous_names":[],"tags_count":1,"template":false,"template_full_name":null,"purl":"pkg:github/jsn5/dancenet","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jsn5%2Fdancenet","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jsn5%2Fdancenet/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jsn5%2Fdancenet/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jsn5%2Fdancenet/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/jsn5","download_url":"https://codeload.github.com/jsn5/dancenet/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jsn5%2Fdancenet/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":266019657,"owners_count":23864916,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["autoencoder","computer-vision","generative-model","keras","lstm","mixture-density-networks"],"created_at":"2024-08-07T23:02:24.830Z","updated_at":"2025-07-19T21:31:47.523Z","avatar_url":"https://github.com/jsn5.png","language":"Python","funding_links":[],"categories":["Python"],"sub_categories":[],"readme":"# DanceNet - Dance generator using Variational Autoencoder, LSTM and Mixture Density Network. (Keras)\n\n[![License: MIT](https://img.shields.io/badge/License-MIT-yellow.svg)](https://github.com/jsn5/dancenet/blob/master/LICENSE) [![Run on FloydHub](https://static.floydhub.com/button/button-small.svg)](https://floydhub.com/run)\n[![DOI](https://zenodo.org/badge/143685321.svg)](https://zenodo.org/badge/latestdoi/143685321)\n\n![](https://github.com/jsn5/dancenet/blob/master/demo.gif ) ![](https://github.com/jsn5/dancenet/blob/master/demo2.gif )\n\n## Main components:\n\n* Variational autoencoder\n* LSTM + Mixture Density Layer\n\n## Requirements:\n\n* Python version = 3.5.2\n\n  ### Packages\n  * keras==2.2.0\n  * sklearn==0.19.1\n  * numpy==1.14.3\n  * opencv-python==3.4.1\n\n## Dataset\n\nhttps://www.youtube.com/watch?v=NdSqAAT28v0\nThis is the video used for training.\n\n\n## How to run locally\n\n* Download the trained weights from [here](https://drive.google.com/file/d/1LWtERyPAzYeZjL816gBoLyQdC2MDK961/view?usp=sharing). and extract it to the dancenet dir.\n* Run dancegen.ipynb\n\n## How to run in your browser\n\n[![Run on FloydHub](https://static.floydhub.com/button/button-small.svg)](https://floydhub.com/run)\n\n* Click the button above to open this code in a FloydHub workspace (the [trained weights dataset](https://www.floydhub.com/whatrocks/datasets/dancenet-weights) will be automatically attached to the environment)\n* Run dancegen.ipynb\n\n## Training from scratch\n\n* fill dance sequence images labeled as `1.jpg`, `2.jpg` ... in `imgs/` folder\n* run `model.py`\n* run `gen_lv.py` to encode images\n* run `video_from_lv.py` to test decoded video\n* run  jupyter notebook `dancegen.ipynb` to train dancenet and generate new video.\n\n## References\n\n* [Does my AI have better dance moves than me?](https://www.youtube.com/watch?v=Sc7RiNgHHaE\u0026t=9s) by Cary Huang\n* [Generative Choreography using Deep Learning (Chor-RNN)](https://arxiv.org/abs/1605.06921)\n* [Building autoencoders in keras](https://blog.keras.io/building-autoencoders-in-keras.html) by [Francois Chollet](https://twitter.com/fchollet)\n* [Time Series Prediction with LSTM Recurrent Neural Networks in Python with Keras](https://machinelearningmastery.com/time-series-prediction-lstm-recurrent-neural-networks-python-keras/)\n* [Mixture Density Networks](http://blog.otoro.net/2015/06/14/mixture-density-networks/) by [David Ha](https://twitter.com/hardmaru)\n* [Mixture Density Layer for Keras](https://github.com/cpmpercussion/keras-mdn-layer) by [Charles Martin](https://github.com/cpmpercussion/)\n \n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fjsn5%2Fdancenet","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fjsn5%2Fdancenet","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fjsn5%2Fdancenet/lists"}