经典的深度学习网络AlexNet使用数据扩充(Data Augmentation)的方式扩大数据集,取得较好的分类效果。在深度学习的图像领域中,通过平移、 翻转、加噪等方法进行数据扩充。但是,在音频(Audio)领域中,如何进行数据扩充呢?

欢迎加入我的QQ群`923414804`与我一起学习,群里有我学习过程中整理的大量学习资料。加群即可免费获取

Audio

音频的数据扩充主要有以下四种方式:

音频剪裁(Clip)

音频旋转(Roll)

音频调音(Tune)

音频加噪(Noise)

音频处理基于librosa音频库;矩阵操作基于scipy和numpy科学计算库。

以下是Python的实现方式:

音频剪裁

import librosa

from scipy.io import wavfile

y, sr = librosa.load("../data/love_illusion.mp3") # 读取音频

print y.shape, sr

wavfile.write("../data/love_illusion_20s.mp3", sr, y[20 * sr:40 * sr]) # 写入音频

音频旋转

import librosa

import numpy as np

from scipy.io import wavfile

y, sr = librosa.load("../data/raw/love_illusion_20s.mp3") # 读取音频

y = np.roll(y, sr*10)

print y.shape, sr

wavfile.write("../data/raw/xxx_roll.mp3", sr, y) # 写入音频

音频调音

import cv2

import librosa

from scipy.io import wavfile

y, sr = librosa.load("../data/raw/love_illusion_20s.mp3") # 读取音频

ly = len(y)

y_tune = cv2.resize(y, (1, int(len(y) * 1.2))).squeeze()

lc = len(y_tune) - ly

y_tune = y_tune[int(lc / 2):int(lc / 2) + ly]

print y.shape, sr

wavfile.write("../data/raw/xxx_tune.mp3", sr, y) # 写入音频

音频加噪,注意:在添加随机噪声时,保留0值,否则刺耳难忍!

import librosa

from scipy.io import wavfile

import numpy as np

y, sr = librosa.load("../data/raw/love_illusion_20s.mp3") # 读取音频

wn = np.random.randn(len(y))

y = np.where(y != 0.0, y + 0.02 * wn, 0.0) # 噪声不要添加到0上!

print y.shape, sr

wavfile.write("../data/raw/love_illusion_20s_w.mp3", sr, y) # 写入音频

OK, that's all! Enjoy it!

python学习音频-Python 音频数据扩充的技巧相关推荐

  1. Python 音频数据扩充的技巧

    经典的深度学习网络AlexNet使用数据扩充(Data Augmentation)的方式扩大数据集,取得较好的分类效果.在深度学习的图像领域中,通过平移. 翻转.加噪等方法进行数据扩充.但是,在音频( ...

  2. Python 学习 02 —— Python如何爬取数据

    文章目录 系列文章 二.Python 爬 虫 1.任务介绍 2.简介 3.基本流程 3.1.准备工作 3.1.1.分析页面 3.1.2.编码规范 3.1.3.导入模块 3.1.4.程序流程 3.2.获 ...

  3. python爬虫原理-python学习之python爬虫原理

    原标题:python学习之python爬虫原理 今天我们要向大家详细解说python爬虫原理,什么是python爬虫,python爬虫工作的基本流程是什么等内容,希望对这正在进行python爬虫学习的 ...

  4. 深圳Python学习:Python几大问,你想知道的答案都在这里!-千锋

    深圳Python学习:Python几大问,你想知道的答案都在这里!-千锋 人们为什么使用Python? 之所以选择Python的主要因素有以下几个方面: 软件质量:在很大程度上,Python更注重可读 ...

  5. 视频教程-爬虫微课5小时 Python学习路线-Python

    爬虫微课5小时 Python学习路线 十多年的Java和大数据开发和培训,精通Hadoop.Spark和Android开发,对于数据分析和挖掘有比较深的研究.曾在公司独立开发O2O项目e小时.网店项目 ...

  6. 菜菜的Python学习日记 | Python类实验代码分享

    系列索引:菜菜的Python学习日记 | Python从入门到入土详解 Python类实验代码分享 编写程序,实现以下功能. (1)创建员工类Employee,属性有姓名name.能力值ability ...

  7. Python学习之Python软件安装教程

    Python学习之Python软件安装教程 Python学习之Python软件安装教程

  8. python 数据去重_科学网—python学习——根据条件提取数据,并去重 - 李立的博文...

    [Python字符串提取] 摘要:根据要求进行字符串的提取,并去重 导入分析所需的库import pandas as pd 构造数据集 as1 = pd.DataFrame({'a':[1,2,3,4 ...

  9. 【python学习】python基础-数据

    感谢廖雪峰老师提供了自学python很好的平台,以下内容仅作个人学习记录使用,侵删. 附上链接: 廖雪峰的官方网站. python基础(上) 数据类型 整数 浮点数 字符串 布尔值 空值 变量 常量 ...

最新文章

  1. 电子计算机的发展与应用教案,川教版信息技术七上第3课《电子计算机的发展与应用》教案1.doc...
  2. 从Apache Kafka 重温文件高效读写
  3. 《Windows核心编程》---Interlocked原子访问系列函数
  4. AJPFX关于构造器的总结
  5. Python3.7模块之re
  6. c语言指针索引数组,C语言数组指针表示法
  7. stl字符串去除空格_在列表中推送字符并在C ++ STL中将它们打印为空格
  8. Airflow 中文文档:项目
  9. 手动配置apache php,windows下手动搭建apache和php环境
  10. 4.微服务:从设计到部署 --- 服务发现
  11. 190410每日一句
  12. StartHS(截图软件)v6.81.02绿色汉化版
  13. 图书管理系统的E-R图和数据库模型图
  14. 先发新机再搞碰瓷,酷派复活就有胜算?
  15. cad多段线画圆弧方向_CAD多段线绘制技巧 - CAD自学网
  16. 【案例】Python金融分析-CAPM模型对股票进行分析
  17. 无线蓝牙耳机什么牌子的好?好的无线蓝牙耳机推荐
  18. 北冥乘海生:996其实没什么卵用
  19. java B2B2C Springcloud电子商务平台源码------Hystrix的缓存使用
  20. Python爬虫抓取东方财富网股票数据并实现MySQL数据库存储

热门文章

  1. Xshell dns tunnel攻击
  2. python3 多重列表推导式
  3. CSS实现文字环绕图片
  4. 安卓Design包下的TextInputLayout和FloatingActionButton的简单使用
  5. web开发下的各种下载方法
  6. .Net 之匿名类(AnonymousType)(转载)
  7. SQLSERVER 性能优化统计信息
  8. 文件上传oss服务器
  9. [SimplePlayer] 4. 从视频文件中提取音频
  10. mybatis中useGeneratedKeys用法--插入数据库后获取主键值