是否存在带限非线性失真之类的东西?


12

因此,如果仅通过在样本边界处的两个值之间切换信号来生成方波,它将产生无限次谐波,这些谐波会混叠并产生低于您的基频的音调,这是非常可听的。解决方案是带限合成,可以使用加法合成或带限步骤来产生与采样之前对理想数学方波进行带限相同的波形:

http://flic.kr/p/83JMjT

在此处输入图片说明

但是我只是意识到,如果对数字正弦波进行大的放大,然后对其进行数字削波,它将产生相同的方波形状,而不会产生吉布斯现象。因此,它还会产生混淆的失真产物,对吗?所以任何在数字域中产生外的奈奎斯特极限谐波的非线性失真将产生混叠失真产品?(编辑:我已经做了一些测试,并确认这部分是正确的。)

是否存在诸如频带限制失真之类的东西,以频带限制和采样之前模拟(在数字域中)失真的效果?如果是这样,您该怎么做?如果我搜索“带限失真”,我会找到一些有关切比雪夫多项式的参考,但我不知道如何使用它们,或者它们仅适用于正弦波或什么:

本仪器不会尝试产生限带失真。那些对带限失真感兴趣的人应该研究使用切比雪夫多项式来产生这种影响。双曲正切畸变

 

“切比雪夫多项式”-具有重要特征的整形函数,它们本质上是受频带限制的,即它们不会由于重叠等而引入杂散频谱谐波。Wave Shaper


我不确定你在问什么。如果您执行的操作导致在您正在操作的奈奎斯特区域之外生成频率内容,则无论您如何生成上述内容,都将看到混叠。您要模拟哪种模拟失真?一种方法可能是先将信号上采样到足够高的采样率,然后使用更宽的奈奎斯特区域进行信号处理。完成后,您可以将采样率降低到原始速率。
杰森·R

@JasonR:是的,对于生成方波,您可以执行真正的带限方法(例如加法合成),也可以通过先进行上采样,以朴素的方式生成方波然后进行下采样进行近似(但是仍然会有一些混叠,只是在较低的级别)。同样,您可以通过先进行上采样来近似估计失真,但是有没有一种方法可以生成零失真的失真,类似于方波生成的加法合成方法?
endlith 2012年

@JasonR:我想问的是任何非线性失真,但是像模拟模拟吉他放大器的失真电路之类的东西就是一个很好的例子。如果我理解正确的,天真地做它在数码领域会产生失真产物在模拟域扭曲时不存在的,其中一些可能在频率清楚听到比基本等降低
endolith

2
@endolith Chebyshev多项式可能是您想要的。
datageist

@datageist:您能写一个关于如何使用Chebyshev多项式的答案吗?甚至很短。
endlith 2013年

Answers:


5

应用非线性函数将始终引入谐波,并且将非线性函数与连续信号的采样版本混合会增加您在上面注意到的褶皱(高频谐波被混叠为低频)。

我可以想到几种方法:

  1. 您可以使用足够高的过采样因子来捕获额外的谐波(达到某种任意精度,例如本底噪声),
  2. 您可以使用“较软”的削波功能(例如,请参阅此处),其谐波比硬削波器更容易消失。这更易于建模,但会在低频下引入其自身的失真。
  3. 在上面建议的方法的基础上,对采样信号进行插值(例如,使用Lagrange或Chebyshev插值器),以构建连续时间模型。然后,在模拟的连续时间域中应用硬限幅器和低通。采样结果。

您可以组合(1)和(2)。第三种方法很复杂,但是可以最好地控制要接受的失真程度,并且可能会更好地扩展到非常高的保真度要求。

f(x)

f(x)=n=0[f(n)(0)n!xn]

f(x)x=g(t)g(t)xng(t)nnnn乘以信号的倍数 要完整显示图片,您需要弄清楚与每个项相关的幅度,并确定相加中有多少项是相关的。

(稍加思考,您也许也可以直接使用此形式来近似滤波后的非线性。这将需要对裁剪器进行良好的序列表示。)


要澄清的是,#3不仅是通过插值进行过采样,而且还在寻找适合采样点的连续Chebyshev多项式的参数,然后使用这些参数和多项式模型来工作?
endlith 2012年

1
我正在想象一个多项式插值器序列,每个插值器都在短样本范围内起作用。因此,随着一批新样本的出现,您将构造一个仅在定义的时间间隔内有效的插值器。您对采样信号的连续时间近似值由这些多项式组成。(我在考虑拉格朗日,但切比雪夫可能是同一回事。我不记得切比雪夫插值器是否与采样点完全匹配。否则,在插值器之间切换时会出现间断。)
Graeme,2012年

4

消除无混叠非线性失真的几种方法(按难度递增):

  1. fs2NffN+1

  2. N2N

  3. f:RRf:RNRMNM>N

  4. 基于约束的代数设计:在上一项中,您已经看到抗混叠非线性失真会导致非线性滤波器。当然,并非所有的非线性滤波器都没有混叠,但有些可能没有。因此,一个明显的问题是,对于一个标准,过滤器必须严格免于别名以及如何设计。事实证明,没有混叠的等效声明是非线性滤波器与子样本转换转换。因此,如果先翻译然后过滤,或者先过滤然后翻译,您必须确保它不会有所不同。这种情况导致非常严格的设计约束用于非线性滤波器,但取决于您如何实现信号转换。例如,理想的平移对于非线性滤波器将需要无限多个系数。因此,您必须将信号转换近似为有限阶,以获得有限的非线性滤波器。无别名会随您使用的近似值而缩放,但是您可以很好地控制它。在研究了这种方法的数学原理之后,您可以将任何(不仅仅是平滑的)非线性传递函数设计为非线性滤波器形式的近乎理想的数字模型。我可能无法在此处绘制细节,但也许您可以从此描述中找到一些启发。


y[t]=x[t]k

或者,另一个(可能是相关的)问题-如果使用您提到的局部有限方法,您将获得从截断幂级数到截断幂级数的映射。然后,当您尝试低通截断的幂级数时,通常将其与sinc函数卷积在一起,结果得到任何简单的表达吗?可以再次将结果表示为截短的幂级数吗?如果是,则它看起来像什么?
迈克·巴塔格利亚

1
@MikeBattaglia,也许您可​​以创建一个新问题,以便在那里我给出完整的答案。要回答第二个问题,您不使用SINC内核,而在最简单的情况下使用Boxcar内核。高阶内核确实可以工作,但是为了获得分析结果,您必须将自己局限于某些内核。
Jazzmaniac '18年

谢谢-在这里为过滤器设计问题创建了一个新问题:dsp.stackexchange.com/q/51533/18276
Mike Battaglia,

2

Tn(x)=cos(narccos(x)).

Tn(x)

(1)Tn(cos(kx))=cos(narccos(cos(kx)))=cos(nkx).

多项式本身可以使用以下递归关系轻松生成:

T0(x)=1T1(x)=xTn(x)=2xTn1(x)Tn2(x).

以下是前几个:

T0(x)=1T1(x)=xT2(x)=2x(x1)=2x21T3(x)=2x(2x21)x=4x33xT4(x)=2x(4x33x)(2x21)=8x48x2+1

(1)T2cos(x)

2cos2(x)1=2(eix+eix2)21=24(ei2x+2eixeix+ei2x)1=(ei2x+ei2x2)+221=cos(2x).

通过计算切比雪夫系列

f(x)=n=0anTn(x)

nf(x)


谢谢!对于单个正弦波以外的波形,会发生什么?带宽互调与否?
endlith 2013年

1
xn

1

@ robert-bristow-johnson 在comp.dsp上非常清楚地解释了这一点

您必须在一定程度上进行过采样。如果将(无内存,我假设)非线性表示为有限阶多项式(近似于您尝试实现的曲线),则多项式的阶数与所需的过采样系数相同,不会出现别名。然后是低通滤波器(以该过采样率),以消除所有高于原始奈奎斯特频率的频率分量,然后进行下采样,就不会出现混叠。

换句话说,如果您的非线性是多项式,则由失真产生的最高频率将是信号中的最高频率乘以多项式的N阶。(多项式非线性将信号本身乘以N倍,因此其频谱会卷积其自身并以相同的比率扩展。)

因此,您便知道了最大频率(无论是应用的Nyquist还是某个下限),并且知道了多项式的阶数,因此您可以进行充分的采样以防止混叠,失真,然后进行低通滤波器和降采样。

实际上,只要在下采样之前要去除的频段中包含混叠,就可以通过发生一些混叠来降低过采样率:

另一个小技巧是,您不必担心会折叠到LPF的区域的别名。因此5阶多项式只需要具有3的过采样率即可。那些前2个谐波可能会混叠,但不会回到基带中。下采样时,您可以滤除那些混叠谐波。所以我认为硬性规定是

过采样率=(多项式阶数+ 1)/ 2


2
NN+12fs

@robert我在您评论时看到并添加了该部分。如果您将其重写为您自己的答案,我将删除它并接受您的答案
endolith

1
噢亲爱的。打扮一个好的答案需要工作。
罗伯特·布里斯托

@ robertbristow-johnson好吧,如果您需要它们,那么虚构的互联网点就是您的了
endolith 2016年
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.