Gammatone filterbank

Produce an array of responses from a fourth-order Gammatone filter via FFT
다운로드 수: 3.3K
업데이트 날짜: 2018/5/5

NOTE: this function is now available from the IoSR Matlab Toolbox as iosr.auditory.gammatoneFast.
-------------------------
bm = gammatoneFast(x,cfs,fs)
bm = gammatoneFast(...,align)
[bm,env] = gammatoneFast(...)
[bm,env,delay] = gammatoneFast(...)

This function takes an input vector and passes it through a bank of fourth-order gammatone filters, with centre frequencies specified by cfs. The function returns a matrix, with each row/column corresponding to a filter output with a centre frequency determined by the corresponding element in cfs. The orientation of the output is determined by the orientation of the input: if x is a row vector then the output will contain one row for each filter output, and vice versa.

Centre frequencies may be any value below the Nyquist rate (determined by the sampling frequency fs). Typically centre frequencies are equally spaced on the ERB-rate scale and may be calculated thus:

cfs = MakeErbCFs(low_cf,high_cf,numchans)

where low_cf is the lowest frequency in the bank, high_cf is the highest, and numchans is the numbers of filters in the bank.

bm = gammatoneFast(...,align) allows phase alignment to be applied. With align=false, no alignment is applied (default). With align=true, fine structure and envelope alignment is applied so that the impulse response peaks occurs at t=0.

[bm,env] = gammatoneFast(...) returns the instantaneous envelopes env for each filter.

[bm,env,delay] = gammatoneFast(...) returns the delay (in samples) removed by the phase alignment of each gammatone filter, i.e. delays(n)=0 if align=false. delay is a vector the same size as cfs.

Based on code written by ZZ Jin, adapted by DLW in Jan'07 and JF Woodruff in Nov'08

See also MakeErbCFs.

인용 양식

Christopher Hummersone (2024). Gammatone filterbank (https://github.com/IoSR-Surrey/MatlabToolbox), GitHub. 검색 날짜: .

MATLAB 릴리스 호환 정보
개발 환경: R2011a
모든 릴리스와 호환
플랫폼 호환성
Windows macOS Linux
카테고리
Help CenterMATLAB Answers에서 Filter Banks에 대해 자세히 알아보기

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

GitHub 디폴트 브랜치를 사용하는 버전은 다운로드할 수 없음

버전 게시됨 릴리스 정보
1.17.0.0

Migrated to GitHub.
Replaced GAMMATONE and GAMMATONEBANK with single function GAMMATONEFAST. Simplified interface: filter centre frequencies are specified directly. Now uses FFT rather than FILTER, making it more efficient for multiple filters.

1.16.0.0

changed screenshot

1.0.0.0

이 GitHub 애드온의 문제를 보거나 보고하려면 GitHub 리포지토리로 가십시오.
이 GitHub 애드온의 문제를 보거나 보고하려면 GitHub 리포지토리로 가십시오.