jishude

首先援引一个资料网页:http://www.cosmosshadow.com/ml/%E5%BA%94%E7%94%A8/2016/03/01/%E9%9F%B3%E4%B9%90%E7%94%9F%E6%88%90.html

这个网页可以让基础薄弱的人对于乐理有一个全面的感知。

这个项目有一个重要的中间数据,用来连接前后两个深度神经网络,那就是图像的特征。

图像的特征可以是一个特征向量,用来作为音乐生成的隐性参数。但是为了宏观上控制音乐序列,我们需要显式地定义一些规则:拍子、调性等;而自动生成的,包括一个小节里的和弦、节奏划分(如附点、切分节奏),以及需要重点训练的和弦走向。调性音乐中每个调子里最重要的便是主音(tonic),乐曲通常由主音或主和弦开始,结束时又将回到主音或主和弦。此种模式最重要的意义在于使音乐进行具有强烈的方向感。

和声走向是一个很有意思的知识,结合协和音程、不协和音程所表达的情感关系,可以通过控制根音走向、和弦走向来给旋律定一个大致的感觉,然后对每个小节里的音符节奏走向进行概率化的生成。

这样,就算在每个小节里的旋律很随机,整体的风格走向也会很好的。

关于具体的和弦走向是一个什么概念,先提出和弦级数:

http://blog.sina.com.cn/s/blog_606a5f730100jbnw.html

那么级数的走向,就是这些和弦的排列。一般来说需要遵循这些规则:

通常和弦的走向总是由主和弦开始——
主和弦之后,可以连接以调内任意和弦,只是再之后,通常则按和弦根音下行纯五度的原则,来添加连接的和弦,比如上例中和弦G进入到和弦C。
而结束的主和弦之前,只能是属和弦或是下属和弦,不能用其他和弦。
所以,最基本的完整和弦走向,只有三种:
1.主和弦-下属和弦-主和弦(变格);
2.主和弦-属和弦-主和弦(正格);
3.主和弦-下属和弦-属和弦-主和弦(正格)。
根据这个规则来确定大致的和弦走向。

其他参考资料:

https://www.zhihu.com/question/46536599

https://zhidao.baidu.com/question/687885617880029604.html

https://zh.wikipedia.org/zh-cn/%E5%92%8C%E5%BC%A6

https://www.zhihu.com/question/22884428

https://zhidao.baidu.com/question/310738546.html

【Python图像特征的音乐序列生成】图像特征在旋律生成中有什么用的更多相关文章

  1. 【Python图像特征的音乐序列生成】使用Python生成简单的MIDI文件

    这个全新的Python音乐创作系列,将会不定期更新.写作这个系列的初衷,是为了做一个项目<基于图像特征的音乐序列生成模型>,实时地提取照片特征,进行神经网络处理,生成一段音乐. 千里之行, ...

  2. 【Python图像特征的音乐序列生成】关于mingus一个bug的修复,兼改进情感模型

    mingus在输出midi文件的时候,使用这样的函数: from mingus.containers import NoteContainer from mingus.midi import midi ...

  3. 【Python图像特征的音乐序列生成】关于数据集的分享和样例数据

    数据集还在制作中,样例数据如下: 我将一条数据作为一行,X是ID,O代表了情感向量,S是速度,是一个很关键的参数,K是调式,M是节拍,L是基本拍.后面是ABC格式的序列,通过embedding化这些音 ...

  4. 【Python图像特征的音乐序列生成】第一阶段的任务分配

    从即日起到7月20号,项目成员进行了第一次任务分配. 赵同学A.岳同学.周同学,负责了图像数据的情感数据集制作,他们根据自己的经验,对图像进行了情绪提取. 赵同学B全权负责向量映射这一块的网络搭建. ...

  5. 【Python图像特征的音乐序列生成】关于音乐生成的思路转变

    在前几天的讨论会上,有师兄指出原来的方法实在是很难训练,所以我改进了音乐生成的思路. 首先,我用LSTM生成的一定是一段音乐的序列化表达,那么我就可以用成型的一些数据集去训练LSTM.为了避免生成的音 ...

  6. 【Python图像特征的音乐序列生成】关于小样本的一些思考

    我之前就注意到,深度学习和音乐结合,尤其是从乐理出发进行结合(而不是纯粹的进行音乐生成),是一个尚未被深度挖掘的全新领域.可想而知,这个方向符合我要求的数据肯定是要自己搜集了. 自己搜集的数据,在量上 ...

  7. 【Python图像特征的音乐序列生成】思路的转变

    关于生成网络这边,可能会做一个深度的受限玻尔兹曼机,这样可以保证生成的音乐不会太相似. 情绪识别网络和生成网络的耦合,中间变量可能直接就是一个one-hot向量,用来标注指定的情绪,不做成坐标那种难以 ...

  8. 【Python图像特征的音乐序列生成】如何生成旋律(大纲),以及整个项目的全部流程

    今天连看三篇论文,不是很细致地看,也没有具体去实现,只是大概明白了一些新思路.这三篇论文,一篇概述了Decoder-Encoder模型,一篇延伸这个模型,首次提出了Attention机制,最后一篇详细 ...

  9. 【Python图像特征的音乐序列生成】如何标记照片的特征

    目前我能想到的办法是这样的: 1,提取照片中的实体特征,借用某个pre-trained model进行tag标记. 2,将特征组合起来,形成一个bag-of-word model,然后将这个向量作为输 ...

随机推荐

  1. 面试问题 - C# 接口和抽象类的区别

    这个问题基本上可以说是 面试时的必问问题 C# 中的接口和抽象类 相同点: 1. 都不能直接实例化,都可以通过继承实现其抽象方法 2. 都是面向抽象编程的技术基础,实现了诸多的设计模式 不同点: 1. ...

  2. Gym - 100801H Hash Code Hacker (构造)

    题意:求 n 个哈希值相同的串. 析:直接构造,通过取模来查找相同的串. 代码如下: #pragma comment(linker, "/STACK:1024000000,102400000 ...

  3. 牛客多校3 C-Shuffle Cards(rope大法解决数组分块)

    Shuffle Cards 链接:https://www.nowcoder.com/acm/contest/141/C来源:牛客网 时间限制:C/C++ 1秒,其他语言2秒 空间限制:C/C++ 26 ...

  4. Xilinx SDSoc 加载opencv库

    Xilinx SDSoc 加载opencv库需要下载两个文件 xfopencv 和 Revision Platform, Revision Platform需要和具体的开发板型号对应,我用的是zcu1 ...

  5. Unity3D 自动添加Fbx Animation Event

    http://blog.csdn.net/aa20274270/article/details/52528449 using UnityEngine; using System.Collections ...

  6. [Xcode 实际操作]六、媒体与动画-(11)UIView视图卷曲动画的制作

    目录:[Swift]Xcode实际操作 本文将演示UIView视图卷曲动画的制作. 在项目导航区,打开视图控制器的代码文件[ViewController.swift] import UIKit cla ...

  7. 16.创建与操纵表--SQL

    一.新建表 利用CREA TE TA BLE创建表,必须给出下列信息: 新表的名字,在关键字CREA TE TA BLE之后给出: 表列的名字和定义,用逗号分隔: 有的DBMS还要求指定表的位置. C ...

  8. [Java]三大特性之封装

    封装这个我们可以从字面上来理解,简单来说就是包装的意思,专业点就是信息隐藏. 是指利用抽象数据类型将数据和基于数据的操作封装在一起,使其构成一个不可分割的独立实体,数据被保护在抽象数据类型的内部,尽可 ...

  9. [bzoj 1758] 重建计划

    bzoj 1758 重建计划 题意: 给定一棵有边权的树和两个数 \(L, R (L\leq R)\),求一条简单路径,使得这条路径经过的边数在 \(L, R\) 之间且路径经过的边的边权的平均值最大 ...

  10. 关系型数据库---MySQL---索引

    1.概述 参考资料:http://blog.codinglabs.org/articles/theory-of-mysql-index.html 1.1 索引的本质: MySQL官方对索引的定义:索引 ...