All Projects → kotritrona → Osumapper

kotritrona / Osumapper

Licence: apache-2.0
An automatic beatmap generator using Tensorflow / Deep Learning.

Programming Languages

python
139335 projects - #7 most used programming language

Projects that are alternatives of or similar to Osumapper

Pytorch realtime multi Person pose estimation
Pytorch version of Realtime Multi-Person Pose Estimation project
Stars: ✭ 205 (-0.97%)
Mutual labels:  jupyter-notebook
Rl Tutorial Jnrr19
Stable-Baselines tutorial for Journées Nationales de la Recherche en Robotique 2019
Stars: ✭ 204 (-1.45%)
Mutual labels:  jupyter-notebook
Scihub
Source code and data analyses for the Sci-Hub Coverage Study
Stars: ✭ 205 (-0.97%)
Mutual labels:  jupyter-notebook
Concretedropout
Code for Concrete Dropout as presented in https://arxiv.org/abs/1705.07832
Stars: ✭ 205 (-0.97%)
Mutual labels:  jupyter-notebook
Learnopencv
Learn OpenCV : C++ and Python Examples
Stars: ✭ 15,385 (+7332.37%)
Mutual labels:  jupyter-notebook
Pytorch How And When To Use Module Sequential Modulelist And Moduledict
Code for my medium article
Stars: ✭ 206 (-0.48%)
Mutual labels:  jupyter-notebook
Spacy Ru
Russian language models for spaCy
Stars: ✭ 205 (-0.97%)
Mutual labels:  jupyter-notebook
Highres Net
Pytorch implementation of HighRes-net, a neural network for multi-frame super-resolution, trained and tested on the European Space Agency’s Kelvin competition.
Stars: ✭ 207 (+0%)
Mutual labels:  jupyter-notebook
Lihang Code
《统计学习方法》的代码实现
Stars: ✭ 14,955 (+7124.64%)
Mutual labels:  jupyter-notebook
Instancesegmentation sentinel2
🌱 Deep Learning for Instance Segmentation of Agricultural Fields - Master thesis
Stars: ✭ 206 (-0.48%)
Mutual labels:  jupyter-notebook
Examples
Home for Elasticsearch examples available to everyone. It's a great way to get started.
Stars: ✭ 2,427 (+1072.46%)
Mutual labels:  jupyter-notebook
Screenshot To Code
A neural network that transforms a design mock-up into a static website.
Stars: ✭ 13,561 (+6451.21%)
Mutual labels:  jupyter-notebook
Icychesszero
中国象棋alpha zero程序
Stars: ✭ 206 (-0.48%)
Mutual labels:  jupyter-notebook
Classifying data using a support vector machine
This is the code for the "Classifying Data using Gradient Descent" by Siraj Raval on Youtube
Stars: ✭ 204 (-1.45%)
Mutual labels:  jupyter-notebook
Blazeface Pytorch
The BlazeFace face detector model implemented in PyTorch
Stars: ✭ 203 (-1.93%)
Mutual labels:  jupyter-notebook
Yolo Digit Detector
Implemented digit detector in natural scene using resnet50 and Yolo-v2. I used SVHN as the training set, and implemented it using tensorflow and keras.
Stars: ✭ 205 (-0.97%)
Mutual labels:  jupyter-notebook
Mlapp cn code
《Machine Learning: A Probabilistic Perspective》(Kevin P. Murphy)中文翻译和书中算法的Python实现。
Stars: ✭ 204 (-1.45%)
Mutual labels:  jupyter-notebook
Portraitnet
Code for the paper "PortraitNet: Real-time portrait segmentation network for mobile device" @ CAD&Graphics2019
Stars: ✭ 207 (+0%)
Mutual labels:  jupyter-notebook
Elementsofdatascience
An introduction to data science in Python, for people with no programming experience.
Stars: ✭ 205 (-0.97%)
Mutual labels:  jupyter-notebook
Doc Han Att
Hierarchical Attention Networks for Chinese Sentiment Classification
Stars: ✭ 206 (-0.48%)
Mutual labels:  jupyter-notebook

osumapper

An automatic beatmap generator using Tensorflow / Deep Learning.

Demo map 1 (low BPM): https://osu.ppy.sh/beatmapsets/1290030

Demo map 2 (high BPM): https://osu.ppy.sh/beatmapsets/1290026

Colaboratory

https://colab.research.google.com/github/kotritrona/osumapper/blob/master/v7.0/Colab.ipynb

For mania mode: mania_Colab.ipynb

Complete guide for a newcomer in osu! mapping

https://github.com/kotritrona/osumapper/wiki/Complete-guide:-creating-beatmap-using-osumapper

Installation & Model Running

Important tip for model training

Don't train with every single map in your osu!. That's not how machine learning works!

I would suggest you select only maps you think are well made, for instance a mapset that contains all 5.0 ~ 6.5☆ maps mapped by (insert mapper name).

Maplist.txt creation:

  • I have made a maplist generator under v7.0/ folder. Run node gen_maplist.js under the directory to start.
  • the other way to create a maplist.txt file to train the model is by using the maplist creator.py script (found in v6.2 folder). running this should overwrite the maplist.txt in the folder with a new one using the maps from the collection folder you have specified.

Model Specification

Structure diagram

  • Rhythm model
    • CNN/LSTM + dense layers
    • input music FFTs (7 time_windows x 32 fft_size x 2 (magnitude, phase))
    • additional input timing (is_1/1, is_1/4, is_1/2, is_the_other_1/4, BPM, tick_length, slider_length)
    • output (is_note, is_circle, is_slider, is_spinner, is_sliding, is_spinning) for 1/-1 classification
  • Momentum model
    • Same structure as above
    • output (momentum, angular_momentum) as regression
    • momentum is distance over time. It should be proportional to circle size which I may implement later.
    • angular_momentum is angle over time. currently unused.
    • it's only used in v6.2
  • Slider model
    • was designed to classify slider lengths and shapes
    • currently unused
  • Flow model
    • uses GAN to generate the flow.
    • takes 10 notes as a group and train them each time
    • Generator: some dense layers, input (randomness x 50), output (cos_list x 20, sin_list x 20)
    • this output is then fed into a map generator to build a map corresponding to the angular values
    • map constructor output: (x_start, y_start, vector_out_x, vector_out_y, x_end, y_end) x 10
    • Discriminator: simpleRNN, some dense layers, input ↑, output (1,) ranging from 0 to 1
    • every big epoch(?), trains generator for 7 epochs and then discriminator 3 epochs
    • trains 6 ~ 25 big epochs each group. mostly 6 epochs unless the generated map is out of the mapping region (0:512, 0:384).
  • Beatmap Converter
    • uses node.js to convert map data between JSON and .osu formats

Citing

If you want to cite osumapper in a scholarly work, please cite the github page. I'm not going to write a paper for it.

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].