LSTM-Melody-Generate
LSTM 旋律生成 2019-4-16
调用的解析midi的库
- python-midi
Midi采样
- import parsers
- parser = parsers.MidiParser()
- sequence = parser.parse("midi file path")
可得到如下序列
单音旋律提取
- import parsers
- parser = parsers.MidiParser()
- sequence = parser.parse("midi file path")
- parser = parsers.SequenceParser()
- melody = parser.get_monosyllabic_melody(sequence)
可得到如下单音旋律序列
转为one-hot编码
- import parsers
- parser = parsers.MidiParser()
- sequence = parser.parse("midi file path")
- parser = parsers.SequenceParser()
- melody = parser.get_monosyllabic_melody(sequence)
- matrix = parser.monosyllabic_melody_to_matrix(melody)
- 考虑跳音,连音,滑音等,使用16种音符时间,88个音符,加上休止符,转为1424维的one-hot向量
LSTM Model
训练
- 运行train.py
预测
- 运行predict.py