目錄
- 時(shí)頻變換
- 頻譜重排
- 倒譜系數(shù)
- 解卷積
- 譜特征
- 音樂信息檢索
audioFlux是一個(gè)Python和C實(shí)現(xiàn)的庫蛮穿,提供音頻領(lǐng)域系統(tǒng)痪署、全面蝙砌、多維度的特征提取與組合浇垦,結(jié)合各種深度學(xué)習(xí)網(wǎng)絡(luò)模型组橄,進(jìn)行音頻領(lǐng)域的業(yè)務(wù)研發(fā)祭埂,下面從時(shí)頻變換叶撒、頻譜重排紊搪、倒譜系數(shù)卡儒、解卷積田柔、譜特征、音樂信息檢索六個(gè)方面簡(jiǎn)單闡述其相關(guān)功能骨望。
時(shí)頻變換
audioFlux在時(shí)頻分析領(lǐng)域中硬爆,包含以下通用變換(支持后續(xù)所有頻率刻度類型)算法:
-
BFT - 基于傅里葉變換。
等效短時(shí)傅里葉變換(STFT)擎鸠,一般基于此實(shí)現(xiàn)大家熟知的mel頻譜缀磕,時(shí)域上重疊平移加窗的傅里葉變換,一般重疊變換長(zhǎng)度1/4劣光,加高斯窗又稱做Gabor變換袜蚕,可以調(diào)整窗函數(shù)長(zhǎng)度來方便的模擬時(shí)頻分析特點(diǎn),BFT算法除提供標(biāo)準(zhǔn)的mel/bark/erb等頻譜外绢涡,還支持mel這些刻度類型的復(fù)數(shù)譜牲剃,同時(shí)支持mel等刻度頻譜的重排。
-
NSGT - 非平穩(wěn) Gabor 變換。
類似加高斯窗的STFT(短時(shí)傅里葉變換),不同之處在于窗函數(shù)長(zhǎng)度和t建立非平穩(wěn)關(guān)系,相對(duì)STFT可以實(shí)現(xiàn)穩(wěn)態(tài)信號(hào)中非平穩(wěn)狀態(tài)較好的分析臭觉,較好的onset端點(diǎn)偵測(cè)效果炒鲜妫基于此類頻譜計(jì)算辨液,同時(shí)可以做為實(shí)現(xiàn)CQT的一種高效方式,本算法中NSGT變換的octave頻率刻度類型即CQT的高效實(shí)現(xiàn)箱残。
-
CWT - 連續(xù)小波變換滔迈。
多分辨率時(shí)頻分析,從數(shù)學(xué)上看疚宇,傅里葉變換的基底是無限的sin/cos函數(shù)亡鼠,而小波變換基底是有限的很小的波函數(shù),波函數(shù)的通用表示形式為
其中a決定頻域縮放尺度敷待,b時(shí)間平移尺度间涵,建立時(shí)頻的自適應(yīng)分析,相對(duì)STFT的固定時(shí)頻分辨率榜揖,具有低頻段頻率分辨高勾哩、高頻段時(shí)間分辨高特點(diǎn),非常適合非穩(wěn)態(tài)信號(hào)分析举哟,支持常用的Morse思劳、Morlet、Bump妨猩、Pual潜叛、Meyer等波函數(shù)類型。
-
PWT - 偽小波變換壶硅。
基于傅里葉變換實(shí)現(xiàn)的類似小波變換效果威兜,CWT的高效算法為頻域小波函數(shù)計(jì)算filterBank和頻域數(shù)據(jù)做dot運(yùn)算,如果把小波函數(shù)當(dāng)做一種特殊的窗函數(shù)庐椒,可以產(chǎn)生類CWT效果椒舵,即偽小波變換,如果窗函數(shù)建立可調(diào)頻帶的參數(shù)(庫中尚未實(shí)現(xiàn))约谈,可以等效小波變換笔宿。
以上變換功能支持下面所有頻率刻度類型:
- linear - 標(biāo)準(zhǔn)線性頻帶頻譜圖,短時(shí)傅里葉變換結(jié)果取一半即linear刻度頻譜圖棱诱,刻度為采樣率/采樣樣本泼橘,即最小頻域分辨率。
- linsapce - 自定義頻帶范圍的頻譜圖迈勋,頻帶可以大于linear頻帶侥加,相當(dāng)于時(shí)域降采樣。
- mel - 梅爾標(biāo)度頻譜圖粪躬,音頻中最常用的頻譜圖類型之一担败,基于人耳聽覺低頻敏感、高頻不敏感特性镰官,類log壓縮linear刻度提前。
- bark - 巴克刻度頻譜圖,比梅爾刻度更符合人耳聽覺泳唠。
- erb - 等效矩形帶寬頻譜圖狈网,比巴克刻度更符合人耳聽覺。
- octave - 八度刻度頻譜圖笨腥,符合樂音對(duì)數(shù)刻度的頻譜圖拓哺。
- log - 對(duì)數(shù)刻度頻譜圖。
下面是一個(gè)BFT變換下不同頻率刻度的簡(jiǎn)單對(duì)比圖脖母。
下面是一個(gè)CWT不同波函數(shù)的簡(jiǎn)單對(duì)比圖士鸥。
以下可用作獨(dú)立變換的算法有(不支持多種頻率刻度類型):
- CQT - 常量Q變換,頻帶比為常數(shù)的變換谆级,音樂中常用的此變換烤礁,常基于此計(jì)算chroma特征用于分析和聲肥照。
- VQT - 可變Q變換脚仔。
- ST - S變換/Stockwell變換,類似小波變換舆绎,是小波變換思想的一種極端特例鲤脏,可用于偵測(cè)分析一些極端的突變信號(hào)如地震、海嘯等吕朵,相比NSGT同樣也是加高斯窗猎醇,但建立起f和t的縮放關(guān)系。
- FST - 快速S變換边锁,S變換的離散基2實(shí)現(xiàn)姑食。
- DWT - 離散小波變換,相對(duì)CWT而言茅坛,頻率基于2的變換音半。
- WPT - 小波包變換,又稱小波包分解贡蓖,可以對(duì)信號(hào)做細(xì)節(jié)和近似分解曹鸠,是信號(hào)分離和合成的一個(gè)方式,可用于降噪斥铺、模態(tài)結(jié)構(gòu)分析等業(yè)務(wù)彻桃。
- SWT - 穩(wěn)態(tài)小波變換,類似小波包變換晾蜘,分解出的信號(hào)和原信號(hào)長(zhǎng)度一致邻眷。
下面是一個(gè)CQT和NSGT變換下不同刻度的簡(jiǎn)單對(duì)比圖眠屎。
很明顯,NSGT-Octave比CQT要清晰肆饶、聚焦一些改衩。
chroma是基于頻譜的更高級(jí)特征,屬于樂音刻度體系范疇驯镊,針對(duì)非樂音的刻度要差于樂音刻度葫督,目前支持chroma特征的頻譜類型:
- CQT
- BFT-linear
- BFT-octave
下面是一個(gè)Chroma簡(jiǎn)單對(duì)比圖。
很明顯板惑,CQT-Chroma優(yōu)于其它頻譜類型下的chroma橄镜。
注:
- 不同頻率刻度的頻譜都有各自的應(yīng)用價(jià)值,針對(duì)某些業(yè)務(wù)情況冯乘,這些不同刻度頻譜圖可以圖組合起一個(gè)大的特征集合參與網(wǎng)絡(luò)的訓(xùn)練洽胶。
- 頻譜圖按值的類型abs、平方往湿、log等非線性運(yùn)算稱為幅值譜妖异、功率譜、對(duì)數(shù)譜/dB譜领追,深度學(xué)習(xí)中一般使用對(duì)數(shù)譜多一些他膳。
頻譜重排
同步壓縮或重新分配方法是一種用于銳化、高清頻譜圖的技術(shù)绒窑,可以提升頻譜的清晰度和精度棕孙,audioFlux包含以下算法:
- reassign - 針對(duì)STFT變換重排,基于BFT的mel/bark/erb等頻譜數(shù)據(jù)同樣實(shí)現(xiàn)重排些膨。
- synsq - CWT頻譜數(shù)據(jù)重排蟀俊。
- wsst - CWT變換重排。
下面是一個(gè)頻譜圖和對(duì)應(yīng)重排后的效果圖订雾。
很明顯肢预,重排后的效果要優(yōu)于重排前的效果。
可能有人會(huì)問洼哎,既然重排效果如此好烫映,可以基于上次結(jié)果循環(huán)多次重排嗎?這樣效果如何噩峦?audioFlux重排相關(guān)算法提供多次重排機(jī)制锭沟,具體效果可以參照文檔做下嘗試對(duì)比。
倒譜系數(shù)
類似針對(duì)mel頻譜的mfcc(梅爾頻率倒譜系數(shù))识补,這個(gè)特征業(yè)務(wù)上屬于去音高族淮,屬于反映發(fā)音物理結(jié)構(gòu)的一個(gè)特征,典型的用于語音識(shí)別相關(guān)業(yè)務(wù),可用于不同樂器分類祝辣,結(jié)構(gòu)細(xì)化等業(yè)務(wù)模型訓(xùn)練贴妻。
整個(gè)audioFlux項(xiàng)目頻譜體系中,除mfcc以及相應(yīng)delta/deltaDelta外较幌,支持所有類型的頻譜倒譜系數(shù)即xxcc:
- lfcc
- gtcc
- bfcc
- cqcc
- ......
不同頻譜的倒譜系數(shù)揍瑟,都代表著不同頻譜類型的去音高相關(guān),都有各自的應(yīng)用價(jià)值乍炉,比如gtcc有論文反映在語音識(shí)別業(yè)務(wù)中音素效果要比mfcc好一些,cqcc針對(duì)樂器的分類和一些結(jié)構(gòu)細(xì)化業(yè)務(wù)要遠(yuǎn)優(yōu)于mfcc等等滤馍。
下面是針對(duì)吉他樂音音頻的不同頻譜倒譜系數(shù)的對(duì)比圖岛琼。
很明顯,在吉他樂音起振階段巢株,cqcc表現(xiàn)最好槐瑞,后續(xù)持續(xù)穩(wěn)定階段,gtcc相比較好阁苞。
解卷積
在數(shù)學(xué)中困檩,解卷積是卷積的逆運(yùn)算,可以做為信號(hào)分解的一種算法那槽,針對(duì)頻譜而言悼沿,分解后的兩個(gè)數(shù)據(jù)可以表示為formant(共振峰)頻譜圖和pitch頻譜圖,相比mfcc而言骚灸,formant是一種更為通識(shí)的發(fā)音物理結(jié)構(gòu)特征糟趾。
在audioFlux中,支持所有類型頻譜的解卷積操作甚牲,所發(fā)揮的價(jià)值在于义郑,針對(duì)音高相關(guān)的業(yè)務(wù),可以去除共振峰干擾后模型推斷更準(zhǔn)確丈钙;針對(duì)結(jié)構(gòu)相關(guān)特征的業(yè)務(wù)非驮,可以去除音高避免模型的訓(xùn)練受其干擾。
下面是針對(duì)吉他880hz音頻的mel頻譜圖的解卷積效果圖雏赦。
可以看到吉他共振峰部分(音色)和音高部分明顯的分離效果劫笙。
譜特征
在audioFlux中,包括數(shù)十種spectral相關(guān)的特征喉誊,包括基于音色相關(guān)特征邀摆,基于統(tǒng)計(jì)相關(guān)特征,基于光譜通量相關(guān)特征伍茄,基于奇異值相關(guān)特征栋盹,等等。
如:
- flatness
- skewness
- crest
- slop
- rolloff
- ......
- centroid
- spread
- kurtosis
- ......
- flux
- hfc
- mkl
- ......
- ......
等等一小部分敷矫,關(guān)于audioFlux所提供的所有譜特征例获,更具體的功能描述汉额、例子、公式等請(qǐng)參照官方文檔榨汤。
下面是一些譜特征對(duì)比圖蠕搜。
音樂信息檢索
audioFlux提供mir相關(guān)領(lǐng)域pitch估算、onset偵測(cè)收壕、hpss(諧波打擊樂分離)等相關(guān)業(yè)務(wù)算法妓灌。
pitch估算包含基于YIN,STFT等相關(guān)算法蜜宪,下面是針對(duì)一段人聲練習(xí)音高的偵測(cè)效果圖虫埂。
紅色為實(shí)際參照音高,藍(lán)色為估算音高圃验。
onset偵測(cè)包含基于Spectrum flux掉伏, novelty等等相關(guān)算法,下面是一段吉他掃弦伴奏的端點(diǎn)偵測(cè)效果圖澳窑。
中間時(shí)域圖像紅色虛線為端點(diǎn)偵測(cè)位置疊加而成斧散。
hpss包含中值濾波,非負(fù)矩陣分解等(NMF)等算法摊聋,下面是一段包含吉他彈奏和節(jié)拍器音頻的分離效果鸡捐,上半部分時(shí)域效果,下半部分對(duì)應(yīng)頻域效果栗精。