目录
序言

一、libsora安装

pypi

conda

source

二、librosa常用功能

核心音频处理函数

音频处理

频谱表示

幅度转换

时频转换

特征提取

绘图显示

三、常用功能代码实现

读取音频

提取特征

提取Log-Mel Spectrogram 特征

提取MFCC特征

绘图显示

绘制声音波形

绘制频谱图

序言
Librosa是一个用于音频、音乐分析、处理的python工具包,一些常见的时频处理、特征提取、绘制声音图形等功能应有尽有,功能十分强大。本文主要介绍librosa的安装与使用方法。

一、libsora安装
Librosa官网提供了多种安装方法,详细如下:

pypi
最简单的方法就是进行pip安装,可以满足所有的依赖关系,命令如下:

pip install librosa
conda
如果安装了Anaconda,可以通过conda命令安装:

conda install -c conda-forge librosa
source
直接使用源码安装,需要提前下载源码(https://github.com/librosa/librosa/releases/),通过下面命令安装:

tar xzf librosa-VERSION.tar.gz
cd librosa-VERSION/
python setup.py install
二、librosa常用功能
核心音频处理函数
这部分介绍了最常用的音频处理函数,包括音频读取函数load( ),重采样函数resample( ),短时傅里叶变换stft( ),幅度转换函数amplitude_to_db( )以及频率转换函数hz_to_mel( )等。这部分函数很多,详细可参考librosa官网 http://librosa.github.io/ librosa/core.html

音频处理

频谱表示

幅度转换

时频转换

特征提取
本部分列举了一些常用的频谱特征的提取方法,包括常见的Mel Spectrogram、MFCC、CQT等。函数详细信息可参考http:// librosa.github.io/librosa/feature.html

绘图显示
包含了常用的频谱显示函数specshow( ), 波形显示函数waveplot( ),详细信息请参考http://librosa.github.io/librosa/display. html

三、常用功能代码实现
读取音频

import librosa

Load a wav file

y, sr = librosa.load(‘./beat.wav’)
y
array([ 0.00000000e+00, 0.00000000e+00, 0.00000000e+00, …,
8.12290182e-06, 1.34394732e-05, 0.00000000e+00], dtype=float32)
sr
22050
Librosa默认的采样率是22050,如果需要读取原始采样率,需要设定参数sr=None:

import librosa

Load a wav file

y, sr = librosa.load(‘./beat.wav’, sr=None)
sr
44100
可见,'beat.wav’的原始采样率为44100。如果需要重采样,只需要将采样率参数sr设定为你需要的值:

import librosa

Load a wav file

y, sr = librosa.load(‘./beat.wav’, sr=16000)
sr
16000
提取特征
提取Log-Mel Spectrogram 特征
Log-Mel Spectrogram特征是目前在语音识别和环境声音识别中很常用的一个特征,由于CNN在处理图像上展现了强大的能力,使得音频信号的频谱图特征的使用愈加广泛,甚至比MFCC使用的更多。在librosa中,Log-Mel Spectrogram特征的提取只需几行代码:

import librosa

Load a wav file

y, sr = librosa.load(‘./beat.wav’, sr=None)

extract mel spectrogram feature

melspec = librosa.feature.melspectrogram(y, sr, n_fft=1024, hop_length=512, n_mels=128)

convert to log scale

logmelspec = librosa.power_to_db(melspec)
logmelspec.shape
(128, 194)
可见,Log-Mel Spectrogram特征是二维数组的形式,128表示Mel频率的维度(频域),194为时间帧长度(时域),所以Log-Mel Spectrogram特征是音频信号的时频表示特征。其中,n_fft指的是窗的大小,这里为1024;hop_length表示相邻窗之间的距离,这里为512,也就是相邻窗之间有50%的overlap;n_mels为mel bands的数量,这里设为128。

提取MFCC特征
MFCC特征是一种在自动语音识别和说话人识别中广泛使用的特征。关于MFCC特征的详细信息,有兴趣的可以参考博客http:// blog.csdn.net/zzc15806/article/details/79246716。在librosa中,提取MFCC特征只需要一个函数:

import librosa

Load a wav file

y, sr = librosa.load(‘./beat.wav’, sr=None)

extract mfcc feature

mfccs = librosa.feature.mfcc(y=y, sr=sr, n_mfcc=40)
mfccs.shape
(40, 194)
关于mfcc,这里就不在赘述。

Librosa还有很多其他音频特征的提取方法,比如CQT特征、chroma特征等,在第二部分“librosa常用功能”给了详细的介绍。

绘图显示
绘制声音波形
Librosa有显示声音波形函数waveplot( ):

import librosa
import librosa.display

Load a wav file

y, sr = librosa.load(‘./beat.wav’, sr=None)

plot a wavform

plt.figure()
librosa.display.waveplot(y, sr)
plt.title(‘Beat wavform’)
plt.show()
输出图形为:

绘制频谱图
Librosa有显示频谱图波形函数specshow( ):

import librosa
import librosa.display

Load a wav file

y, sr = librosa.load(‘./beat.wav’, sr=None)

extract mel spectrogram feature

melspec = librosa.feature.melspectrogram(y, sr, n_fft=1024, hop_length=512, n_mels=128)

convert to log scale

logmelspec = librosa.power_to_db(melspec)

plot mel spectrogram

plt.figure()
librosa.display.specshow(logmelspec, sr=sr, x_axis=‘time’, y_axis=‘mel’)
plt.title(‘Beat wavform’)
plt.show()
输出结果为:

将声音波形和频谱图绘制在一张图表中:

import librosa
import librosa.display

Load a wav file

y, sr = librosa.load(‘./beat.wav’, sr=None)

extract mel spectrogram feature

melspec = librosa.feature.melspectrogram(y, sr, n_fft=1024, hop_length=512, n_mels=128)

convert to log scale

logmelspec = librosa.power_to_db(melspec)
plt.figure()

plot a wavform

plt.subplot(2, 1, 1)
librosa.display.waveplot(y, sr)
plt.title(‘Beat wavform’)

plot mel spectrogram

plt.subplot(2, 1, 2)
librosa.display.specshow(logmelspec, sr=sr, x_axis=‘time’, y_axis=‘mel’)
plt.title(‘Mel spectrogram’)
plt.tight_layout() #保证图不重叠
plt.show()

输出结果为:

到这里,librosa的安装和简单使用就介绍完了。事实上,librosa远不止这些功能,关于librosa更多的使用方法还请大家参考librosa官网http://librosa.github.io/librosa/index.html

参考:http://librosa.github.io/librosa/index.html

z小白
关注

103

39

553

专栏目录
Python音频处理包——Librosa的安装与使用
赵至柔的博客
2万+
Python音频处理库—librosa的安装与使用 1、librosa简介    Librosa是一个用于音频、音乐分析、处理的python工具包,一些常见的时频处理、特征提取、绘制声音图形等功能应有尽有,功能十分强大。本文主要介绍librosa的安装与使用方法。    librosa的安装与使用文档 https://librosa.github.io/librosa/ins…
librosa库安装
西檬饭
1078
如果直接使用pip成功安装,关掉本文节省时间。这里介绍的是使用pip安装失败后如何使用source安装。 当前版本0.7.2,官方网站下载,没梯子在这里下载。 1.安装指定版本的numba包: python pip install numba==0.48.0 2.解压librosa安装包并切换到目录安装 tar xzf librosa-0.7.2.tar.gz cd librosa-0.7.2 python setup.py install https://librosa.org/librosa/inst
评论 39

鬍富強
2022.06.22

提取logmei的代码中是否直接包含了包含预加重处理在内的预处理操作
查看其他 39 条评论
写评论
librosa语音信号处理_David-Chow的博客_librosa
7-5
librosa是一个非常强大的python语音信号处理的第三方库,本文参考的是librosa的官方文档,本文主要总结了一些重要,对我来说非常常用的功能。学会librosa后再也不用用python去实现那些复杂的算法了,只需要一句语句就能轻松实现。参考:《librosa…
librosa的安装与使用_luojiaao的博客
6-21
Librosa是一个用于音频、音乐分析、处理的python工具包,一些常见的时频处理、特征提取、绘制声音图形等功能应有尽有,功能十分强大。本文主要介绍librosa的安装与使用方法。 一、libsora安装 Librosa官网提供了多种安装方法,详细如下: …
librosa安装常见错误
martin1243的博客
1469
librosa安装过程中最常见的问题就是: numba llvmlite已经存在,无法更新,解决办法: conda install --channel=numba llvmlite 然后安装librosa pip install librosa
Python之librosa库语音信号处理
影子
1569
librosa是一个非常强大的python语音信号处理的第三方库,本文参考的是librosa的官方文档,本文主要总结了一些重要,对我来说非常常用的功能。 学会librosa后再也不用用python去实现那些复杂的算法了,只需要一句语句就能轻松实现。 官网:https://librosa.org/doc/latest/core.html 核心 IO 和 DSP 音频加载 负载(路径=,sr,单声道,偏移,持续时间,…]) 加载音频文件作为浮点时间系
librosa | 系统实战(一 ~ 四)
qq_44250700的博客
3914
librosa是python中用于提取音乐特征的库 一、安装 参考 https://blog.csdn.net/qq_39516859/article/details/80333431 二、
librosa入门学习
feng1gb的博客
6956
2018-12-12 今天开始学习librosa这个库,这个库主要用于音频处理,对于机器学习音频分类的初步处理工作很有用 第一步肯定需要学习怎样读取音频文件 1.librosa中对音频文件的基本处理模块如下 1)load模块用于读取音频文件,将其转化为一个音频时间序列的np数组 sr-采样频率:sr=None表示使用音频原始采样,如果不给sr赋值则采用默认值22050 …
音频特征提取——librosa工具包使用
weixin_34021089的博客
4573
作者:桂。 时间:2017-05-06 11:20:47 链接:http://www.cnblogs.com/xingshansi/p/6816308.html 前言 本文主要记录librosa工具包的使用,librosa在音频、乐音信号的分析中经常用到,是python的一个工具包,这里主要记录它的相关内容以及安装步骤,用的是python3.5以及win8.1环境。 …
librosa语音信号处理
David’s Tweet
1868
librosa是一个非常强大的python语音信号处理的第三方库,本文参考的是librosa的官方文档,本文主要总结了一些重要,对我来说非常常用的功能。学会librosa后再也不用用python去实现那些复杂的算法了,只需要一句语句就能轻松实现。 参考: 《librosa语音信号处理》 代码《Added function for mel band frequencies in utils.py》 《论文笔记:语音情感识别(四)语音特征之声谱图,log梅尔谱,MFCC,deltas》 先总结一下.
Python音频信号处理库函数librosa介绍
热门推荐
qq7835144的博客
1万+
文章目录Python音频信号处理库函数librosa介绍(部分内容将陆续添加)介绍安装综述(库函数结构)Core IO and DSP(核心输入输出功能和数字信号处理)Audio processingSpectral representationsMagnitude scalingTime and frequency conversionPitch and tuningDeprecated(mov…
音频处理 windows10下python三方库librosa安装教程
09-16
主要介绍了音频处理 windows10下python三方库librosa安装方法,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
librosa 语音库(二)STFT 的实现
最新发布
chumingqian的博客
772
librosa是一个应用广泛的音频处理python库。在librosa中有一个方法叫做stft,功能是求音频的短时傅里叶变换。 音频短时傅里叶变换后,在对音频取幅值,可以得到音频的线性谱。对线性谱进行mel刻度的加权求和,可以得到语音识别和语音合成中常用的mel谱。 短时傅里叶变换的过程是先对音频分帧,再分别对每一帧傅里叶变换。 在应用stft方法求解短时傅里叶变换时,发现求出的特征帧的数目有点反常。比如我有一个长度是400个点的音频,如果帧长是100,那么我自然而然的想到,最后应当得到4帧。但实际不是这个
Python librosa模块介绍
Galen_xia的博客
950
librosa语音信号处理模块 参考链接:https://www.cnblogs.com/LXP-Never/p/11561355.html
librosa | 系统实战(五~十七)
qq_44250700的博客
2298
文章目录十、librasa.core…Spectral representations(1)librosa.core.stft 输出帧数说明:(2)librosa.core.istft(3)librosa.core.ifgram(4)librosa.core.cqt十一、Audio processing(1)librosa.effects.split(2)librosa.core.load(3)librosa.core.to_mono(4)librosa.core.resample(5)librosa.
利用python-librosa库进行音频处理
lyapple2008的专栏
9525
librosa安装conda只需要下面一条命令就可以完成安装conda install -c conda-forge librosa音频输入与输出特征计算
librosa音频处理教程
yanqianglifei的专栏
1243
librosa音频处理教程
[AI,Deep Learning, Tensorflow] Anaconda 安装 librosa
H_O_W_E的专栏
4013
先要提醒你在Anaconda下要注意激活环境啊啊:source activate 环境名 – Anaconda 安装 librosa只需这句: conda install -c conda-forge librosa
————————————————
版权声明:本文为CSDN博主「z小白」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/zzc15806/article/details/79603994/

librosa 音频处理相关推荐

  1. 数据分析实战:python热门音乐分析 附代码+数据 +论文(PCA 主成分分析,sklearn 机器学习,pytorch 神经网络,k-means 聚类,Librosa 音频处理,midi 音序)

    项目概述: 本选取了抖音当下最热门的 400 首音乐,通过一系列方法提取每首歌的波形特征,再经过降维以及机器学习等手段,进行无监督学习对音乐数据进行聚类的同时训练并使用监督学习分类器进行音乐流派分类, ...

  2. Librosa音频处理(一)

    Librosa是一个用于音乐和音频分析的python包,如果没学过<数字信号处理>需要先了解一下相关的基础知识,傅立叶变换,梅尔频率倒谱 安装:pip install librosa 环境 ...

  3. 【Python】librosa音频处理教程

    Librosa简介 Librosa是一个 Python 模块,用于分析一般的音频信号,是一个非常强大的python语音信号处理的第三方库,根据网络资料以及官方教程,本文主要总结了一些重要且常用的功能. ...

  4. librosa 音频分析

    该篇博文是对librosa能量_librosa语音信号处理重新编辑 读取音频 读取音频文件.默认采样率是22050,如果要保留音频的原始采样率,使用sr = None. y, sr = librosa ...

  5. librosa音频处理教程

    Librosa简介 Librosa是一个 Python 模块,用于分析一般的音频信号,是一个非常强大的python语音信号处理的第三方库,根据网络资料以及官方教程,本文主要总结了一些重要且常用的功能. ...

  6. Librosa音频处理(二)

    对音频信号的处理可以通过 librosa.ifgram 方法获取 stft 短时傅立叶变换的矩阵,对该矩阵进行修改搬移,再进行 istft 逆转换获得处理后的音频信号. y, sr = librosa ...

  7. Librosa音频处理(六)

    劣质的麦克风在录音时会把电流和嗡嗡的背景声录进去,通过对噪声取样去除频率可以达到降噪的目的. 主要步骤: 1. 噪声取样 2. 统计频率 3. 移除频率 代码如下: '''采样降噪''' def te ...

  8. 音频信号处理库librosa

    参考: 1. librosa官网 2. librosa语音信号处理 3. 语音信号处理库 --Librosa 4. librosa音频处理教程 5. Python音频信号处理库函数librosa介绍 ...

  9. 数字信号处理实验三用fft对信号作频谱分析_机器学习中的音频特征:理解Mel频谱图...

    如果你像我一样,试着理解mel的光谱图并不是一件容易的事.你读了一篇文章,却被引出了另一篇,又一篇,又一篇,没完没了.我希望这篇简短的文章能澄清一些困惑,并从头解释mel的光谱图. 信号 信号是一定量 ...

最新文章

  1. MySQL数据库之索引的应用
  2. Java--缓存热点数据,最近最少使用算法
  3. java 只读数组_在Java 8中创建方法引用数组的速记方法?
  4. 微信网页授权,获取微信code,获取access_tocken,获取用户信息
  5. 百度地图API : 修改marker图标(icon)
  6. es查询大文本效率_es之路由:进一步提高Elasticsearch的检索效率(适用大规模数据集)...
  7. 99岁田家炳博士辞世!捐助300多所学校…
  8. pil模块python_python PIL模块的基本使用
  9. php restful 认证,Yii2.0 RESTful API 认证教程
  10. 《深入应用C++11:代码优化与工程级应用》勘误表
  11. flutter用英语怎么说_碍手碍脚用英语怎么说?
  12. Shiro笔记(四)编码/加密
  13. google浏览器常用插件整理
  14. 禅道项目管理软件测试功能模块,禅道使用分享:禅道用例管理流程
  15. 【Bootstrap】选择折叠项collapse
  16. 云服务器 - 腾讯云主机信息
  17. 程序人生-Hello‘sP2P
  18. 老人腰腿痛怎么办 传授给你五个小妙招
  19. NetworkInterface网速监测
  20. git 提交报错 Incorrect username or password ( access token )

热门文章

  1. 找到了!Sketch导出PSD的方法!
  2. 软件质量保证与测试第2版知识点清单
  3. centos NTP服务器搭建
  4. U盘突然为空-解决方法记录
  5. JavaEE_day_25_Lambda、SteamAPI
  6. 3ds Max 子物体的编辑
  7. edius显示无法连接服务器,如何解决EDIUS安装过程中遇到的问题
  8. 基于matlab的costas锁相环仿真
  9. 基于SSM的健身管理系统
  10. 分布式系统组件的选型