zoukankan      html  css  js  c++  java
  • 【Python图像特征的音乐序列生成】关于音乐生成的思路转变

    在前几天的讨论会上,有师兄指出原来的方法实在是很难训练,所以我改进了音乐生成的思路。

    首先,我用LSTM生成的一定是一段音乐的序列化表达,那么我就可以用成型的一些数据集去训练LSTM。为了避免生成的音乐与现有的音乐有大量重复,我们可以考虑更改LSTM使其更加“健忘”,这样应该能解决一部分问题。接下来肯定还会暴露出更多的问题,我会持续阐述我的思路。

    首先找到一个合适的数据集。打开

    http://www.mln.io/resources/datasets/

    之后我讲解一下这些数据集的用法:

    第一个Classical Music Datasets,储存了很多的MIDI古典音乐。结合abc与midi格式的转换工具,可以从中提取出一个序列化的格式,ABC格式。

    转换工具地址如下:https://github.com/leesavide/abcmidi

    第二个是我打算采集的,叫做Nottingham Music Database,只是可惜数据下载已经失效了,我找到的数据集如下:

    http://www.chezfred.org.uk/freds/music/tunes/index.htm

    是用特殊的格式保存的。

    第三个MuseData也是音乐数据集,官网介绍如下:

    The MuseData database is a project of the Center for Computer Assisted Research in the Humanities (CCARH). The database was created by Walter Hewlett. Data entry has been primarily done by Frances Bennion, Edmund Correia, Walter Hewlett, and Steve Rasmussen.

    提供了多种格式存储,多为古典音乐。

    第四个似乎是挂了。

    第五个主要是做音乐推荐的,似乎无法知道原来的旋律序列。

    =====================

    初步决定是Nottingham Music Database,有两种格式可以选,第一种是ABC格式,如下:

    X: 1
    T:A and D
    % Nottingham Music Database
    S:EF
    M:4/4
    K:A
    M:6/8
    P:A
    f|"A"ecc c2f|"A"ecc c2f|"A"ecc c2f|"Bm"BcB "E7"B2f|
    "A"ecc c2f|"A"ecc c2c/2d/2|"D"efe "E7"dcB| [1"A"Ace a2:|
     [2"A"Ace ag=g||
    K:D
    P:B
    "D"f2f Fdd|"D"AFA f2e/2f/2|"G"g2g ecd|"Em"efd "A7"cBA|
    "D"f^ef dcd|"D"AFA f=ef|"G"gfg "A7"ABc |1"D"d3 d2e:|2"D"d3 d2||

    ASCII码:

    .MS
    title= "f3A and DfP";
    rtitle = "f2EFfP";
    key = a;
    bps = 16;
    autobeam;
    chords;
    bars = 18;
    timesig = 6 8.
    
    f^'A' |
    e^"A" c^ c^ c^>  f^ |  e^"A"  c^ c^	c^> f^  |
    e^"A" c^ c^ c^ b a  |  b"Bm"  c^ b b>"E7" f^ |
    e^"A" c^ c^ c^>  f^ |  e^"A"  c^ c^  c^> c^< d^<	 |
    e^"D" f^ e^  d^"E7" c^ b  |
    a"A"'1st.'  c^ e^ a^> :|
    a"A"'2nd.'  c^ e^ a^ g^ g=^ |! endstave.
    
    key = d.
    
     f^>'B' "D" f^	      d^>  d^  | a"D"	    f  a    f^> e^< f^< |
     g^>"G" g^  e^  c^ d^  | e^"Em"  f^ d^   c^"A7"  b   a	  |
    f^"D" e+^ f^ d^ c^ d^  | a"D"	 f  a	   f^ e^  f^ |
     g^"G"  f^ g^	 a"A7"	 b	 c^ |
    d^>. '1st.' "D" d^> e^ :|
    d^>. '2nd.' "D" d^> |! endstave.
    
    .ME

    这个解析还有待我的研究。

  • 相关阅读:
    GitHub的本地与远程
    linux PDF转换
    css文字样式与div
    CSS属性(pading margin)
    Q:table返回无数据点击排序无数据消失问题
    nginx 学习二(配置项)
    nginx学习一
    JS防抖节流
    通过node实现阿里云短信接口,并将手机号缓存,通过Redis过期时间限制频繁发短信
    web框架express学习三
  • 原文地址:https://www.cnblogs.com/ldzhangyx/p/7157847.html
Copyright © 2011-2022 走看看