AITUS - An atomatic notr maker for CYTUS

Related tags

Deep LearningAITUS
Overview

AITUS

an automatic note maker for CYTUS.

利用AI根据指定乐曲生成CYTUS游戏谱面。

效果展示:https://www.bilibili.com/video/BV1Lf4y1F7aq

这只是作者的一个初次尝试,欢迎感兴趣的小伙伴进行优化或提出新方法!

共享链接

下面的3、4部分介绍了AITUS的使用方法,比较繁琐,且需要安装许多软件。鉴于此,作者在这里设置了一个共享链接,用于分享AITUS创作的游戏谱面。

链接:https://pan.baidu.com/s/1dGaLOuBKdeXBRZt1NuP9WA?pwd=aicy 提取码:aicy

您可以私信给作者您想要创作谱面的乐曲,作者生成谱面后会上传到这个链接里。

前置准备

使用AITUS一共需要以下软件作为辅助:

  • 格式工厂(或其他音频文件格式转化软件)
  • MixMeister BPM Analyzer,用于获取乐曲bpm
  • Cylheim,CYTUS游戏谱面制作器
  • Python3
  • PyTorch2

使用说明

【step 1】

将乐曲转为wav格式。

【step 2】

使用软件【MixMeister BPM Analyzer】测量乐曲的bpm。

【step 3】

使用【Cylheim】创建空谱面,创建空谱面时需要导入乐曲、bpm等信息。创建好的谱面是一个json文件。该json文件的命名应与乐曲文件的命名相同。

【step 4】

将创建好的谱面json文件、乐曲wav文件、model下的四个pt文件、code下的【NoteMake.py】放在同一目录下,并修改【NoteMake.py】中如下图所示的乐曲信息:

image-20220119105537401

然后运行NoteMake.py,约5-10分钟后运行结束,得到生成的json谱面文件(命名与乐曲命名相同)。

【step 5】

用生成的json去替换原【Cylheim】项目下的json文件,然后打开【Cylheim】项目即可看见和演示生成的谱面。

原理简介

训练数据来自CYTUS

训练所用的乐曲和谱面信息来自CYTUS。

从音乐到图像

为了利用CNN,将读入的一段乐曲信号按顺序转化为若干80×80的图片,并根据谱面文件的信息给每张图打tag。

分工训练

为了生成游戏谱面,一共训练了四个模型:

ExistModel:判断一张图是否有key。

PosModel:如果一张图中有key,判断这个key的横坐标。

TypeModel:如果一张图中有key,判断这个key的类型(由于CYTUS1代只有click、hold、chain三种类型的key,因此AITUS目前也只考虑了这三种类型)。

TimeModel:如果一张图中对应的key是hold,判断这个hold的持续的时间。

一些调整

生成的谱面谱面并不那么如意,因此在【NoteMake.py】中还对模型的输出结果做了调整(详情请见代码)。

Owner
GradiusTwinbee
GradiusTwinbee
PyTorch implementation of "Learning to Discover Cross-Domain Relations with Generative Adversarial Networks"

DiscoGAN in PyTorch PyTorch implementation of Learning to Discover Cross-Domain Relations with Generative Adversarial Networks. * All samples in READM

Taehoon Kim 1k Jan 04, 2023
9th place solution

AllDataAreExt-Galixir-Kaggle-HPA-2021-Solution Team Members Qishen Ha is Master of Engineering from the University of Tokyo. Machine Learning Engineer

daishu 5 Nov 18, 2021
Hyperparameter Optimization for TensorFlow, Keras and PyTorch

Hyperparameter Optimization for Keras Talos • Key Features • Examples • Install • Support • Docs • Issues • License • Download Talos radically changes

Autonomio 1.6k Dec 15, 2022
Code of Adverse Weather Image Translation with Asymmetric and Uncertainty aware GAN

Adverse Weather Image Translation with Asymmetric and Uncertainty-aware GAN (AU-GAN) Official Tensorflow implementation of Adverse Weather Image Trans

Jeong-gi Kwak 36 Dec 26, 2022
On the adaptation of recurrent neural networks for system identification

On the adaptation of recurrent neural networks for system identification This repository contains the Python code to reproduce the results of the pape

Marco Forgione 3 Jan 13, 2022
Identifying a Training-Set Attack’s Target Using Renormalized Influence Estimation

Identifying a Training-Set Attack’s Target Using Renormalized Influence Estimation By: Zayd Hammoudeh and Daniel Lowd Paper: Arxiv Preprint Coming soo

Zayd Hammoudeh 2 Oct 08, 2022
Revealing and Protecting Labels in Distributed Training

Revealing and Protecting Labels in Distributed Training

Google Interns 0 Nov 09, 2022
DISTIL: Deep dIverSified inTeractIve Learning.

DISTIL: Deep dIverSified inTeractIve Learning. An active/inter-active learning library built on py-torch for reducing labeling costs.

decile-team 110 Dec 06, 2022
Python package for missing-data imputation with deep learning

MIDASpy Overview MIDASpy is a Python package for multiply imputing missing data using deep learning methods. The MIDASpy algorithm offers significant

MIDASverse 77 Dec 03, 2022
Configure SRX interfaces with Scrapli

Configure SRX interfaces with Scrapli Overview This example will show how to configure interfaces on Juniper's SRX firewalls. In addition to the Pytho

Calvin Remsburg 1 Jan 07, 2022
Simple ray intersection library similar to coldet - succedeed by libacc

Ray Intersection This project offers a header only acceleration structure library including implementations for a BVH- and KD-Tree. Applications may i

Nils Moehrle 29 Jun 23, 2022
mbrl-lib is a toolbox for facilitating development of Model-Based Reinforcement Learning algorithms.

mbrl-lib is a toolbox for facilitating development of Model-Based Reinforcement Learning algorithms. It provides easily interchangeable modeling and planning components, and a set of utility function

Facebook Research 724 Jan 04, 2023
This is an unofficial implementation of the paper “Student-Teacher Feature Pyramid Matching for Unsupervised Anomaly Detection”.

This is an unofficial implementation of the paper “Student-Teacher Feature Pyramid Matching for Unsupervised Anomaly Detection”.

haifeng xia 32 Oct 26, 2022
1st place solution to the Satellite Image Change Detection Challenge hosted by SenseTime

1st place solution to the Satellite Image Change Detection Challenge hosted by SenseTime

Lihe Yang 209 Jan 01, 2023
OverFeat is a Convolutional Network-based image classifier and feature extractor.

OverFeat OverFeat is a Convolutional Network-based image classifier and feature extractor. OverFeat was trained on the ImageNet dataset and participat

593 Dec 08, 2022
PyTorch implementation of DeepDream algorithm

neural-dream This is a PyTorch implementation of DeepDream. The code is based on neural-style-pt. Here we DeepDream a photograph of the Golden Gate Br

121 Nov 05, 2022
Implementation of Squeezenet in pytorch, pretrained models on Cifar 10 data to come

Pytorch Squeeznet Pytorch implementation of Squeezenet model as described in https://arxiv.org/abs/1602.07360 on cifar-10 Data. The definition of Sque

gaurav pathak 86 Oct 28, 2022
An architecture that makes any doodle realistic, in any specified style, using VQGAN, CLIP and some basic embedding arithmetics.

Sketch Simulator An architecture that makes any doodle realistic, in any specified style, using VQGAN, CLIP and some basic embedding arithmetics. See

12 Dec 18, 2022
Python Tensorflow 2 scripts for detecting objects of any class in an image without knowing their label.

Tensorflow-Mobile-Generic-Object-Localizer Python Tensorflow 2 scripts for detecting objects of any class in an image without knowing their label. Ori

Ibai Gorordo 11 Nov 15, 2022
Code for weakly supervised segmentation of a single class

SingleClassRL Implementation of weak single object segmentation from paper "Regularized Loss for Weakly Supervised Single Class Semantic Segmentation"

16 Nov 14, 2022