欧美性猛交XXXX免费看蜜桃,成人网18免费韩国,亚洲国产成人精品区综合,欧美日韩一区二区三区高清不卡,亚洲综合一区二区精品久久

打開(kāi)APP
userphoto
未登錄

開(kāi)通VIP,暢享免費電子書(shū)等14項超值服

開(kāi)通VIP
音頻處理庫

目錄

序言

一、libsora安裝

pypi

conda

source

二、librosa常用功能

核心音頻處理函數

音頻處理

頻譜表示

幅度轉換

時(shí)頻轉換

特征提取

繪圖顯示

三、常用功能代碼實(shí)現

讀取音頻

提取特征

提取Log-Mel Spectrogram 特征

提取MFCC特征

繪圖顯示

繪制聲音波形

繪制頻譜圖


序言

Librosa是一個(gè)用于音頻、音樂(lè )分析、處理的python工具包,一些常見(jiàn)的時(shí)頻處理、特征提取、繪制聲音圖形等功能應有盡有,功能十分強大。本文主要介紹librosa的安裝與使用方法。


一、libsora安裝

Librosa官網(wǎng)提供了多種安裝方法,詳細如下:

pypi

最簡(jiǎn)單的方法就是進(jìn)行pip安裝,可以滿(mǎn)足所有的依賴(lài)關(guān)系,命令如下:

pip install librosa

conda

如果安裝了Anaconda,可以通過(guò)conda命令安裝:

conda install -c conda-forge librosa

source

直接使用源碼安裝,需要提前下載源碼(https://github.com/librosa/librosa/releases/),通過(guò)下面命令安裝:

  1. tar xzf librosa-VERSION.tar.gz
  2. cd librosa-VERSION/
  3. python setup.py install

二、librosa常用功能

核心音頻處理函數

這部分介紹了最常用的音頻處理函數,包括音頻讀取函數load( ),重采樣函數resample( ),短時(shí)傅里葉變換stft( ),幅度轉換函數amplitude_to_db( )以及頻率轉換函數hz_to_mel( )等。這部分函數很多,詳細可參考librosa官網(wǎng) http://librosa.github.io/ librosa/core.html

音頻處理

頻譜表示

幅度轉換

時(shí)頻轉換

特征提取

本部分列舉了一些常用的頻譜特征的提取方法,包括常見(jiàn)的Mel Spectrogram、MFCC、CQT等。函數詳細信息可參考http:// librosa.github.io/librosa/feature.html

繪圖顯示

包含了常用的頻譜顯示函數specshow( ), 波形顯示函數waveplot( ),詳細信息請參考http://librosa.github.io/librosa/display. html


三、常用功能代碼實(shí)現

讀取音頻

  1. >>> import librosa
  2. >>> # Load a wav file
  3. >>> y, sr = librosa.load('./beat.wav')
  4. >>> y
  5. array([ 0.00000000e+00, 0.00000000e+00, 0.00000000e+00, ...,
  6. 8.12290182e-06, 1.34394732e-05, 0.00000000e+00], dtype=float32)
  7. >>> sr
  8. 22050

Librosa默認的采樣率是22050,如果需要讀取原始采樣率,需要設定參數sr=None:

  1. >>> import librosa
  2. >>> # Load a wav file
  3. >>> y, sr = librosa.load('./beat.wav', sr=None)
  4. >>> sr
  5. 44100

可見(jiàn),'beat.wav'的原始采樣率為44100。如果需要重采樣,只需要將采樣率參數sr設定為你需要的值:

  1. >>> import librosa
  2. >>> # Load a wav file
  3. >>> y, sr = librosa.load('./beat.wav', sr=16000)
  4. >>> sr
  5. 16000

提取特征

提取Log-Mel Spectrogram 特征

Log-Mel Spectrogram特征是目前在語(yǔ)音識別和環(huán)境聲音識別中很常用的一個(gè)特征,由于CNN在處理圖像上展現了強大的能力,使得音頻信號的頻譜圖特征的使用愈加廣泛,甚至比MFCC使用的更多。在librosa中,Log-Mel Spectrogram特征的提取只需幾行代碼:

  1. >>> import librosa
  2. >>> # Load a wav file
  3. >>> y, sr = librosa.load('./beat.wav', sr=None)
  4. >>> # extract mel spectrogram feature
  5. >>> melspec = librosa.feature.melspectrogram(y, sr, n_fft=1024, hop_length=512, n_mels=128)
  6. >>> # convert to log scale
  7. >>> logmelspec = librosa.power_to_db(melspec)
  8. >>> logmelspec.shape
  9. (128, 194)

可見(jiàn),Log-Mel Spectrogram特征是二維數組的形式,128表示Mel頻率的維度(頻域),194為時(shí)間幀長(cháng)度(時(shí)域),所以L(fǎng)og-Mel Spectrogram特征是音頻信號的時(shí)頻表示特征。其中,n_fft指的是窗的大小,這里為1024;hop_length表示相鄰窗之間的距離,這里為512,也就是相鄰窗之間有50%的overlap;n_mels為mel bands的數量,這里設為128。

提取MFCC特征

MFCC特征是一種在自動(dòng)語(yǔ)音識別和說(shuō)話(huà)人識別中廣泛使用的特征。關(guān)于MFCC特征的詳細信息,有興趣的可以參考博客http:// blog.csdn.net/zzc15806/article/details/79246716。在librosa中,提取MFCC特征只需要一個(gè)函數:

  1. >>> import librosa
  2. >>> # Load a wav file
  3. >>> y, sr = librosa.load('./beat.wav', sr=None)
  4. >>> # extract mfcc feature
  5. >>> mfccs = librosa.feature.mfcc(y=y, sr=sr, n_mfcc=40)
  6. >>> mfccs.shape
  7. (40, 194)

關(guān)于mfcc,這里就不在贅述。

Librosa還有很多其他音頻特征的提取方法,比如CQT特征、chroma特征等,在第二部分“l(fā)ibrosa常用功能”給了詳細的介紹。

繪圖顯示

繪制聲音波形

Librosa有顯示聲音波形函數waveplot( ):

  1. >>> import librosa
  2. >>> import librosa.display
  3. >>> # Load a wav file
  4. >>> y, sr = librosa.load('./beat.wav', sr=None)
  5. >>> # plot a wavform
  6. >>> plt.figure()
  7. >>> librosa.display.waveplot(y, sr)
  8. >>> plt.title('Beat wavform')
  9. >>> plt.show()

輸出圖形為:

繪制頻譜圖

Librosa有顯示頻譜圖波形函數specshow( ):

  1. >>> import librosa
  2. >>> import librosa.display
  3. >>> # Load a wav file
  4. >>> y, sr = librosa.load('./beat.wav', sr=None)
  5. >>> # extract mel spectrogram feature
  6. >>> melspec = librosa.feature.melspectrogram(y, sr, n_fft=1024, hop_length=512, n_mels=128)
  7. >>> # convert to log scale
  8. >>> logmelspec = librosa.power_to_db(melspec)
  9. >>> # plot mel spectrogram
  10. >>> plt.figure()
  11. >>> librosa.display.specshow(logmelspec, sr=sr, x_axis='time', y_axis='mel')
  12. >>> plt.title('Beat wavform')
  13. >>> plt.show()

輸出結果為:

將聲音波形和頻譜圖繪制在一張圖表中:

  1. >>> import librosa
  2. >>> import librosa.display
  3. >>> # Load a wav file
  4. >>> y, sr = librosa.load('./beat.wav', sr=None)
  5. >>> # extract mel spectrogram feature
  6. >>> melspec = librosa.feature.melspectrogram(y, sr, n_fft=1024, hop_length=512, n_mels=128)
  7. >>> # convert to log scale
  8. >>> logmelspec = librosa.power_to_db(melspec)
  9. >>> plt.figure()
  10. >>> # plot a wavform
  11. >>> plt.subplot(2, 1, 1)
  12. >>> librosa.display.waveplot(y, sr)
  13. >>> plt.title('Beat wavform')
  14. >>> # plot mel spectrogram
  15. >>> plt.subplot(2, 1, 2)
  16. >>> librosa.display.specshow(logmelspec, sr=sr, x_axis='time', y_axis='mel')
  17. >>> plt.title('Mel spectrogram')
  18. >>> plt.tight_layout() #保證圖不重疊
  19. >>> plt.show()

輸出結果為:

到這里,librosa的安裝和簡(jiǎn)單使用就介紹完了。事實(shí)上,librosa遠不止這些功能,關(guān)于librosa更多的使用方法還請大家參考librosa官網(wǎng)http://librosa.github.io/librosa/index.html

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

本站僅提供存儲服務(wù),所有內容均由用戶(hù)發(fā)布,如發(fā)現有害或侵權內容,請點(diǎn)擊舉報。
打開(kāi)APP,閱讀全文并永久保存 查看更多類(lèi)似文章
猜你喜歡
類(lèi)似文章
python 處理音頻并提取特征可視化
音頻特征提取方法和工具匯總
語(yǔ)音特征參數MFCC提取過(guò)程詳解
聲音特征提?。篗FCC向量
語(yǔ)音特征參數MFCC的提取及識別
基于STM32的孤立詞語(yǔ)音識別 | gk969.com
更多類(lèi)似文章 >>
生活服務(wù)
分享 收藏 導長(cháng)圖 關(guān)注 下載文章
綁定賬號成功
后續可登錄賬號暢享VIP特權!
如果VIP功能使用有故障,
可點(diǎn)擊這里聯(lián)系客服!

聯(lián)系客服

欧美性猛交XXXX免费看蜜桃,成人网18免费韩国,亚洲国产成人精品区综合,欧美日韩一区二区三区高清不卡,亚洲综合一区二区精品久久