POP909-Dataset

授权协议 MIT License
开发语言 Python
所属分类 神经网络/人工智能、 机器学习/深度学习
软件类型 开源软件
地区 不详
投 递 者 商开宇
操作系统 跨平台
开源组织
适用人群 未知
 软件概览

POP909 Dataset for Music Arrangement Generation

This is the dataset repository for the paper: POP909: A Pop-song Dataset for Music Arrangement Generation, in ISMIR 2020.

Dataset Zip File Structure

  • index.xlsx: it contains a list describing the baisc information of each index folder/file (name, number of beats per measure, number of quavers per measure, and modify times)

  • index folder: it contains several files for a data in the POP909 dataset:

  • index.mid: the music midi file of the arrangement song (MELODY track for the main melody, BRIDGE track for the sub-melody, and PIANO track for the accompaniment)

  • beat_audio/beat_midi.txt: the extracted beat information from the raw audio/midi, the first column is the time (in sec), and the seconcd column is the beat order

  • chord_audio/beat_audio.txt: the extracted chord information from the raw audio/midi, the first/second column is the start/end time (in sec), and the third column is the chord name

  • key_audio.txt: the extracted key change information from the raw audio, the first/second column is the start/end time (in sec), and the third column is the key change.

  • versions folder: it contains different versions of the same arrangement song.

Data Processing Script

We also provide scripts for the data processing. It will allow you to quickly process the POP909 Files (Midi) into the Google Magenta's music representation as like Music Transformer and Performance RNN.

  • data_process.ipynb: follow this jupyter notebook, you will get the data input tokens that are able to be fed into the pytorch/tensorflow dataset/dataloader.(Notice that the representation of encoding the midi sequence are various {e.g., monophonic note tokens, magenta's event tokens, pianoroll, etcs}. We highly recommend users to create their own data processing files to encode the data in their wanted format)
  • pop-pickle.zip: it contains the pickle file, already in magenta's event tokens representation

Credit

Please cite this work if you want to use this dataset

@inproceedings{pop909-ismir2020,
    author = {Ziyu Wang* and Ke Chen* and Junyan Jiang and Yiyi Zhang and Maoran Xu and Shuqi Dai and Guxian Bin and Gus Xia},
    title = {POP909: A Pop-song Dataset for Music Arrangement Generation},
    booktitle = {Proceedings of 21st International Conference on Music Information Retrieval, {ISMIR}},
    year = {2020}
}

  • 在waymo上测纯视觉baseline(多相机模式),分很多步: 处理数据集为kitti格式 修改dataloader代码 修改模型config 修改模型target和loss 修改eval pipeline的代码 mmdet3d官网的waymo dataset教程过于简略,处理的结果只能给pointpillar用,而且是旧版的数据集。对初学者的我非常不友好。下面基于mmdet的教程(以下简称教程

  • FDDB为图片多人脸目标检测数据集,本文根据vocdataset 进行改编,将FDDB数据集进行分割,并进行图像预处理,翻转,随机裁剪等数据集增强相关的预处理。 如有转载请 附本文链接 :https://blog.csdn.net/canmang1/article/details/108487673 # 每个标注的椭圆形人脸由六个元素组成。 # (ra, rb, Θ, cx, cy, s) # r

  • import org.apache.spark.sql.Dataset; //导入方法依赖的package包/类 private void start() { Dataset householdDf = getHouseholdDataframe(); Dataset populationDf = getPopulationDataframe(); Dataset indexDf = joinHo

  • batch很好理解,就是batch size。注意在一个epoch中最后一个batch大小可能小于等于batch size  dataset.repeat就是俗称epoch,但在tf中与dataset.shuffle的使用顺序可能会导致个epoch的混合  dataset.shuffle就是说维持一个buffer size 大小的 shuffle buffer,图中所需的每个样本从shuffle

  • 数据集处理方法 小批量数据 & 为数据添加随机噪声 使用小部分的数据:在做实验的时候,有时候我们想用一小部分数据来先跑通代码,然后再上大量的数据 为 Dataset 中的图片数据添加高斯噪声 """ @file: codes.py @Time : 2023/1/12 @Author : Peinuan qin """ import numpy as np import torch

  • yolov7的数据增强中采用了很多yolov5没有用过的增强,比如mosaic、mosaic9、mixup、copy_paste、paste_in等,这些数据增强很占显存,训练的时候可以把一些数据增强关了,我把mosaic9注释了,以下是yolov7的dataset代码详解。 # Dataset utils and dataloaders import glob import logging i

 相关资料
  • 问题内容: 我是新手,我想使用group-by&reduce从CSV中查找以下内容(按聘用者一行): 我想通过按 部门,指定,州* 和其他列(以 sum(costToCompany) 和 TotalEmployeeCount 来简化CSV 格式) * 应该得到如下结果: 有什么方法可以使用转换和操作来实现这一目标。还是我们应该进行RDD操作? 问题答案: 程序 创建一个类(模式)以封装您的结构(方

  • 问题内容: 我正在使用不同大小的dataSet每个具有动态列大小-对于我的应用程序,我需要知道字符的整个行长,以估计整个行大小(以字节或千字节为单位)。 整个行大小(以KB为单位)的结果将被写入新列。 由于我没有org.apache.spark.sql.functions方法的返回, 所以我不得不使用和收集它。 但是每次使用嵌套操作似乎并不高效。 我宁愿获得一个函数大小,然后返回列的整个长度。而不

  • 问题内容: 我有一个惊人的siplme Java应用程序,几乎可以从这个示例中复制它:http ://markmail.org/download.xqy?id=zua6upabiylzeetp&number=2 我要做的就是读取表数据并在Eclipse控制台中显示。 我的pom.xml: 而我的Java代码: 这是我的错误: 16/10/05 20:49:18信息CassandraConnecto

  • 本文向大家介绍利用DataSet部分功能实现网站登录,包括了利用DataSet部分功能实现网站登录的使用技巧和注意事项,需要的朋友参考一下 首先,我之前必须完成过注册,并把个人信息存入数据库中。 其次,这部分的个别对象是存于某些文档中的,需要引用命名空间。 以上所述是小编给大家介绍的利用DataSet部分功能实现网站登录 ,希望对大家有所帮助,如果大家有任何疑问欢迎给我留言,小编会及时回复大家的!

  • 本文向大家介绍C#使用DataSet Datatable更新数据库的三种实现方法,包括了C#使用DataSet Datatable更新数据库的三种实现方法的使用技巧和注意事项,需要的朋友参考一下 本文以实例形式讲述了使用DataSet Datatable更新数据库的三种实现方法,包括CommandBuilder 方法、DataAdapter 更新数据源以及使用sql语句更新。分享给大家供大家参考之

  • 本文向大家介绍C#检测DataSet是否为空的方法,包括了C#检测DataSet是否为空的方法的使用技巧和注意事项,需要的朋友参考一下 本文实例讲述了C#检测DataSet是否为空的方法。分享给大家供大家参考。具体如下: 下面的代码片段通过判断DataSet的Table数量来判断DataSet是否为空 希望本文所述对大家的C#程序设计有所帮助。