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
Python Implementation of Chess Playing AI with variable difficulty

Chess AI with variable difficulty level implemented using the MiniMax AB-Pruning Algorithm

Ali Imran 7 Feb 20, 2022
ESL: Event-based Structured Light

ESL: Event-based Structured Light Video (click on the image) This is the code for the 2021 3DV paper ESL: Event-based Structured Light by Manasi Mugli

Robotics and Perception Group 29 Oct 24, 2022
implement of SwiftNet:Real-time Video Object Segmentation

SwiftNet The official PyTorch implementation of SwiftNet:Real-time Video Object Segmentation, which has been accepted by CVPR2021. Requirements Python

haochen wang 64 Dec 14, 2022
Codes for AAAI22 paper "Learning to Solve Travelling Salesman Problem with Hardness-Adaptive Curriculum"

Paper For more details, please see our paper Learning to Solve Travelling Salesman Problem with Hardness-Adaptive Curriculum which has been accepted a

14 Sep 30, 2022
Cache Requests in Deta Bases and Echo them with Deta Micros

Deta Echo Cache Leverage the awesome Deta Micros and Deta Base to cache requests and echo them as needed. Stop worrying about slow public APIs or agre

Gingerbreadfork 8 Dec 07, 2021
✨风纪委员会自动投票脚本,利用Github Action帮你进行裁决操作(为了让其他风纪委员有案件可判,本程序从中午12点才开始运行,有需要请自己修改运行时间)

风纪委员会自动投票 本脚本通过使用Github Action来实现B站风纪委员的自动投票功能,喜欢请给我点个STAR吧! 如果你不是风纪委员,在符合风纪委员申请条件的情况下,本脚本会自动帮你申请 投票时间是早上八点,如果有需要请自行修改.github/workflows/Judge.yml中的时间,

Pesy Wu 25 Feb 17, 2021
Python Library for learning (Structure and Parameter) and inference (Statistical and Causal) in Bayesian Networks.

pgmpy pgmpy is a python library for working with Probabilistic Graphical Models. Documentation and list of algorithms supported is at our official sit

pgmpy 2.2k Jan 03, 2023
AI创造营 :Metaverse启动机之重构现世,结合PaddlePaddle 和 Wechaty 创造自己的聊天机器人

paddle-wechaty-Zodiac AI创造营 :Metaverse启动机之重构现世,结合PaddlePaddle 和 Wechaty 创造自己的聊天机器人 12星座若穿越科幻剧,会拥有什么超能力呢?快来迎接你的专属超能力吧! 现在很多年轻人都喜欢看科幻剧,像是复仇者系列,里面有很多英雄、超

105 Dec 22, 2022
This is a clean and robust Pytorch implementation of DQN and Double DQN.

DQN/DDQN-Pytorch This is a clean and robust Pytorch implementation of DQN and Double DQN. Here is the training curve: All the experiments are trained

XinJingHao 15 Dec 27, 2022
Husein pet projects in here!

project-suka-suka Husein pet projects in here! List of projects mysejahtera-density. Generate resolution points using meshgrid and request each points

HUSEIN ZOLKEPLI 47 Dec 09, 2022
A project which aims to protect your privacy using inexpensive hardware and easily modifiable software

Protecting your privacy using an ESP32, an IR sensor and a python script This project, which I personally call the "never-gonna-catch-me-in-the-act-ev

8 Oct 10, 2022
A python library for self-supervised learning on images.

Lightly is a computer vision framework for self-supervised learning. We, at Lightly, are passionate engineers who want to make deep learning more effi

Lightly 2k Jan 08, 2023
STEM: An approach to Multi-source Domain Adaptation with Guarantees

STEM: An approach to Multi-source Domain Adaptation with Guarantees Introduction This is the official implementation of ``STEM: An approach to Multi-s

5 Dec 19, 2022
TAug :: Time Series Data Augmentation using Deep Generative Models

TAug :: Time Series Data Augmentation using Deep Generative Models Note!!! The package is under development so be careful for using in production! Fea

35 Dec 06, 2022
DUE: End-to-End Document Understanding Benchmark

This is the repository that provide tools to download data, reproduce the baseline results and evaluation. What can you achieve with this guide Based

21 Dec 29, 2022
This repo implements a 3D segmentation task for an airport baggage dataset.

3D CT Scan Segmentation With Occupancy Network This repo implements a 3D superresolution segmentation task for an airport baggage dataset. Our final p

Christoph Reich 2 Mar 28, 2022
Label-Free Model Evaluation with Semi-Structured Dataset Representations

Label-Free Model Evaluation with Semi-Structured Dataset Representations Prerequisites This code uses the following libraries Python 3.7 NumPy PyTorch

8 Oct 06, 2022
Self-supervised Product Quantization for Deep Unsupervised Image Retrieval - ICCV2021

Self-supervised Product Quantization for Deep Unsupervised Image Retrieval Pytorch implementation of SPQ Accepted to ICCV 2021 - paper Young Kyun Jang

Young Kyun Jang 71 Dec 27, 2022
FACIAL: Synthesizing Dynamic Talking Face With Implicit Attribute Learning. ICCV, 2021.

FACIAL: Synthesizing Dynamic Talking Face with Implicit Attribute Learning PyTorch implementation for the paper: FACIAL: Synthesizing Dynamic Talking

226 Jan 08, 2023