看到为什么tap数越多越好
就让我想到之前有教授解释过采样率越高为什么越好
跟人耳听不到的频率这种玄学无关,而是有纯粹科学的解释
以下说明因为我很久没碰讯号与系统,有错误请指正
先来复习一下采样定理
这是一段声音讯号在 time domain 会像下图一样
https://imgur.com/KfVaUxb.jpg
同样一段声音讯号经过 Fourier transform 在 frequency domain 的图形如下图
https://imgur.com/xGK051d.jpg
该讯号经过采样(数位化)后就只剩下以下的红点
点的间距为(1/44kHz 1/48kHz 1/96kHz...)
https://imgur.com/KlZ7DH9.jpg
这些红点经过 Fourier transform 在 frequency domain会变成
https://imgur.com/X6dXRn8.jpg
可以看到除了原先中央的讯号外
在所有为采样频率f的整数倍上的位置会有相同的图案(绿色部分)
那么要把已经数位化的讯号还原成类比就要通过一个low pass filter(图中方框)
把那些重复的部分滤除
https://imgur.com/KzP2OFF
就可以还原成原本的类比讯号(蓝色部分)
这边补充一下,若是取样频率不够
会造成蓝色部分与绿色部分重叠
https://imgur.com/gLthYk6
导致滤不出原本的蓝色部分
而图中的方形low pass filter 经过 inverse Fourier transform 回到 time domain
会是下图中的sinc function
https://imgur.com/o9mGcmY
这个从数位到类比的过程大致上如下图所示
https://imgur.com/SfyawAG
每个红点放入对应的 sinc function 后相加回原本的讯号
理想上的 sinc function 是无限长的且 non causal
无限长很好理解,non causal指的是在还原 t=0 到 t=1之间的讯号时
https://imgur.com/1pPHnGm
就需要把未来的第 2 3 4 个点的 sinc function 相加 (橘线蓝线粉线)
因为我们没办法预知未来,所以理想上的 sinc function 无法实作
也就是说实务上没办法做出一个方形的 low pass filter
一般能用的 low pass filter不是那么完美
https://imgur.com/azOwahP
越陡的衰减在中央平坦处就会有抖动(蓝线)
而中央越平坦衰减的斜率就越不陡(黄线)
那么增加采样率的效果在 frequency domain 如下图
https://imgur.com/eaCb0mO
可以看到要滤除的绿色部分跟中间蓝色部分距离比较远
让我们能够比较容易设计出中央平坦的 low pass filter (红色梯形)
在 cut off frequency 的衰减斜率也不用那么大
而增加 tap 数的好处则是可以让 low pass filter 越接近理想的矩形
以上就是为什么增加取样频率与 tap 数会更好还原出原本的声音