发烧论坛

注册

 

发新话题 回复该主题

理想与现实的差距……..浅谈抽样定理 [复制链接]

查看: 8254|回复: 68
1#

低温 在 2006-3-21 0:15:38 发表的内容
开兄的贴子着实有趣,这正是困扰了俺很久的问题,直到前年才理清个头绪。

奈奎斯特定律害人不浅。
定律本身并没有错,但是应用的条件出了错,前提是正弦波。
谁说音频的20-20KHz只是正弦波呢?,如果遇到18KHz方波如何采样、如何还原呢?如果一个正弦波信号发生相位跳动(同频) 如何表达呢?这一切用44.1KHz的采样频率全是错误的。
用FFT去分解如果22.1KHz的频响,只能换得大约7.8KHz以下方波<3%失真度的还原,因为5次以上的高次谐波丢失。
众所周知钢琴的波形类似方波,所以在普通CD还原钢琴是最差的。

奈奎斯特定律害人不浅哪!


但是,请注意傅立叶展开定理告诉我们,任何波形都可以展开为一系列频率不同的正弦和余弦函数的和。

傅立叶展开是这样说的。对于任意的波形f(t),它等于这些正弦和余弦函数的和:
[upload=jpg]Upload/2006321050927700.jpg[/upload]
其中每一项的振幅an和bn是这样计算的:
[upload=jpg]Upload/20063210521016386.jpg[/upload]

[upload=jpg]Upload/20063210532960093.jpg[/upload]

比如说周期为2 pi的方波可以分解为这样的一系列正弦函数的和:
[upload=jpg]Upload/2006321047662986.jpg[/upload]

CD格式不能记录很高频率方波并不会影响听感。为何?——因为大家都承认LP声音也动听真实吧?——但是一般LP的频响不会超过25kHz,这里25kHz指的也是正弦波形。LP上面是刻不了方波的——LP刻盘机、LP母盘材料等等环节的电路、材料的物理特性就充当了天然的滤波器,把信号高频都滤掉了。

因此假如我们输入给LP刻盘机一个方波的信号,我们就会很惊奇的发现,不管我们怎么设置刻盘机,刻针最后刻出来的波形都是像几个正弦波加起来的那种圆滑的形状——因为电路、刻针的物理极限是一道不可逾越的鸿沟,这种困难无法以我们的意志去完全解决。

所以说能不能重播高频率的方波并不会影响听感——如果会影响的话,那么LP上一早就能体验出来了。

并且人耳的构造也决定了我们无法完全感知整个高频方波——比如说一个频率为7kHz的方波,它可以分解为频率为7k、21k、35k、49k。。。。(5的奇数次倍频)的正弦波的和,那么假如让我们用人耳去聆听这个方波的话,我们人耳听到的感觉是完全和7k的正弦波一模一样的(人耳的构造也是一个天然的滤波器,它会把任何高于20k的正弦波信号滤掉)

所以说方波的重播并不会影响听感——假如要影响的话,LP也早就被影响了。

噢,还有另外:Myquist取样定理的条件里没有规定信号一定是单一的正弦波,可以是任意的波形,只要你保证这个任意的波形所含有的各个正弦波倍频的最高频率的那一个,小于取样频率的1/2即可。

电声学里说的频宽,指的都是按傅立叶展开后,正余弦函数最低和最高的频率。比如说一个MM唱头说频响是10 - 25kHz,那生产厂家指的是这个唱头可以重播最低10Hz、最高25kHz的正弦波信号,而不是25kHz的方波信号。
最后编辑felixcat
分享 转发
TOP
2#

低温 在 2006-3-21 9:02:31 发表的内容
是的,须要一个人耳对方波频响的测试,至少到12KHz人耳是可分辨方波与正弦波的,那末要求的正弦波带宽至少要36KHz(3次谐波)。


对于这个“测试”,我持怀疑态度。因为只要拥有适当的设备,我们可以自己动手听一听。

我自己用的IBM小黑的声卡可支持最高96k/32bit的采样格式和重播格式,因此我可以用Cool Edit来生成一个12kHz的方波,和一个12kHz的正弦波。当然,由于在我的机器上Cool Edit只允许我用最高192k的采样率来生成方波(这个采样率意味着频响上限达到96kHz),因此这个“方波”实际上不完全是方的,而是缺少了某些超极高频的谐波。不过用来进行测试还是可以的。

下面这是我生成的12kHz的“方波”(由取样率所限,不能达到绝对“方”):
[upload=jpg]Upload/20063211201996806.jpg[/upload]

这是我生成的12kHz的正弦波:
[upload=jpg]Upload/20063211213576900.jpg[/upload]

在重播的时候由于声卡只支持最高96k取样率的输出,所以192k取样率下的方波可能会转化为96k的取样率输出,但我觉得这不太影响最后结果,因为96k取样率下的这个方波看上去还是挺“方”的。

我接上Sennheiser HD580耳机来聆听这两个波形,不管我如何竖起耳朵,如何把音量调小或者增大,我自己真的听不出这两个波形在听觉上有什么不同。(当然,可以质疑我的器材,甚至还可以质疑我的听觉)

所以我觉得:假如现实中有一个方波的声波脉冲,还有一个正弦波声波,不排除我们的人耳、人体或许会通过各种感觉来体验出不同。但是假如说在包括音源、放大器、扬声器(或者耳机)的音响系统里,音源是否能产生方波那是并没有关系的——到了扬声器输出这个环节,高频的方波都被各级电路滤成是正弦波了——我刚才做的这个小小的测试能在某种程度上说明这个问题。
TOP
3#

另外,对于有的看法认为:人可以感受高于20kHz的声波。我对这个看法持一定的怀疑态度——至少我认为:假如靠人耳本身和人耳附近的头骨骨骼,我们无法感知超过22kHz的声波。

因为我可以通过测试来测试自己。

首先在我自己的电脑的配置下,用Cool Edit软件可以播放出最高达48kHz的声波;另外,用来聆听的Sennheiser HD580耳机,根据厂家给出的数据,在正负3分贝的前提下,该耳机的频响最高可达30kHz。

我首先生成一个21kHz的正弦波信号,戴上耳机,在音量中等的情况下,有若隐若现的声感;把音量调到最大,耳朵可以明显听到有高压、尖的感觉的让人不适的声音。因此可判定我自己的耳朵可感受具有一定强度的21kHz的声波。

接着我生成一个22kHz的正弦波信号,在电脑音量最大的情况下耳朵仍能感受到那种尖刺的不适感。

再接着,我生成一个23kHz的正弦波信号,在音量最大的情况下耳朵只能感受到隐隐约约的、我不太肯定是否有的压迫感觉。考虑到对于这个信号我的感觉不太肯定,所以我不敢肯定我的耳朵自身能够感受23kHz的信号。

后来,我生成一个25kHz的正弦波信号,不管音量调多大,我耳朵什么都没感受到(同时声卡的功率表显示此时声卡正输出强大的能量给耳机)。

因此对于我自己的耳朵本身来讲(不包括我的人体其他部位皮肤的感觉),最多只能感受到有一定强度的22kHz的声波。

当然,或许我自己的设备会影响我对自己的测试,因此我上面所说的现象可能什么都说明不了。但是我对一些涉及人能够感受超高频的说法不能完全相信,比如说“至少到12KHz人耳是可分辨方波与正弦波”——这意味着人耳可以分辨出36kHz的正弦波,这个说法我实在是太怀疑了(我自己听22kHz的正弦波都要音量这么大才有感觉;而到了25kHz我甚至什么都没听到)。
最后编辑felixcat
TOP
4#

低温 在 2006-3-21 13:59:49 发表的内容
可以肯定在fm点只能是正弦波,小于fm的用正弦波拟合,如果俺没记错的话。
就这个问题俺十多年前和外教请教过,同样无法解释。比如同频率的相位跳动,如果这个频率=fm,采样后是会得到2fm的信号点还是什么结果?但百分百事还原肯定做不到的。


虽然这里我不太清楚您的具体意思,但是我猜测是说信号开始时 Y = Sin(X),但突然间相位跳动变为 Y = Sin(X + P),您说这种情况下用该频率对应的Nyquist频率取样,不能还原这种有相位跳动的正弦波是吧。

那么请看下图:
[upload=jpg]Upload/200632114475492593.jpg[/upload]

信号开始是y = Sin(x),到了某一点就相位跳成是y = Sin(x -  pi/2)。这里为了叙述方便,不妨把正弦函数的频率说成是fm。那么,虽然前半段和后半段曲线分别单独来看都是频率为fm的正弦波,并且很肯定假如单单对前半段,或者对后半段曲线,都以2fm的频率来取样的话,那都能分别还原出各自的曲线。

不过假如现在把两段曲线前后连接看作一个最终的信号来看的话,那么我们肯定不能用2fm的取样频率来取样——因为整段信号里所含有的最高频率已经远远超过fm了——为何?请看上图红圈圈住的那一段信号,信号在那个“尖点”处虽然是连续,但是没有导数——因此用傅立叶展开的话我们会发现在红圈圈住的这一处会出现很多频率高于fm的正弦和余弦项——这就意味着信号在这一段里面含有很多频率超过fm的谐波,因此假如我们仍然用2fm来对整段信号来取样,那这就明显不满足Nyquist定理的前提条件,那当然就无法100%还原了。

总之:两段频率相同(都是fm),相位不同的正弦信号前后相接,得出的新信号里面所含有的最高频率大于fm

因此Nyquist取样定理肯定是没有错的。只是我们常常忽略了它的前提条件。

希望我上述描述的问题是您心目中所想的那一个。假如不是的话就权当我自说自话一番好了。
最后编辑felixcat
TOP
5#

低温 在 2006-3-21 13:45:39 发表的内容
从声学来讲,失去的上升沿损失的的是声音的特质。人们辨别一种乐器或人声靠的是辨别波形的上升沿。早期的电子琴是用正弦波来拟合各种乐器,出来的声音全是一种圆呼呼的貌似神离的东西,七十年代过来的人都会记得那种声音,当然那种振荡器的基频还达不到44.1KHz,这种现象反映的是一种声学原理。


失去“上升沿”那是因为失去了超高频的正弦波谐波所导致的。假如所失去的这一系列正弦波属于人耳可感知的范围,那当然就会影响听感,您所举的早期电子琴的例子,或许就是典型。

但是,假如所丢失的正弦波弦波远超过人耳所能感受的范围呢?——没错,“人们辨别一种乐器或人声靠的是辨别波形的上升沿”,但是或许要加一个前提:那个“沿”上升的速度(也就是说“陡峭”程度)不能超过某个值——因为越“陡峭”,可能就意味着该声波频率越高。

举个例子:比如说来一个50kHz的正弦波,按时间 - 振幅坐标来绘图的话,可以发现这个正弦波看上去很尖,几乎一下子就从振幅为0升为1——但是为何人耳却听不到、感受不到这个声波呢?——但明显这里声波的确是“上升”啊——关键在于,这个声波上升得太快了,从0升为1所花的时间远小于人耳可处理的最短时间,所以人耳就根本没意识到外来声波有过这样的变化。

所以说,只要“上升”的速度快过某一个值(也就是说对应了人的听力频率上限),超过了人耳的最短感受反映时间,那么它上升得多快、多陡峭、甚至是垂直上升的方波——都是没区别了——人耳已经无法区别它们有什么不同了。

以上叙述可能对于听觉生理领域来讲很不专业,但有兴趣的朋友不妨去看一看关于人耳听觉原理的介绍,就会发现:对于“上升”太“陡峭”、太“快”的声波,的确是不能引起人耳的任何反应的。
TOP
发新话题 回复该主题