istftGydF4y2Ba

短时傅里叶反变换GydF4y2Ba

描述GydF4y2Ba

XGydF4y2Ba= istft (GydF4y2BaS.GydF4y2Ba)GydF4y2Ba的短时傅里叶反变换(ISTFT)GydF4y2BaS.GydF4y2Ba.GydF4y2Ba

例子GydF4y2Ba

XGydF4y2Ba= istft (GydF4y2BaS.GydF4y2Ba那GydF4y2BaFS.GydF4y2Ba)GydF4y2Ba返回的ISTFTGydF4y2BaS.GydF4y2Ba使用采样率GydF4y2BaFS.GydF4y2Ba.GydF4y2Ba

XGydF4y2Ba= istft (GydF4y2BaS.GydF4y2Ba那GydF4y2BatsGydF4y2Ba)GydF4y2Ba使用采样时间返回ISTFTGydF4y2BatsGydF4y2Ba.GydF4y2Ba

例子GydF4y2Ba

XGydF4y2Ba= istft (GydF4y2Ba___GydF4y2Ba那GydF4y2Ba名称,价值GydF4y2Ba)GydF4y2Ba使用名称值对参数指定其他选项。选项包括FFT窗口长度和重叠样本的数量。这些参数可以添加到任何先前的输入语法中。GydF4y2Ba

例子GydF4y2Ba

[GydF4y2BaXGydF4y2Ba那GydF4y2BaT.GydF4y2Ba] = istft(GydF4y2Ba___GydF4y2Ba)GydF4y2Ba返回评估ISTFT的信号时间。GydF4y2Ba

例子GydF4y2Ba

全部折叠GydF4y2Ba

产生一个三通道信号组成三个不同的啁啾在1 khZ采样1秒。GydF4y2Ba

  1. 第一通道由一个瞬时频率为100Hz的凹二次啁啾组成GydF4y2Bat =GydF4y2Ba0和过300hz在GydF4y2Bat =GydF4y2Ba1秒。它具有等于45度的初始相位。GydF4y2Ba

  2. 第二通道由瞬时频率为200Hz的凸二次啁啾组成GydF4y2Bat =GydF4y2Ba0和过600赫兹在GydF4y2Bat =GydF4y2Ba1秒。GydF4y2Ba

  3. 第三通道由具有瞬时频率300Hz的对数啁啾组成GydF4y2Bat =GydF4y2Ba0和过500hz在GydF4y2Bat =GydF4y2Ba1秒。GydF4y2Ba

使用长度为256的周期汉明窗和15个样本的重叠长度计算多通道信号的STFT。GydF4y2Ba

fs = 1 e3;t = 0:1 / fs: 1 - 1 / f;x =[唧唧声(t, 100, 1300,GydF4y2Ba'二次'GydF4y2Ba45岁的GydF4y2Ba'凹'GydF4y2Ba);Chirp(T,200,1,600,GydF4y2Ba'二次'GydF4y2Ba[],GydF4y2Ba'凸'GydF4y2Ba);唧唧声(t, 300, 1500,GydF4y2Ba“对数”GydF4y2Ba)];F (S, T) = stft (x, fs,GydF4y2Ba“窗口”GydF4y2Ba256年,汉明(GydF4y2Ba'定期'GydF4y2Ba),GydF4y2Ba“OverlapLength”GydF4y2Ba15);GydF4y2Ba

绘制第一和第二通道的原始和重建版本。GydF4y2Ba

(第九,ti) = istft(年代,fs,GydF4y2Ba“窗口”GydF4y2Ba256年,汉明(GydF4y2Ba'定期'GydF4y2Ba),GydF4y2Ba“OverlapLength”GydF4y2Ba15);情节(t) x(: 1)”,GydF4y2Ba“线宽”GydF4y2Ba,1.5)持有GydF4y2Ba在GydF4y2Ba情节(ti,第九(:1)”,GydF4y2Ba“r——”GydF4y2Ba)举行GydF4y2Ba从GydF4y2Ba传奇(GydF4y2Ba'原始频道1'GydF4y2Ba那GydF4y2Ba“重建通道1”GydF4y2Ba)GydF4y2Ba

绘图(t,x(:,2)',GydF4y2Ba“线宽”GydF4y2Ba,1.5)持有GydF4y2Ba在GydF4y2Ba绘图(TI,IX(:,2)',GydF4y2Ba“r——”GydF4y2Ba)传说(GydF4y2Ba'原始频道2'GydF4y2Ba那GydF4y2Ba《重建通道2》GydF4y2Ba)GydF4y2Ba

相位声码器通过将音频转换到频域来执行时间拉伸和音调缩放。此图显示了相位声码器实现中涉及的操作。GydF4y2Ba

相位声码器通过跳尺寸的分析窗口获取信号的STFTGydF4y2Ba R.GydF4y2Ba 1GydF4y2Ba 然后用单跳大小的合成窗口进行ISTFTGydF4y2Ba R.GydF4y2Ba 2GydF4y2Ba .因此,声码器利用了WOLA方法。要时间拉伸信号,分析窗口使用比合成更大的重叠样本。结果,输出中的样本更多的样本比输入端(GydF4y2Ba NGydF4y2Ba S.GydF4y2Ba 那GydF4y2Ba 出GydF4y2Ba >GydF4y2Ba NGydF4y2Ba S.GydF4y2Ba 那GydF4y2Ba 在GydF4y2Ba ),但频率内容保持不变。现在,您可以通过以更高的采样率播放来播放此信号,从而产生具有原始持续时间但更高音高的信号。GydF4y2Ba

加载一个音频文件,其中包含以8192hz采样的汉德尔的“哈利路亚合唱”片段。GydF4y2Ba

加载GydF4y2Ba汉德尔GydF4y2Ba

设计一个长度512的根Hann窗口。将分析重叠长度为192,合成重叠长度为166。GydF4y2Ba

wlen = 512;赢得=√损害wlen,GydF4y2Ba'定期'GydF4y2Ba));noverlapA = 192;noverlapS = 166;GydF4y2Ba

通过使用重叠192的分析窗口和重叠166的合成窗口来实现相位声码器。GydF4y2Ba

s = stft(y,fs,GydF4y2Ba“窗口”GydF4y2Ba,赢了,GydF4y2Ba“OverlapLength”GydF4y2Ba,Noverlapa);IY = ISTFT(S,FS,GydF4y2Ba“窗口”GydF4y2Ba,赢了,GydF4y2Ba“OverlapLength”GydF4y2Ba, noverlapS);GydF4y2Ba%To hear, type soundsc(w,Fs), pause(10), soundsc(iw,Fs);GydF4y2Ba

如果分析和合成窗口是相同的,但是重叠长度发生了变化,那么你就需要调整额外的增益/损失。这是实现相位声码器的常用方法。GydF4y2Ba

计算跳数并使用它来调整重建信号的增益。还使用跳数计算间距移位数据的频率。GydF4y2Ba

hopRatio = (wlen-noverlapS) / (wlen-noverlapA);iyg = iy * hopRatio;Fp = f * hopRatio;GydF4y2Ba%听到,键入soundsc(iwg,fs),暂停(15),soundsc(iwg,fp);GydF4y2Ba

绘制原始信号和固定增益的时间拉伸信号。GydF4y2Ba

绘图((0:长度(IYG)-1)/ fs,Iyg,(0:长度(y)-1)/ fs,y)xlabel(GydF4y2Ba“时间(s)”GydF4y2Ba)XLIM([0(长度(IYG)-1)/ fs])传奇(GydF4y2Ba'具有固定增益的时间拉伸信号'GydF4y2Ba那GydF4y2Ba'原始信号'GydF4y2Ba那GydF4y2Ba“位置”GydF4y2Ba那GydF4y2Ba“最佳”GydF4y2Ba)GydF4y2Ba

比较同一绘图上的时间拉伸信号和音高偏移信号。GydF4y2Ba

绘图((0:长度(IY)-1)/ FS,IY,(0:长度(IY)-1)/ fp,iy)xlabel(GydF4y2Ba“时间(s)”GydF4y2Ba)XLIM([0(长度(IYG)-1)/ fs])传奇(GydF4y2Ba'时间拉伸信号'GydF4y2Ba那GydF4y2Ba“球场转移信号”GydF4y2Ba那GydF4y2Ba“位置”GydF4y2Ba那GydF4y2Ba“最佳”GydF4y2Ba)GydF4y2Ba

为了更好地理解音调移位数据的效果,考虑以下频率的正弦曲线GydF4y2BaFS.GydF4y2Ba超过2秒。GydF4y2Ba

t = 0:1 / Fs: 2;x =罪(2 *π* 10 * t);GydF4y2Ba

计算短时傅里叶变换和具有重叠长度192和166的逆短时傅里叶变换。GydF4y2Ba

sx = stft(x,fs,GydF4y2Ba“窗口”GydF4y2Ba,赢了,GydF4y2Ba“OverlapLength”GydF4y2Ba,Noverlapa);ix = istft(sx,fs,GydF4y2Ba“窗口”GydF4y2Ba,赢了,GydF4y2Ba“OverlapLength”GydF4y2Ba, noverlapS);GydF4y2Ba

在一张图上画出原始信号,在另一张图上画出时间延长和音调改变的信号。GydF4y2Ba

次要情节(2,1,1)情节((0:长度(ix) 1) / Fs,第九,GydF4y2Ba“线宽”GydF4y2Ba,2)xlabel(GydF4y2Ba“时间(s)”GydF4y2Ba) ylabel (GydF4y2Ba'信号幅度'GydF4y2Ba)XLIM([0(长度(ix)-1)/ fs])传奇(GydF4y2Ba'时间拉伸信号'GydF4y2Ba次要情节(2,1,2)GydF4y2Ba在GydF4y2Ba情节((0:长度(x) 1) / Fs, x)图((0:长度(ix) 1) / Fp,第九,GydF4y2Ba' - 'GydF4y2Ba那GydF4y2Ba“线宽”GydF4y2Ba2)传说(GydF4y2Ba'原始信号'GydF4y2Ba那GydF4y2Ba“球场转移信号”GydF4y2Ba那GydF4y2Ba“位置”GydF4y2Ba那GydF4y2Ba“最佳”GydF4y2Ba)举行GydF4y2Ba从GydF4y2BaXlabel(GydF4y2Ba“时间(s)”GydF4y2Ba) ylabel (GydF4y2Ba'信号幅度'GydF4y2Ba) xlim([0(长度(ix) 1) / Fs])GydF4y2Ba

生成频率1 kHz的复杂正弦曲线和持续时间2秒。GydF4y2Ba

fs = 1 e3;TS = 0:1 / FS:2-1 / FS;x = exp(2j * pi * 100 * cos(2 * pi * 2 * ts));GydF4y2Ba

设计一个长度100的周期Hann窗口,并将重叠样本的数量设置为75.检查窗口并重叠可乐合规性。GydF4y2Ba

nwin = 100;赢得=损害(100GydF4y2Ba'定期'GydF4y2Ba);noverlap = 75;tf = iscola(赢,noverlap)GydF4y2Ba
tf =GydF4y2Ba逻辑GydF4y2Ba1GydF4y2Ba

零焊接信号以去除边缘效果。为避免截断,请使用零填充输入信号GydF4y2Ba (GydF4y2Ba 长度GydF4y2Ba (GydF4y2Ba xZeroGydF4y2Ba )GydF4y2Ba -GydF4y2Ba noverlapGydF4y2Ba )GydF4y2Ba (GydF4y2Ba NWIN.GydF4y2Ba -GydF4y2Ba noverlapGydF4y2Ba )GydF4y2Ba 是一个整数。将FFT长度设置为128.计算复杂信号的短时傅立叶变换。GydF4y2Ba

xZero = [zeros(1,nwin) x zeros(1,nwin)];fftlen = 128;s = stft (xZero fs,GydF4y2Ba“窗口”GydF4y2Ba,赢了,GydF4y2Ba“OverlapLength”GydF4y2Banoverlap,GydF4y2Ba“FFTLength”GydF4y2Ba, fftlen);GydF4y2Ba

计算逆短时傅里叶变换并拆下零以获得完美的重建。GydF4y2Ba

(是,ti) = istft(年代,fs,GydF4y2Ba“窗口”GydF4y2Ba,赢了,GydF4y2Ba“OverlapLength”GydF4y2Banoverlap,GydF4y2Ba“FFTLength”GydF4y2Ba, fftlen);(1: nwin) = [];(end-nwin + 1:结束)= [];ti = ti (1: end-2 * nwin);GydF4y2Ba

绘制原始和重建信号的实际部分。信号的虚部也是完美的。GydF4y2Ba

绘图(TS,Real(x))持有GydF4y2Ba在GydF4y2Ba情节(ti,真正的(是),GydF4y2Ba' - 'GydF4y2Ba) xlim([0 0.5])GydF4y2Ba“时间(s)”GydF4y2Ba) ylabel (GydF4y2Ba'幅度(v)'GydF4y2Ba)传说(GydF4y2Ba'原始信号'GydF4y2Ba那GydF4y2Ba重构信号的GydF4y2Ba)举行GydF4y2Ba从GydF4y2Ba

生成一个正弦信号,采样频率为2 kHz,持续1秒。GydF4y2Ba

fs = 2 e3;t = 0:1 / fs: 1 - 1 / f;x = 5 * sin(2 *π* 10 * t);GydF4y2Ba

设计长度120的周期性汉明窗。检查窗口的可乐约束,重叠为80个样本。窗口重叠组合是可乐兼容的。GydF4y2Ba

Win =汉明(120,GydF4y2Ba'定期'GydF4y2Ba);noverlap = 80;tf = iscola(赢,noverlap)GydF4y2Ba
tf =GydF4y2Ba逻辑GydF4y2Ba1GydF4y2Ba

将FFT长度设置为512.计算短时傅里叶变换。GydF4y2Ba

FFTLEN = 512;s = stft(x,fs,GydF4y2Ba“窗口”GydF4y2Ba,赢了,GydF4y2Ba“OverlapLength”GydF4y2Banoverlap,GydF4y2Ba“FFTLength”GydF4y2Ba, fftlen);GydF4y2Ba

计算逆短时傅里叶变换。GydF4y2Ba

[x,t] = istft(s,fs,GydF4y2Ba“窗口”GydF4y2Ba,赢了,GydF4y2Ba“OverlapLength”GydF4y2Banoverlap,GydF4y2Ba“FFTLength”GydF4y2Ba,fftlen,GydF4y2Ba“方法”GydF4y2Ba那GydF4y2Ba“ola”GydF4y2Ba那GydF4y2Ba“ConjugateSymmetric”GydF4y2Ba,真正的);GydF4y2Ba

绘制原始和重建的信号。GydF4y2Ba

绘图(t,x,GydF4y2Ba“b”GydF4y2Ba)举行GydF4y2Ba在GydF4y2Ba情节(T X,GydF4y2Ba“r”GydF4y2Ba)包含(GydF4y2Ba“时间(s)”GydF4y2Ba) ylabel (GydF4y2Ba'幅度(v)'GydF4y2Ba)标题(GydF4y2Ba'原始和重建信号'GydF4y2Ba)传说(GydF4y2Ba'原始信号'GydF4y2Ba那GydF4y2Ba重构信号的GydF4y2Ba)举行GydF4y2Ba从GydF4y2Ba

输入参数GydF4y2Ba

全部折叠GydF4y2Ba

短时间傅里叶变换,指定为矩阵或三维数组。对于单通道信号,请指定GydF4y2BaS.GydF4y2Ba作为矩阵随着时间的推移,跨越列的跨度和频率越来越低于行。对于多通道信号,请指定GydF4y2BaS.GydF4y2Ba为三维阵列,其第三维与通道相对应。得到频率和时间向量为的输出GydF4y2BastftGydF4y2Ba.GydF4y2Ba

笔记GydF4y2Ba

如果你倒了GydF4y2BaS.GydF4y2Ba使用GydF4y2BaistftGydF4y2Ba希望结果和GydF4y2BaXGydF4y2Ba, 的价值GydF4y2Ba长度(长度(x) -noverlap) /((窗口)-noverlap)GydF4y2Ba必须是整数。GydF4y2Ba

数据类型:GydF4y2Ba双GydF4y2Ba|GydF4y2Ba单GydF4y2Ba
复数支持:金宝appGydF4y2Ba是的GydF4y2Ba

以赫兹为单位的采样率,指定为一个正标量。GydF4y2Ba

数据类型:GydF4y2Ba双GydF4y2Ba|GydF4y2Ba单GydF4y2Ba

采样时间,指定为aGydF4y2Ba期间GydF4y2Ba标量。GydF4y2Ba

例子:GydF4y2Ba秒(1)GydF4y2Ba是一个GydF4y2Ba期间GydF4y2Ba表示连续信号采样之间1秒时间差的标量。GydF4y2Ba

数据类型:GydF4y2Ba期间GydF4y2Ba

名称-值对的观点GydF4y2Ba

指定可选的逗号分离对GydF4y2Ba名称,价值GydF4y2Ba论点。GydF4y2Ba的名字GydF4y2Ba是参数名称和GydF4y2Ba价值GydF4y2Ba为对应值。GydF4y2Ba的名字GydF4y2Ba必须出现在引号内。可以以任意顺序指定多个名称和值对参数GydF4y2Baname1,value1,...,namen,valuenGydF4y2Ba.GydF4y2Ba

例子:GydF4y2Baistft(年代,“窗口”,赢得“OverlapLength”,50岁,FFTLength, 128)GydF4y2BaWindows使用窗口的数据GydF4y2Ba赢GydF4y2Ba,相邻段之间有50个样本重叠,128点FFT。GydF4y2Ba

窗口函数,指定为逗号分隔对组成GydF4y2Ba“窗口”GydF4y2Ba和一个向量。如果不指定窗口或将其指定为空,函数将使用长度为128的周期性Hann窗口。的长度GydF4y2Ba窗口GydF4y2Ba必须大于或等于2。GydF4y2Ba

有关可用窗口的列表,请参见GydF4y2Ba窗户GydF4y2Ba.GydF4y2Ba

例子:GydF4y2Ba损害(N + 1)GydF4y2Ba和GydF4y2Ba(1-cos(2 * pi *(0:n)'/ n))/ 2GydF4y2Ba两者都指定了长度的HANN窗口GydF4y2BaNGydF4y2Ba+ 1。GydF4y2Ba

数据类型:GydF4y2Ba双GydF4y2Ba|GydF4y2Ba单GydF4y2Ba

重叠样本的数量,指定为包括的逗号分隔对GydF4y2BaovertaplenthGydF4y2Ba一个正整数小于GydF4y2Ba窗口GydF4y2Ba.如果您省略GydF4y2Ba“OverlapLength”GydF4y2Ba或者将其指定为空,则将其设置为小于窗口长度75%的最大整数,即默认Hann窗口的96个样本。GydF4y2Ba

数据类型:GydF4y2Ba双GydF4y2Ba|GydF4y2Ba单GydF4y2Ba

DFT点的数目,指定为逗号分隔对,由GydF4y2BaFFTLengthGydF4y2Ba一个正整数。为了实现完美的时域重构,您应该设置GydF4y2BaFFTLengthGydF4y2Ba匹配使用的GydF4y2BastftGydF4y2Ba.GydF4y2Ba

数据类型:GydF4y2Ba双GydF4y2Ba|GydF4y2Ba单GydF4y2Ba

重叠添加方法,指定为逗号分隔的对,由GydF4y2Ba方法GydF4y2Ba和以下之一:GydF4y2Ba

  • “呼啦”GydF4y2Ba- 加权重叠 - 添加GydF4y2Ba

  • “ola”GydF4y2Ba- 重叠添加GydF4y2Ba

原始信号的共轭对称,指定为逗号分隔对组成GydF4y2BaConjugateSymmetricGydF4y2Ba和GydF4y2Ba真正的GydF4y2Ba或GydF4y2Ba错误的GydF4y2Ba.如果该选项设置为GydF4y2Ba真正的GydF4y2Ba那GydF4y2BaistftGydF4y2Ba假设输入GydF4y2BaS.GydF4y2Ba是对称的,否则不作对称假设。当GydF4y2BaS.GydF4y2Ba由于圆截止错误,将名称值对设置为不完全相同对称GydF4y2Ba真正的GydF4y2Ba确保STFT被视为缀合物对称。如果GydF4y2BaS.GydF4y2Ba为共轭对称,则逆变换计算速度快,且输出为实数。GydF4y2Ba

频率范围,指定为逗号分隔对组成GydF4y2Ba为中心的GydF4y2Ba和GydF4y2Ba真正的GydF4y2Ba或GydF4y2Ba错误的GydF4y2Ba.如果该选项设置为GydF4y2Ba真正的GydF4y2Ba,然后将频谱居中,并在间隔-π上计算到π。否则,频谱由间隔0到2π计算。GydF4y2Ba

输入时间维度,指定为逗号分隔对组成GydF4y2BaInputTimeDimensionGydF4y2Ba和GydF4y2BaacrosscolumnsGydF4y2Ba或GydF4y2Ba下降GydF4y2Ba.如果此值设置为GydF4y2Ba下降GydF4y2Ba那GydF4y2BaistftGydF4y2Ba假设时间维度GydF4y2BaS.GydF4y2Ba沿着行,频率跨越列。如果此值设置为GydF4y2BaacrosscolumnsGydF4y2Ba,函数GydF4y2BaistftGydF4y2Ba假设时间维度GydF4y2BaS.GydF4y2Ba跨越列,频率尺寸下降了。GydF4y2Ba

输出参数GydF4y2Ba

全部折叠GydF4y2Ba

在时域中重建的信号,以向量或矩阵的形式返回。GydF4y2Ba

数据类型:GydF4y2Ba单GydF4y2Ba|GydF4y2Ba双GydF4y2Ba

时间瞬间,返回为矢量。GydF4y2Ba

  • 如果抽样率GydF4y2BaFS.GydF4y2Ba提供,然后GydF4y2BaT.GydF4y2Ba包含以秒为单位的时间值。GydF4y2Ba

  • 如果一个时间GydF4y2BatsGydF4y2Ba提供,然后GydF4y2BaT.GydF4y2Ba具有与输入持续时间相同的时间格式,并且是一个持续时间数组。GydF4y2Ba

  • 如果没有提供时间信息,那么GydF4y2BaT.GydF4y2Ba包含样品数量。GydF4y2Ba

数据类型:GydF4y2Ba双GydF4y2Ba|GydF4y2Ba单GydF4y2Ba

更多关于GydF4y2Ba

全部折叠GydF4y2Ba

逆短时傅里叶变换GydF4y2Ba

通过对STFT的每个DFT向量取IFFT,并叠加反转信号来计算短时傅里叶反变换。ISTFT的计算方法如下:GydF4y2Ba

XGydF4y2Ba (GydF4y2Ba NGydF4y2Ba )GydF4y2Ba =GydF4y2Ba ∫GydF4y2Ba −GydF4y2Ba 1GydF4y2Ba /GydF4y2Ba 2GydF4y2Ba 1GydF4y2Ba /GydF4y2Ba 2GydF4y2Ba ∑GydF4y2Ba mGydF4y2Ba =GydF4y2Ba −GydF4y2Ba ∞GydF4y2Ba ∞GydF4y2Ba XGydF4y2Ba mGydF4y2Ba (GydF4y2Ba FGydF4y2Ba )GydF4y2Ba E.GydF4y2Ba jGydF4y2Ba 2GydF4y2Ba πGydF4y2Ba FGydF4y2Ba NGydF4y2Ba D.GydF4y2Ba FGydF4y2Ba =GydF4y2Ba ∑GydF4y2Ba mGydF4y2Ba =GydF4y2Ba −GydF4y2Ba ∞GydF4y2Ba ∞GydF4y2Ba ∫GydF4y2Ba −GydF4y2Ba 1GydF4y2Ba /GydF4y2Ba 2GydF4y2Ba 1GydF4y2Ba /GydF4y2Ba 2GydF4y2Ba XGydF4y2Ba mGydF4y2Ba (GydF4y2Ba FGydF4y2Ba )GydF4y2Ba E.GydF4y2Ba jGydF4y2Ba 2GydF4y2Ba πGydF4y2Ba FGydF4y2Ba NGydF4y2Ba D.GydF4y2Ba FGydF4y2Ba =GydF4y2Ba ∑GydF4y2Ba mGydF4y2Ba =GydF4y2Ba −GydF4y2Ba ∞GydF4y2Ba ∞GydF4y2Ba XGydF4y2Ba mGydF4y2Ba (GydF4y2Ba NGydF4y2Ba )GydF4y2Ba

在哪里GydF4y2Ba R.GydF4y2Ba 是连续DFT之间的跳尺寸,GydF4y2Ba XGydF4y2Ba mGydF4y2Ba 加窗数据的DFT是否以时间为中心GydF4y2Ba mGydF4y2Ba R.GydF4y2Ba 和GydF4y2Ba XGydF4y2Ba mGydF4y2Ba (GydF4y2Ba NGydF4y2Ba )GydF4y2Ba =GydF4y2Ba XGydF4y2Ba (GydF4y2Ba NGydF4y2Ba )GydF4y2Ba GGydF4y2Ba (GydF4y2Ba NGydF4y2Ba −GydF4y2Ba mGydF4y2Ba R.GydF4y2Ba )GydF4y2Ba .逆STFT是对原始信号的完美再现,只要GydF4y2Ba ∑GydF4y2Ba mGydF4y2Ba =GydF4y2Ba −GydF4y2Ba ∞GydF4y2Ba ∞GydF4y2Ba GGydF4y2Ba 一种GydF4y2Ba +GydF4y2Ba 1GydF4y2Ba (GydF4y2Ba NGydF4y2Ba −GydF4y2Ba mGydF4y2Ba R.GydF4y2Ba )GydF4y2Ba =GydF4y2Ba CGydF4y2Ba ∀GydF4y2Ba NGydF4y2Ba ∈GydF4y2Ba ℤGydF4y2Ba 那里GydF4y2Ba分析窗口GydF4y2Ba GGydF4y2Ba (GydF4y2Ba NGydF4y2Ba )GydF4y2Ba 是用来屏蔽原始信号的GydF4y2Ba CGydF4y2Ba 是一个常数。下图描述了重建原始信号的步骤。GydF4y2Ba

常数重叠-添加(COLA)约束GydF4y2Ba

为了确保成功重建非型光谱,分析窗口必须满足可乐约束。通常,如果分析窗口满足条件GydF4y2Ba ∑GydF4y2Ba mGydF4y2Ba =GydF4y2Ba −GydF4y2Ba ∞GydF4y2Ba ∞GydF4y2Ba GGydF4y2Ba 一种GydF4y2Ba +GydF4y2Ba 1GydF4y2Ba (GydF4y2Ba NGydF4y2Ba −GydF4y2Ba mGydF4y2Ba R.GydF4y2Ba )GydF4y2Ba =GydF4y2Ba CGydF4y2Ba ∀GydF4y2Ba NGydF4y2Ba ∈GydF4y2Ba ℤGydF4y2Ba ,窗户被认为是符合可乐。另外,可乐依从性可以分为弱遵从性和强遵从性。GydF4y2Ba

  • 弱可乐遵守意味着分析窗口的傅里叶变换在帧速率谐波中具有零零GydF4y2Ba

    GGydF4y2Ba (GydF4y2Ba FGydF4y2Ba K.GydF4y2Ba )GydF4y2Ba =GydF4y2Ba 0.GydF4y2Ba 那GydF4y2Ba K.GydF4y2Ba =GydF4y2Ba 1GydF4y2Ba 那GydF4y2Ba 2GydF4y2Ba 那GydF4y2Ba ......GydF4y2Ba 那GydF4y2Ba R.GydF4y2Ba −GydF4y2Ba 1GydF4y2Ba 那GydF4y2Ba FGydF4y2Ba K.GydF4y2Ba ≜GydF4y2Ba K.GydF4y2Ba R.GydF4y2Ba .GydF4y2Ba

    混叠抵消受到光谱修正的干扰。弱COLA依赖于频域的混叠抵消。因此,只要信号没有经过任何光谱修改,使用弱cola顺应窗就可以实现完美重构。GydF4y2Ba

  • 对于强大的可乐合规性,窗口的傅立叶变换必须符合帧速率的下采样,使其一致GydF4y2Ba

    GGydF4y2Ba (GydF4y2Ba FGydF4y2Ba )GydF4y2Ba =GydF4y2Ba 0.GydF4y2Ba 那GydF4y2Ba FGydF4y2Ba ≥GydF4y2Ba 1GydF4y2Ba 2GydF4y2Ba R.GydF4y2Ba .GydF4y2Ba

    该方程表明,强COLA约束不允许混叠。另外,对于强可乐顺应性,该常数的值GydF4y2Ba CGydF4y2Ba 必须等于1。一般来说,如果以任何方式修改短时谱,则首选更强的COLA顺应窗。GydF4y2Ba

你可以使用GydF4y2BaiscolaGydF4y2Ba功能检查弱可乐符合性。用于检查COLA合规性的求和数由窗口长度和跳数决定。一般来说,它是常用的GydF4y2Ba 一种GydF4y2Ba =GydF4y2Ba 1GydF4y2Ba 在GydF4y2Ba ∑GydF4y2Ba mGydF4y2Ba =GydF4y2Ba −GydF4y2Ba ∞GydF4y2Ba ∞GydF4y2Ba GGydF4y2Ba 一种GydF4y2Ba +GydF4y2Ba 1GydF4y2Ba (GydF4y2Ba NGydF4y2Ba −GydF4y2Ba mGydF4y2Ba R.GydF4y2Ba )GydF4y2Ba =GydF4y2Ba CGydF4y2Ba ∀GydF4y2Ba NGydF4y2Ba ∈GydF4y2Ba ℤGydF4y2Ba 加权重叠加法(WOLA),和GydF4y2Ba 一种GydF4y2Ba =GydF4y2Ba 0.GydF4y2Ba 交叠相加(OLA)。默认情况下,GydF4y2BaistftGydF4y2Ba通过应用a使用wola方法GydF4y2Ba综合窗口GydF4y2Ba在执行重叠添加方法之前。GydF4y2Ba

一般情况下,合成窗口与分析窗口是相同的。通过对强OLA窗口取平方根,可以构建有用的WOLA窗口。您可以对所有非负OLA窗口使用此方法。例如,根- hann窗口就是一个很好的WOLA窗口示例。GydF4y2Ba

完美的重建GydF4y2Ba

通常,计算输入信号的STFT并反转它不会导致完美的重建。如果希望ISTFT的输出尽可能地匹配原始输入信号,则信号和窗口必须满足以下条件:GydF4y2Ba

  • 输入大小-如果你反转的输出GydF4y2BastftGydF4y2Ba使用GydF4y2BaistftGydF4y2Ba希望结果和输入信号的长度相同GydF4y2BaXGydF4y2Ba, 的价值GydF4y2Ba K.GydF4y2Ba =GydF4y2Ba (GydF4y2Ba L.GydF4y2Ba E.GydF4y2Ba NGydF4y2Ba GGydF4y2Ba T.GydF4y2Ba HGydF4y2Ba (GydF4y2Ba XGydF4y2Ba )GydF4y2Ba -GydF4y2Ba NGydF4y2Ba O.GydF4y2Ba V.GydF4y2Ba E.GydF4y2Ba R.GydF4y2Ba L.GydF4y2Ba 一种GydF4y2Ba P.GydF4y2Ba )GydF4y2Ba (GydF4y2Ba L.GydF4y2Ba E.GydF4y2Ba NGydF4y2Ba GGydF4y2Ba T.GydF4y2Ba HGydF4y2Ba (GydF4y2Ba W.GydF4y2Ba 一世GydF4y2Ba NGydF4y2Ba D.GydF4y2Ba O.GydF4y2Ba W.GydF4y2Ba )GydF4y2Ba -GydF4y2Ba NGydF4y2Ba O.GydF4y2Ba V.GydF4y2Ba E.GydF4y2Ba R.GydF4y2Ba L.GydF4y2Ba 一种GydF4y2Ba P.GydF4y2Ba )GydF4y2Ba 必须是整数。GydF4y2Ba

  • 符合可乐-使用符合可乐的窗口,假设您没有修改信号的短时间傅里叶变换。GydF4y2Ba

  • 填充 - 如果输入信号的长度是这样的值GydF4y2BaK.GydF4y2Ba不是整数,在计算短时傅里叶变换之前返回信号。在反转信号后取出额外的零。GydF4y2Ba

参考GydF4y2Ba

短时间傅里叶分析/合成的加权重叠加法方法。GydF4y2Ba声学,语音和信号处理上的IEEE交易。GydF4y2Ba卷。28,第1号,1980年2月,第99-102页。GydF4y2Ba

格里芬,D. W.和J. S. Lim。“修正短时傅里叶变换的信号估计”。GydF4y2Ba声学,语音和信号处理上的IEEE交易。GydF4y2Ba第32卷第2期,1984年4月,236-243页。GydF4y2Ba

基于短时傅立叶分析的数字信号和系统的时频表示。GydF4y2Ba声学,语音和信号处理上的IEEE交易。GydF4y2Ba1980年2月第28卷第1期55-69页。GydF4y2Ba

j·O·史密斯GydF4y2Ba频谱音频信号处理GydF4y2Ba.GydF4y2Bahttps://ccrma.stanford.edu/~jos/sasp/GydF4y2Ba,在线图书,2011版,访问2018年11月。GydF4y2Ba

[5] a . D. Gotzen, N. Bernardini and D. Arfib,《相位声码器的传统实现:诀窍》,GydF4y2Ba成本G-6数字音频效应会议的诉讼程序(DAFX-00)GydF4y2Ba,维罗纳,意大利,2000年12月7日至9日。GydF4y2Ba

[6]夏普,布鲁斯。GydF4y2Ba重叠叠加处理的可逆性GydF4y2Ba.GydF4y2Bahttps://gauss256.github.io/blog/cola.html.GydF4y2Ba已于2019年7月通过。GydF4y2Ba

扩展功能GydF4y2Ba

也可以看看GydF4y2Ba

功能GydF4y2Ba

在R2019A介绍GydF4y2Ba