跳轉到內容

感覺系統/計算機模型/聽覺系統模擬

來自華夏公益教科書

聽覺系統的計算機模擬

[編輯 | 編輯原始碼]

處理聲音

[編輯 | 編輯原始碼]

音訊訊號可以儲存在多種格式中。它們可以是未壓縮的或壓縮的,編碼可以是開放的或專有的。在 Windows 系統上,最常見的格式是 WAV 格式 (w: WAV)。它包含一個標題,其中包含有關通道數量、取樣率、每樣本位數等的的資訊。該標題後跟資料本身。通常的位元流編碼是線性脈衝編碼調製 (LPCM,(w: Pulse-code_modulation) 格式。

許多程式語言提供用於讀取和寫入 WAV 檔案的命令。當使用其他格式的資料時,你有兩種選擇

  • 你可以將它們轉換為 WAV 格式,然後繼續。一個非常全面的免費跨平臺解決方案來錄製、轉換和流式傳輸音訊和影片是 ffmpeg (http://www.ffmpeg.org/).
  • 或者,你可以獲取用於讀取/寫入所需格式的特殊程式模組。

傅立葉變換回顧 (w:Fourier_transform)

[編輯 | 編輯原始碼]

要變換連續函式,可以使用傅立葉積分

其中k代表頻率。請注意,F(k)是複數值:它的絕對值給出函式的幅度,它的相位定義了餘弦和正弦分量之間的相移。

逆變換由下式給出

傅立葉變換:正弦波的總和可以構成任何重複波形。

如果資料以恆定的取樣頻率進行取樣,並且有N個數據點,則

係數 Fn 可以透過以下方式獲得

由於資料點和波形的數量都是離散的、有限的,因此這種變換被稱為 *離散傅立葉變換(DFT)*。 *快速傅立葉變換(FFT)* 只是 DFT 的一種特殊情況,其中點數為 2 的冪:

請注意,每個 是一個複數:它的模定義了訊號中對應頻率成分的振幅; 的相位定義了相應的相位(見圖示)。如果時域訊號 "f(t)" 是實值的,就像大多數測量資料一樣,這會對相應的頻率成分施加約束:在這種情況下,我們有

一個常見的混淆來源是這個問題:“哪個頻率對應於 ?”如果有 *N* 個數據點,取樣週期為 頻率由下式給出

換句話說,最低頻率是 [以 Hz 為單位],而最高獨立頻率是 ,這是由於奈奎斯特-夏農定理。請注意,在 MATLAB 中,第一個返回值對應於函式的偏移量,第二個返回值對應於 n=1!

生物訊號的頻譜分析

[edit | edit source]

平穩訊號的功率譜

[edit | edit source]

大多數 FFT 函式和演算法返回復傅立葉係數 。如果我們只對對應頻率的貢獻的大小感興趣,我們可以透過以下方式獲取此資訊

這就是我們訊號的 *功率譜*,它告訴我們不同頻率的貢獻有多大。

非平穩訊號的功率譜

[edit | edit source]

通常人們必須處理隨著時間變化其特徵的訊號。在這種情況下,人們想知道功率譜如何隨時間變化。最簡單的方法是每次只取一段短資料,並計算相應的功率譜。這種方法被稱為 *短時傅立葉變換(STFT)*。但是,在這種情況下,邊緣效應會顯著扭曲訊號,因為我們假設我們的訊號是週期性的。

"Hanning window"

為了消除邊緣偽影,可以對訊號進行濾波或“加窗”(w: Window_function)。上圖顯示了這種視窗的一個示例。雖然有些視窗提供更好的頻率解析度(例如矩形視窗),但其他視窗表現出更少的偽影,例如頻譜洩漏(例如漢寧視窗)。對於訊號的選定部分,透過將訊號與視窗相乘獲得加窗後得到的資料(左圖)

Effects of windowing a signal.

上面的右圖顯示了一個示例,說明如何切斷訊號並對其應用視窗會影響頻譜功率分佈。(相應的 Python 程式碼可以在 [1] 中找到)請注意,減小樣本視窗的寬度會增加相應功率譜的寬度!

一個時間視窗的刺激強度
[編輯 | 編輯原始碼]

為了獲得選定時間窗的功率譜,第一步是透過時間訊號的快速傅立葉變換 (FFT) 計算功率譜。結果是頻率域的聲音強度及其對應的頻率。第二步是將這些強度集中在幾個不同的頻率上(“分箱”)。結果是一個由幾個不同頻率組成的聲音訊號 - 模擬耳蝸中電極的位置。轉換回時域將給出該時間窗的模擬聲音訊號。

以下 Python 函式對給定訊號進行聲音處理。

import numpy as np

def pSpect(data, rate):
    '''Calculation of power spectrum and corresponding frequencies, using a Hamming window'''
    nData = len(data)
    window = np.hamming(nData)
    fftData = np.fft.fft(data*window)
    PowerSpect = fftData * fftData.conj() / nData
    freq = np.arange(nData) * float(rate) / nData
    return (np.real(PowerSpect), freq)

def calc_stimstrength(sound, rate=1000, sample_freqs=[100, 200, 400]): 
    '''Calculate the stimulation strength for a given sound'''

    # Calculate the powerspectrum
    Pxx, freq = pSpect(sound, rate)

    # Generate matrix to sum over the requested bins
    num_electrodes = len(sample_freqs)
    sample_freqs = np.hstack((0, sample_freqs))
    average_freqs = np.zeros([len(freq), num_electrodes])
    for jj in range(num_electrodes):
        average_freqs[((freq>sample_freqs[jj]) * (freq<sample_freqs[jj+1])),jj] = 1

    # Calculate the stimulation strength (the square root has to be taken, to get the amplitude)
    StimStrength = np.sqrt(Pxx).dot(average_freqs)

    return StimStrength

耳廓和外耳的聲音傳導

[編輯 | 編輯原始碼]

外耳分為兩部分:頭部側面的可見部分(耳廓)和通向鼓膜的外部耳道(外耳道),如下圖所示。外耳以這種結構有助於人類聲音定位能力的“頻譜線索”,讓人們不僅能夠檢測和識別聲音,還能定位聲源。 [2]

人耳的解剖結構

耳廓功能

[編輯 | 編輯原始碼]

耳廓的錐形使其能夠收集聲波並將它們引導到外耳道。除此之外,它的各種摺疊使耳廓成為一個共振腔,可以放大某些頻率。此外,由耳廓引起的聲波反射產生的干涉效應是方向依賴的,並將衰減其他頻率。因此,耳廓可以模擬為應用於入射聲音的濾波函式,從而調節其幅度和相位譜。


耳廓對來自兩個不同方向的聲音的頻率響應 [3]

耳廓腔的共振可以用 6 種正常模式很好地近似 [4]。在這些正常模式中,第一種模式主要取決於耳甲深度(即最靠近耳道的耳廓碗狀部分的深度),是最主要的模式。



由耳廓反射引起的某些頻率的抵消稱為“耳廓缺口”。 [4] 如右圖所示 [3],耳廓傳來的聲音經過兩條路徑,一條直接路徑,另一條更長的反射路徑。不同的路徑具有不同的長度,從而產生相位差。當入射聲音訊號的頻率達到一定標準時,即路徑差為聲波波長的一半,透過直接路徑和反射路徑的聲音的干涉將是破壞性的。這種現象被稱為“耳廓缺口”。通常缺口頻率可能發生在 6k Hz 到 16k Hz 之間,具體取決於耳廓形狀。還可以看出,耳廓的頻率響應是方向依賴的。這使得耳廓有助於聲音定位的空間線索。


耳道功能

[編輯 | 編輯原始碼]

外耳道大約 25 毫米長,8 毫米直徑,從耳道入口到鼓膜呈彎曲路徑。外耳道可以建模為一端封閉的圓柱體,導致共振頻率約為 3k Hz。這樣,外耳道就可以放大對人類語言重要的頻率範圍內的聲音。 [5]

外耳模擬

[編輯 | 編輯原始碼]

基於外耳的主要功能,如果我們知道濾波器的特性,就可以很容易地用濾波器或濾波器組來模擬耳廓和外耳道的聲波傳導。

許多研究人員正在研究人類聽覺系統的模擬,包括外耳的模擬。在下一章中,首先介紹了 _耳廓相關傳遞函式_ 模型,然後分別介紹了芬蘭和英國研究小組開發的兩個 MATLAB 工具箱。

[編輯 | 編輯原始碼]

這部分完全來自 S.Spagnol、M.Geronazzo 和 F.Avanzini 發表的論文。 [6] 為了模擬耳廓的功能,Spagnol 開發了一個耳廓相關傳遞函式 (PRTF) 的重建模型,該模型是一種頻率響應,描述了耳廓如何傳導聲音。該模型由兩個不同的濾波器模組組成,分別用於解釋耳廓的共振功能和反射功能,如下圖所示。

PRTF 重建的通用模型 [6]

在耳廓的感興趣頻率範圍內,有兩個主要的共振 [6],可以用兩個固定頻寬的二階峰值濾波器表示 [7]

其中


是取樣頻率, 是中心頻率, 是陷波深度。

對於反射部分,設計了三個形式為 [8] 的二階陷波濾波器,其引數包括中心頻率 ,陷波深度 和頻寬

其中 與之前為共振函式定義的相同,並且

每個濾波器對應一個不同的譜陷波。

透過將三個串聯放置的陷波濾波器級聯在兩個並聯的峰值濾波器之後,設計了一個八階濾波器來模擬 PRTF。
透過比較合成 PRTF 和原始 PRTF,如下圖所示,Spagnol 得出結論:PRTF 的合成模型總體上是有效的。由於截止頻率的限制,該模型可能缺少陷波。由於可能存在未建模的干擾共振,也可能會引入近似誤差。

原始 vs 合成 PRTF 圖[6]

HUTear MATLAB 工具箱

[edit | edit source]
HUTear 通用聽覺模型框圖

HUTear 是由 聲學與音訊訊號處理實驗室赫爾辛基理工大學 [9] 開發的用於聽覺建模的 MATLAB 工具箱。這個開源工具箱可以從 這裡 下載。工具箱的結構如右圖所示。

該模型中包含一個用於“外耳和中耳 (OME)”模擬的模組。這個 OME 模型是基於 Glassberg 和 Moore [10] 開發的。OME 濾波器通常是一個線性濾波器。聽覺濾波器是在考慮“60 dB 等響度曲線 (ELC) ”、“最小可聽場 (MAF)”、“耳道最小可聽聲壓 (MAP)”校正的情況下生成的。該模型考慮了外耳模擬。透過使用“OEMtool”指定不同的引數,可以比較 MAP IIR 近似值和 MAP 資料,如下圖所示。

HUTear 工具箱中的 OEMtool 使用者介面

聽覺外周模型 (MAP)

[edit | edit source]

MAP 由英國埃塞克斯大學 埃塞克斯大學 聽覺研究實驗室 研究人員 開發 [11]。MAP 是一個模擬人類聽覺生理基礎的計算機模型,它是一個開原始碼包,用於測試和開發模型,可以從 這裡 下載。其模型結構如下圖所示。

MAP 模型結構

MAP 模型中包含“外中耳 (OME)”子模型,允許使用者測試和建立 OME 模型。在這個 OME 模型中,外耳的功能被建模為一個共振函式。共振由兩個並聯的帶通濾波器組成,分別代表耳廓共振和外耳道共振。這兩個濾波器由通帶頻率範圍、增益和階數指定。透過將共振濾波器的輸出新增到原始聲壓波中,可以得到外耳模型的輸出。

為了測試 OME 模型,執行名為“testOME.m”的函式。將顯示一個繪製外耳共振和鐙骨峰值位移的圖形。(如下圖所示)

OME 模型中的外耳共振和鐙骨峰值位移

總結

[edit | edit source]

外耳,包括耳廓和外耳道,可以模擬為一個線性濾波器或濾波器組。這反映了它對傳入聲音的共振和反射效應。值得注意的是,由於耳廓形狀因人而異,模型引數(如共振頻率)取決於受試者。

上述模型中沒有包含的一個方面是頭部相關傳遞函式 (HRTF)。HRTF 描述了耳朵如何從空間中的一個點聲源接收聲音。這裡沒有介紹它,因為它超出了外耳(耳廓和外耳道)的影響範圍,因為它還會受到頭部和軀幹的影響。對於感興趣的讀者,有很多關於 HRTF 的文獻和出版物。(wiki,教程 12關於空間音訊研究(包括 HRTF)的閱讀清單

內耳模擬

[edit | edit source]

基底膜的形狀和組織意味著不同的頻率在膜的不同位置產生特別強的共振。這導致膜上對頻率範圍敏感性的音調拓撲組織,可以將其建模為一組重疊的帶通濾波器,稱為“聽覺濾波器”。[12] 聽覺濾波器與基底膜上的點相關聯,並決定耳蝸的頻率選擇性,因此決定了聽者對不同聲音的辨別能力。[13] 它們是非線性的,取決於聲級,並且頻寬從耳蝸的基底到頂點減小,因為基底膜上的調諧從高頻到低頻變化。[13][14] 聽覺濾波器的頻寬被稱為臨界頻寬,正如 Fletcher (1940) 首次提出的那樣。如果一個訊號和一個掩蔽物同時出現,那麼只有落在臨界頻寬內的掩蔽物頻率才有助於掩蔽訊號。臨界頻寬越大,信噪比 (SNR) 越低,訊號越容易被掩蔽。

ERB 與中心頻率的關係。 該圖顯示了根據 Glasberg 和 Moore 的公式得到的 ERB 與中心頻率的關係。[13]

另一個與聽覺濾波器相關的概念是“等效矩形頻寬”(ERB)。ERB 顯示了聽覺濾波器、頻率和臨界頻寬之間的關係。ERB 透過與之對應的聽覺濾波器傳遞相同量的能量,並顯示它如何隨輸入頻率變化。[13] 在低聲級下,ERB 可以根據 Glasberg 和 Moore 的公式用以下方程近似。[13]

其中 ERB 以 Hz 為單位,F 以 kHz 為單位。

據認為,每個 ERB 等效於基底膜上大約 0.9 毫米。[13][14]

伽馬音濾波器

[edit | edit source]
伽馬音脈衝響應示例。

用於模擬聽覺濾波器的一種濾波器型別是“伽馬音濾波器”。它為描述給定聲音輸入下基底膜一個位置的運動提供了簡單的線性濾波器,因此易於實現。線性濾波器常用於模擬聽覺系統的不同方面。通常,它們是 IIR 濾波器(無限衝激響應),包含前饋和反饋,定義如下

其中 a1=1。換句話說,係數 ai 和 bj 唯一地決定了這種型別的濾波器。透過重新排列方程,可以更清楚地瞭解這些濾波器的反饋特性

(相比之下,FIR 濾波器或有限衝激響應濾波器只涉及前饋:對於它們 對於 i>1。)

“無限衝激響應”濾波器的通用描述。

線性濾波器無法解釋聽覺系統的非線性方面。然而,它們仍然被用於各種聽覺系統模型。伽馬音脈衝響應由以下公式給出:

其中 是頻率, 是載波的相位, 是振幅, 是濾波器的階數, 是濾波器的頻寬, 是時間。

這是一個正弦波,其幅度包絡是一個縮放的伽馬分佈函式。

伽馬音模型聽覺濾波的變體和改進包括伽馬啁啾濾波器、全極點和一零伽馬音濾波器、雙邊伽馬音濾波器和濾波器級聯模型,以及這些模型的各種依賴於電平的和動態非線性版本。[15]

對於計算機模擬,伽馬音模型的有效實現可用於 Matlab 和 Python[16]

在使用伽馬音濾波器時,我們可以巧妙地利用帕塞瓦爾定理來確定給定頻帶的能量

聽覺編碼和耳蝸的濾波特性

[編輯 | 編輯原始碼]

在本頁中,我們將回顧感知音訊編碼的主要機制。解釋了背後的心理聲學原理,並指出了與耳蝸的濾波特性和更高皮層處理階段的關係。

感知音訊編碼

[編輯 | 編輯原始碼]

Mp3(MPEG-1 Layer 3,MPEG-2 和 MPEG-4 高階音訊編碼 (AAC) 的前身)可能是利用音訊訊號的感知編碼的最著名的音訊格式。 AAC 是一個更有效的擴充套件,通常可以獲得更好的音質,允許更廣泛的頻寬,但依賴於與 Mp3 相同的編碼原理。這兩種格式都由 ISO 和 IEC 標準化,但只有解碼器完全指定,而編碼器實現是開放的。這導致了各種可用的編碼器,其再現質量、可實現的位元率、效能和編碼效率有所不同 [17]

與經典訊號壓縮演算法(旨在用最少位數表示資訊,同時保持訊號再現質量)不同,感知音訊編碼考慮了來自人類聽覺系統的知識,並透過去除對大多數聽眾來說感知上無關的資訊來降低位元率。這種 有失真壓縮 是透過探索人類聽覺系統的特性和統計冗餘來實現的。Mp3 通常使用的編碼位元率為 128 kbit/s,高效編碼器在壓縮 CD 質量音訊(16 位 PCM,44.1 kHz,≈ 1411 kBit/s)時通常可以實現大約 10 倍的資料縮減。換句話說,大約 90% 儲存在 CD 上的資料無法被人耳感知。CD 質量是使用者在聽音樂時通常期望的(關於 CD 質量是否足以再現模擬原始音訊存在著長期爭論。在眾多不同的專家觀點中,這兩個參考文獻[17][18] 可能對進一步閱讀有所幫助)。對更有效的音訊編碼的需求來自網路、多媒體系統和儲存應用,Mp3 最初是為了更有效地傳輸視聽內容而建立的。

約翰斯頓[19]研究了感知音訊編碼的理論極限,從而引出了感知熵的概念。根據測量結果,感知熵估計為每樣本約 2 位元,適用於 CD 音質音訊。最先進的編碼器證實了這種效率,可實現透明的(接近)CD 音質音訊編碼[20]。感知編碼演算法的質量通常透過聽力測試來評估,最近也結合了用於客觀測量感知音訊質量的標準化演算法,稱為感知音訊質量評估 (PEAQ)

感知音訊編碼器的基本架構

[edit | edit source]
感知音訊編碼器的基本架構

大多數感知音訊編碼器都可以用圖中所示的基本架構來描述。分析濾波器組近似於人類聽覺系統的時域和頻域分析特性。輸入被分割成幀,然後轉換為一組可以量化和編碼的引數。量化和編碼階段利用統計冗餘,並依賴於感知模型提供的閾值進行位元分配和量化噪聲整形。感知模型描述了編碼的頻率函式掩蔽閾值。最後,編碼階段使用標準的無損編碼技術,例如霍夫曼編碼。有關技術演算法解釋和示例實現,我建議您參考J.O. Smith 的線上書籍

用於感知音訊編碼的聽覺心理聲學原理

[edit | edit source]

感知音訊編碼的基本思想是,對量化噪聲進行整形,使其被音訊訊號本身掩蔽,從而不被聽眾感知。這是透過利用聽覺心理聲學原理實現的,包括絕對聽閾、臨界頻帶頻率分析和聽覺掩蔽[20]。由於回放電平通常在編碼階段未知,因此在編碼過程中,通常使用保守估計來評估絕對聽閾,以進行訊號歸一化。聽覺掩蔽描述了一種現象,即一種聲音的感知會受到另一種聲音存在的影響。掩蔽效應出現在頻域(同時掩蔽)和時域(非同時掩蔽)。

同時掩蔽

[edit | edit source]
改編自 Jayant 等人[21]。同時掩蔽的擴充套件函式。在 1 kHz 處,不同強度的臨界頻帶噪聲掩蔽體。

對於同時掩蔽,耳蝸的頻率解析度起著至關重要的作用。在耳蝸內部,發生著頻率到位置的轉換,並形成了針對不同頻帶調諧的不同區域。這些不同的頻率區域被稱為聽覺臨界頻帶(或臨界頻寬)。臨界頻寬在 500 Hz 以下基本保持恆定,約為 100 Hz,在 500 Hz 以上增加到中心頻率的約 20%。[20] 前 24 個臨界頻帶由 Bark 標度描述。音調的存在會導致基底膜的激發,這會影響其臨界頻帶內(帶內掩蔽)第二個音調的檢測閾值。此外,相鄰頻帶也會受到影響(帶間掩蔽)。相鄰頻帶的受影響程度由擴充套件函式描述。右側圖顯示了對不同強度的臨界頻帶噪聲掩蔽體進行的測量擴充套件函式。如圖所示,掩蔽體在掩蔽高頻帶方面比掩蔽低頻帶更有效,這被稱為掩蔽的向上擴充套件。擴充套件函式的原因被認為是耳蝸機械濾波特性的副產品,耳蝸中的外毛細胞會放大基底膜的運動,以提高頻率解析度[21]。掩蔽向上擴充套件的原因尚不明確,除了機械激發之外,抑制也起著作用[22]。此外,由於圖中第二個峰值出現在約 2 kHz(1 kHz 的二次諧波)處,因此在更高的聲壓級下,內耳和中耳的非線性傳遞特性也起著作用[21]

強噪聲或音調掩蔽體的存在會在基底膜上產生足夠強的激發,從而有效地阻斷其臨界頻帶內較弱訊號的傳輸,並且掩蔽的擴充套件也會影響相鄰頻帶。已觀察到兩種型別的同時掩蔽體:噪聲掩蔽音調和音調掩蔽噪聲。對於噪聲掩蔽音調,音調的存在允許預測被掩蔽噪聲頻譜的閾值,對於音調掩蔽噪聲,噪聲的存在允許預測被掩蔽音調的閾值。據報道,純音和臨界頻帶限制噪聲具有不同的閾值。[20] 關於音樂的感知編碼,這些閾值會根據感知編碼器時頻分析的內容進行插值,然後再考慮擴充套件函式。客觀信噪比 (SNR) 可能非常低,例如 20 dB,但取決於音訊內容,而主觀 SNR 足夠高以實現透明編碼。[21] 相比之下,音訊 CD 的 SNR 為 96 dB。

非同時掩蔽

[edit | edit source]
改編自 Jayant 等人[21] 非同時掩蔽。尖銳的瞬態會在時域中產生影響聽覺感知的掩蔽效應。圖中所示,瞬態之前(前向或後向掩蔽)和之後(後向或前向掩蔽)的感知都會受到影響。

音訊訊號中的突然瞬態(或強攻擊)會導致時域中的掩蔽效應。圖中所示,瞬態之前(前向或後向掩蔽)和之後(後向或前向掩蔽)的感知都會受到影響。後向掩蔽區域持續時間約為毫秒級,而前向掩蔽區域持續時間更長,約為十分之幾毫秒[20]

時間掩蔽尚未完全理解,是一個活躍的研究課題。然而,有證據表明,更高層次的皮質處理參與了這種現象。尚不清楚這種效應是否與聲音的整合、神經處理的中斷或抑制,以及/或傳輸速度的差異有關。前向和後向掩蔽表現出不同的特徵,因此被認為源於人類聽覺系統的不同特性[23]

掩蔽和聯合立體聲編碼

[edit | edit source]

音訊編碼中常用的高效技術是聯合立體聲編碼。由於音樂訊號的左右聲道通常高度相關,因此對音訊訊號進行求和/差值 (L-R、L+R) 編碼有時更有效。在 Mp3 的情況下,求和/差值編碼的潛力沒有得到充分利用,一種高效的技術是比較左右聲道和求和/差值編碼的閾值,並動態選擇效率更高的編碼方式。在計算掩蔽閾值時需要注意,因為聯合聲道編碼會導致由於雙耳聆聽而產生的可聽偽影。[21]

對於 Mp3 和 AAC,編碼位元率是選擇的,而不是壓縮因子,因為壓縮因子取決於內容。較低的位元率會導致更高的壓縮比,而較高的位元率會導致較低的壓縮比,並且可能出現的偽影的機率也較低。這會導致特定演算法表現最佳的工作區域(或位元率),並且在更高的位元率下僅略有改進。[17] 與我們習慣於使用 CD 聆聽時所產生的播放裝置的噪聲和失真偽影不同,感知編碼器產生的可聽偽影可能令人討厭。如果位元率太低而無法實現透明編碼,則產生的噪聲和失真可以描述為時變訊號,其中失真與諧波無關,噪聲是帶限的,並且頻寬可能會隨幀而變化,訊號可能會聽起來很粗糙。[17]

頻寬損失

[編輯 | 編輯原始碼]

如果編碼器用完位元,則在頻率頻寬和低頻內容的精確編碼之間存在基本權衡。這會導致編碼的頻率頻寬隨幀而變化,聽起來非常令人不快。通常,這種偽影可以透過限制低位元率的頻率頻寬來抵消。

前奏是最難避免的錯誤,與感知編碼器的幀大小有關。如果音訊訊號的強烈攻擊發生在幀的中間,則由於幀大小,計算出的噪聲閾值可能會擴充套件到向後掩蔽區域,從而變得可聽。有各種技術可以最大程度地減少前奏的出現,例如可變幀大小分析濾波器組。[17]

與耳蝸過濾特性的關係

[編輯 | 編輯原始碼]

總而言之,感知編碼利用了人類聽覺系統的特性。絕對聽閾值與耳蝸的特性有關,但也與中耳和外耳的聲學和機械特性有關。在同時掩蔽中,跨臨界頻寬和內臨界頻寬掩蔽閾值(擴充套件函式)源於耳蝸的過濾特性。但是,掩蔽的向上擴充套件不僅可以用耳蝸的特性來解釋,其他現象(如抑制)也可能起作用。最後,時間掩蔽現象只能用聽覺系統中較高級別的皮層處理來解釋,而聯合立體聲編碼可能產生的偽影也需要雙耳聆聽來檢測,這表明人類聽覺系統的各個階段都參與其中。

  1. T. Haslwanter (2012). "短時傅立葉變換 [Python]". 私下交流.
  2. Semple, M.N. (1998), "聽覺感知:虛擬世界中的聲音", 自然, 自然出版集團, 396 (6713): 721–724, doi:10.1038/25447
  3. a b http://tav.net/audio/binaural_sound.htm
  4. a b Shaw, E.A.G. (1997), "人耳的聲學特徵", 雙耳和空間聽覺在真實和虛擬環境中, Mahwah, NJ: Lawrence Erlbaum, 25: 47
  5. Federico Avanzini (2007–2008), 聲音和音樂計算演算法,音樂資訊學課程材料 (http://www.dei.unipd.it/~musica/IM06/Dispense06/4_soundinspace.pdf), p. 432 {{citation}}: 外部連結在 |title= 中 (幫助); 忽略了文字“第 4 章” (幫助)CS1 maint: date format (link)
  6. a b c d Spagnol, S. and Geronazzo, M. and Avanzini, F. (2010), "耳廓相關傳遞函式的結構建模", 聲音和音樂計算國際會議論文集 (SMC 2010), 巴塞羅那, p. 422-428{{citation}}: CS1 maint: 多個名稱:作者列表 (link)
  7. S. J. Orfanidis,編,訊號處理導論。Prentice Hall,1996 年。
  8. U. Zölzer,編,數字音訊效果。紐約,紐約,美國:J.Wiley & Sons,2002 年。
  9. http://www.acoustics.hut.fi/software/HUTear/
  10. Glasberg, B.R. 和 Moore, B.C.J. (1990),“從陷波噪聲資料中推匯出聽覺濾波器形狀”,Hearing research,Elsevier,47 (1–2):103–138{{citation}}:CS1 maint:多個名字:作者列表 (link)
  11. http://www.essex.ac.uk/psychology/department/research/hearing_models.html
  12. Munkong, R. (2008), IEEE Signal Processing Magazine,第 25 卷,第 3 期,第 98-117 頁,Bibcode:2008ISPM...25...98Mdoi:10.1109/MSP.2008.918418 {{citation}}缺少或為空 |title= (help)
  13. a b c d e f Moore, B. C. J. (1998)。Cochlear hearing loss。倫敦:Whurr Publishers Ltd. ISBN 0585122563.
  14. a b Moore, B. C. J. (1986),“心理物理和耳蝸力學測量的頻率選擇性之間的平行”,Scand. Audio Suppl.,第 25 號,第 129-52 頁
  15. R. F. Lyon,A. G. Katsiamis,E. M. Drakakis (2010)。“聽覺濾波器模型的歷史與未來” (PDF)Proc. ISCAS。IEEE.{{cite web}}:CS1 maint:多個名字:作者列表 (link)
  16. T. Haslwanter (2011)。“Gammatone 工具箱 [Python]”私人通訊.
  17. a b c d e Karlheinz Brandenburg。MP3 和 AAC 解釋。在音訊工程學會會議:第 17 屆國際會議:高質量音訊編碼。音訊工程學會,1999 年。
  18. J. R. Stuart 為 Acoustic Renaissance for Audio。關於高密度 CD 載體高質量音訊應用的建議。1995 年。
  19. James D Johnston。使用噪聲掩蔽準則估計感知熵。在 1988 年 IEEE 國際聲學、語音和訊號處理會議論文集。
  20. a b c d e Ted Painter 和 Andreas Spanias。數字音訊訊號感知編碼演算法綜述。在 1997 年 IEEE 第 13 屆國際數字訊號處理會議論文集。
  21. a b c d e f Nikil Jayant,James Johnston 和 Robert Safranek。基於人類感知模型的訊號壓縮。IEEE 會刊,第 81 卷(第 10 期):1385-1422,1993 年。
  22. Andrew J Oxenham 和 Christopher J Plack。抑制和掩蔽向上擴充套件。美國聲學學會雜誌,第 104 卷(第 6 期):3500-3510,1998 年。
  23. Renata Filippini。揭開聽覺時間掩蔽的神秘面紗,2015 年。 http://hearinghealthmatters.org/pathways/2015/unmasking-auditory-temporal-masking/

人類語音

[edit | edit source]

發聲器官

[edit | edit source]

人類的聲音是由發聲器官產生的。雖然說話似乎毫不費力,但它需要肺部、舌頭、上顎、嘴唇和牙齒的複雜運動協調。在皮層水平上,這種運動協調發生在布羅卡區

人類的發聲器官。


術語

[edit | edit source]

響度

[edit | edit source]

聲音的強度通常用分貝 (dB) 表示,定義為

其中 SPL = “聲壓級”(以 dB 為單位),參考壓力為 . 請注意,這遠小於氣壓(約 105 N/m2)!還要注意,聲音通常以“聽力水平”而不是 SPL 為參考。

  • 0 - 20 dB SPL ... 聽力水平(正弦波音為 0 dB,頻率範圍 1 kHz – 4 kHz)
  • 60 dB SPL ... 中等響度音,日常對話

基頻來自聲帶的振動,成年男性約為 120 Hz,成年女性約為 250 Hz,兒童則可高達 400 Hz。

人類聽力損失的頻率和響度依賴性。

共振峰

[edit | edit source]

共振峰是人類語音中的主導頻率,是由聲帶訊號在口腔等部位的共振產生的。共振峰在聲音的頻譜中表現為能量的明顯峰值。它們從最低頻率的共振峰開始按升序編號。

母音的功率譜。聲帶的振動決定了基頻。人類聲道中的共振決定了“共振峰”的位置。共振峰的相對位置決定了母音的型別。
德語母音“a,e,i,o,u”的聲譜圖。這些母音大約對應於英語單詞“hut, hat, hit, hot, put”中的母音。使用 MATLAB 命令“spectrogram(data, 512,256, 512, fs)”計算得出。本章節非平穩訊號的功率譜描述了聲譜圖背後的數學原理。

音素

[edit | edit source]

語音通常被認為由一系列被稱為音位的聲學單元組成,這些聲學單元對應於被稱為音素的語言單元。音素是用來區分不同單詞的最小的語音單位。例如,“dog”這個單詞包含三個音素。分別改變第一個、第二個和第三個音素會產生“log”、“dig”和“dot”這些單詞。英語據說包含 40 個不同的音素,例如“dog”這個單詞中的 /d/、/o/、/g/。

語音感知

[edit | edit source]

人類解碼語音訊號的能力仍然遠遠超過目前開發的任何演算法。雖然自動語音識別在識別信噪比高的環境中清晰的語音方面取得了相當大的成功,但一旦條件變得不太理想,識別演算法的效能往往比人類差得多。由此看來,我們的計算機語音識別演算法還沒有接近於捕捉人類用於識別語音的底層演算法。

有證據表明,語音感知在腦中的路線與其他聲音的感知有很大不同。雖然對非語音聲音反應的研究通常發現反應與刺激成正比,但語音研究反覆發現,當呈現分級刺激時,反應會發生離散化。例如,Lisker 和 Abramson,[1] 播放了預先發聲的“b/p”音。聲音被解釋為 /b/ 還是 /p/ 取決於聲門起始時間 (VOT)。他們發現,當平滑地改變 VOT 時,在子音播放後約 20 毫秒處發生了一個急劇變化,受試者將他們的識別從 /b/ 轉換到 /p/。此外,受試者在區分同一類別中的兩個聲音方面存在很大困難(例如,VOT 為 -10 毫秒到 10 毫秒的聲音對,都將被識別為 /b/,而 VOT 為 10 毫秒到 30 毫秒的聲音,將被識別為 b 和 p)。這表明正在進行某種分類方案。在試圖構建語音感知模型時遇到的主要問題之一是所謂的“不變數缺失”,更直接地說可以被稱為“方差”。這個詞指的是一個音素(例如,sPeech 或 Piety 中的 /p/)有很多不同的波形與之對應,並且聲波形與音素之間的對映遠非顯而易見,並且高度依賴於上下文,但人類聽眾卻能可靠地給出正確的結果。即使在上下文相似的情況下,波形也會由於語音節奏、說話人身份和說話語氣等因素而表現出很大的方差。因此,雖然沒有一個公認的語音感知模型,但現有的模型可以分為兩類:被動感知和主動感知。

被動感知模型

[edit | edit source]

被動感知理論通常用與大多數感覺訊號處理演算法相同的方式描述語音感知問題:一些原始輸入訊號進入,並透過一個層次結構進行處理,其中每個後續步驟從輸入中提取一些越來越抽象的訊號。早期被動模型的例子之一是特徵辨別理論。這個想法是識別某些特徵的一組二進位制值的出現。例如,“鼻音/口音”、“母音/非母音”。該理論認為,音素被解釋為這些特徵的存在或不存在的二進位制向量。這些特徵可以從聲譜圖資料中提取出來。其他被動模型,例如 Selfridge[2] 和 Uttley[3] 描述的模型,涉及一種模板匹配,其中處理層級的層次結構提取越來越抽象的特徵,並且對某些無關特徵(例如,在對音素進行分類時,說話人身份)不敏感。

主動感知模型

[edit | edit source]

對語音感知的完全不同的看法是主動感知理論。這些理論指出,大腦擁有兩個用於語音感知和語音產生的平行系統是多餘的,因為產生聲音的能力與識別聲音的能力密切相關。這些理論的支持者認為,維持兩個獨立的資料庫(一個包含識別音素的程式,另一個包含產生音素的程式)將是浪費和複雜的。他們認為,語音感知實際上是透過嘗試複製傳入訊號來完成的,因此使用與音素產生相同的電路來進行識別。語音感知的運動理論(Liberman 等人,1967 年)指出,語音聲音的識別不是透過任何形式的模板匹配來完成的,而是透過使用語音產生機制來嘗試重新生成語音訊號的副本。它指出,音素不應被視為語音中的隱藏訊號,而應被視為產生機制試圖在語音前訊號中再現的“線索”。該理論指出,大腦的語音產生區域透過始終聽到自己的語音的持續反饋迴圈來學習哪些語音前訊號將產生哪些聲音。據認為,嬰兒的咿呀學語是一種學習如何從運動前訊號中產生這些“線索”聲音的方式。[4]

Stevens 和 Halle 在分析合成模型中提出了一個類似的想法。[5] 這描述了一個試圖重新生成與傳入聲音相似的訊號的生成模型。它本質上利用了語音產生機制在人與人之間是相似的這一事實,以及說話者可以透過語音中心再現他們在語音中聽到的特徵。當說話者聽到聲音時,語音中心會嘗試生成傳入的訊號。比較器會持續反饋關於再生的質量。因此,“感知單位”與其說是傳入聲音的抽象,不如說是產生相同語音的運動前指令。

當一系列關於現在被稱為布羅卡失語症的研究發表時,運動理論遭到了嚴重打擊。這種疾病會損害一個人產生語音聲音的能力,而不會損害理解語音聲音的能力,而運動理論,以其原始形式,指出產生和理解是由相同的電路完成的,因此受損的語音產生應該意味著受損的語音理解。布羅卡失語症的存在似乎與這一預測相矛盾。[6]

當前模型

[edit | edit source]
語音感知的 TRACE 模型。輸入層以外的所有連線都是雙向的。每個單元代表語音的某個單位,例如一個單詞或一個音素。

語音感知中最具影響力的計算模型之一被稱為 TRACE。[7] TRACE 是一個類似神經網路的模型,具有三層和迴圈連線方案。第一層從輸入頻譜圖中按時間順序提取特徵,基本上模擬了耳蝸。第二層從特徵資訊中提取音素,第三層從音素資訊中提取單詞。該模型包含前饋(自下而上)興奮性連線、側向抑制性連線和反饋(自上而下)興奮性連線。在這個模型中,每個計算單元對應於感知的某個單位(例如音素 /p/ 或單詞“荒謬”)。基本思想是,基於其輸入,層內的單元將競爭以獲得最強的輸出。側向抑制性連線導致一種贏者通吃的迴路,其中輸入最強的單元將抑制其鄰居併成為明顯的贏家。反饋連線使我們能夠解釋上下文相關的理解的影響 - 例如,假設音素層,基於其自下而上的輸入,無法決定是否聽到了 /g/ 或 /k/,但該音素在 'an' 之前,後面跟著 'ry'。/g/ 和 /k/ 單元最初將被同樣啟用,並將輸入傳送到詞語級別,該級別已經包含與單詞“anaconda”、“angry”和“ankle”相對應的興奮單元,這些單詞已被前面的 'an' 啟用。/g/ 或 /k/ 的興奮

參考文獻

[編輯 | 編輯原始碼]
  1. Lisker, L. (1970). "The voicing dimension: Some experiments in comparative phonetics". Proceedings of the 6th International Congress of Phonetic Sciences. Prague: Academia. {{cite book}}: 未知引數 |coauthors= 被忽略 (|author= 建議) (幫助); 未知引數 |editors= 被忽略 (|editor= 建議) (幫助)
  2. Selfridge, O.C (1959) "Pandemonium: a paradigm for learning". in Proceedings of the Symposium on Mechanisation of Thought Process. National Physics Laboratory.
  3. Uttley, A.M. (July 1966). "The transmission of information and the effect of local feedback in theoretical and neural networks". Brain Research. 2 (1): 21–50. doi:10.1016/0006-8993(66)90060-6.
  4. Liberman, M. T.; Mattingly, I. G.; Turvey (1967). "Language codes and memory codes". In Melton, A. W.; Martin, E. (eds.). Coding Processes in Human Memory. V. H. Winston & Sons. pp. 307–334. {{cite book}}: |first1=|first= 都指定了 (幫助)
  5. Stevens, K. N.; Halle, M. (1967). "Remarks on analysis by synthesis and distinctive features". In Wathen-Dunn, W. (ed.). Models for the perception of speech and visual form: proceedings of a symposium. Cambridge, MA: MIT Press. pp. 88–102.
  6. Hickok, Gregory (January 2010). "The role of mirror neurons in speech and language processing". Brain and Language. 112 (1): 1–2. doi:10.1016/j.bandl.2009.10.006.
  7. McClelland, James L; Elman, Jeffrey L (January 1986). "The TRACE model of speech perception". Cognitive Psychology. 18 (1): 1–86. doi:10.1016/0010-0285(86)90015-0.

視覺系統模擬 · 前庭系統模擬

華夏公益教科書