主要内容gydF4y2Ba

このペジの翻訳は最新ではありません。ここをクリックして,英語の最新版を参照してください。gydF4y2Ba

istftgydF4y2Ba

逆短時間フリエ変換gydF4y2Ba

説明gydF4y2Ba

xgydF4y2Ba= istft (gydF4y2Ba年代gydF4y2Ba)gydF4y2BaはgydF4y2Ba年代gydF4y2BaのgydF4y2Ba逆短時間フリエ変換gydF4y2Ba(istft)を返します。gydF4y2Ba

例gydF4y2Ba

xgydF4y2Ba= istft (gydF4y2Ba年代gydF4y2Ba,gydF4y2BafsgydF4y2Ba)gydF4y2Baは,サンプルレトgydF4y2BafsgydF4y2Baを使用してgydF4y2Ba年代gydF4y2Baのistftを返します。gydF4y2Ba

xgydF4y2Ba= istft (gydF4y2Ba年代gydF4y2Ba,gydF4y2BatsgydF4y2Ba)gydF4y2Baは,サンプル時間gydF4y2BatsgydF4y2Baを使用してistftを返します。gydF4y2Ba

例gydF4y2Ba

xgydF4y2Ba= istft (gydF4y2Ba___gydF4y2Ba,gydF4y2Ba名称,值gydF4y2Ba)gydF4y2Baは,名前と値のペアの引数を使用して追加オプションを指定します。オプションには,fftウィンドウの長さとオバラップされたサンプルの数が含まれます。これらの引数を前の入力構文のいずれかに追加できます。gydF4y2Ba

例gydF4y2Ba

[gydF4y2BaxgydF4y2Ba,gydF4y2BatgydF4y2Ba= istft(gydF4y2Ba___gydF4y2Ba)gydF4y2Baは,istftが評価される信号時間を返します。gydF4y2Ba

例gydF4y2Ba

すべて折りたたむgydF4y2Ba

1 kHzで1秒間サンプリングされた3つの異なるチャープで構成される3チャネルの信号を生成します。gydF4y2Ba

  1. 最初のチャネルは凹二次チャプで構成され,瞬時周波数はgydF4y2Bat =gydF4y2Ba0では100 Hzであり,gydF4y2Bat =gydF4y2Ba1秒では300 Hzになります。初期位相は45度です。gydF4y2Ba

  2. 2番目のチャネルは凸二次チャプで構成され,瞬時周波数はgydF4y2Bat =gydF4y2Ba0では200 Hzであり,gydF4y2Bat =gydF4y2Ba1秒では600 Hzになります。gydF4y2Ba

  3. 3番目のチャネルは対数チャプで構成され,瞬時周波数はgydF4y2Bat =gydF4y2Ba0では300 Hzであり,gydF4y2Bat =gydF4y2Ba1秒では500 Hzになります。gydF4y2Ba

256年長さがの周期的ハミングウィンドウと15サンプルのオーバーラップ長を使用して,マルチチャネル信号のSTFTを計算します。gydF4y2Ba

Fs = 1e3;T = 0:1/fs:1-1/fs;X =[啁啾(t,100, 1300,gydF4y2Ba“二次”gydF4y2Ba45岁的gydF4y2Ba“凹”gydF4y2Ba);唧唧声(t, 200, 1600,gydF4y2Ba“二次”gydF4y2Ba[],gydF4y2Ba“凸”gydF4y2Ba);唧唧声(t, 300, 1500,gydF4y2Ba“对数”gydF4y2Ba)];[S,F,T] = stft(x,fs,)gydF4y2Ba“窗口”gydF4y2Ba256年,汉明(gydF4y2Ba“周期”gydF4y2Ba),gydF4y2Ba“OverlapLength”gydF4y2Ba15);gydF4y2Ba

最初と2番目のチャネルに,元のバ。gydF4y2Ba

[ix,ti] = istft(S,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“原创第一频道”gydF4y2Ba,gydF4y2Ba“重建一号频道”gydF4y2Ba)gydF4y2Ba

图中包含一个axes对象。坐标轴对象包含两个line类型的对象。这些对象表示原始通道1,重构通道1。gydF4y2Ba

情节(t) x(:, 2)”,gydF4y2Ba“线宽”gydF4y2Ba, 1.5)gydF4y2Ba在gydF4y2Ba情节(ti,第九(:,2)”,gydF4y2Ba“r——”gydF4y2Ba)传说(gydF4y2Ba“原创频道2”gydF4y2Ba,gydF4y2Ba“重建的2号频道”gydF4y2Ba)gydF4y2Ba

图中包含一个axes对象。坐标轴对象包含两个line类型的对象。这些对象表示原始通道2,重构通道2。gydF4y2Ba

フェーズボコーダーは周波数領域にオーディオを変換することによってタイムストレッチとピッチスケーリングを実行します。この図は,フェズボコダの実装に関連する操作を示します。gydF4y2Ba

フェズボコダは,ホップサgydF4y2Ba RgydF4y2Ba 1gydF4y2Ba の解析ウィンドウを持STFTを実行してから,ホップサgydF4y2Ba RgydF4y2Ba 2gydF4y2Ba の合成ウィンドウを持。ボコダはwola方法を利用します。信号のタイムストレッチを行うために,解析ウィンドウは合成よりも大きい数のオーバーラップサンプルを使用します。結果として,周波数成分が同じだけ残っているにもかかわらず,入力時点よりも出力時点でのサンプルが多くなります(gydF4y2Ba NgydF4y2Ba 年代gydF4y2Ba ,gydF4y2Ba 出gydF4y2Ba >gydF4y2Ba NgydF4y2Ba 年代gydF4y2Ba ,gydF4y2Ba 在gydF4y2Ba )。高いサンプルレトで再生することでこの信号のピッチスケリングができます。まり,元の持続時間のまま,より高いピッチで信号を作成します。gydF4y2Ba

8192赫兹でサンプリングされたヘンデルの”ハレルヤコーラス”の断章を含むオーディオファイルを読み込みます。gydF4y2Ba

负载gydF4y2Ba汉德尔gydF4y2Ba

長さが512のルのルト-ハンウィンドウを設計します。解析オバラップの長さを192,合成オラップの長さを166に設定します。gydF4y2Ba

Wlen = 512;Win =√(hann(wlen),gydF4y2Ba“周期”gydF4y2Ba));noverlapA = 192;noverlap = 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%听,键入soundsc(w,Fs), pause(10), soundsc(iw,Fs);gydF4y2Ba

解析ウィンドウと合成ウィンドウが同じでオーバーラップの長さが変更される場合,調整が必要になるゲイン/損失が追加されます。これは,フェズボコダを実装するための一般的な方法です。gydF4y2Ba

ホップ率を計算して、それを使用して再構成後の信号のゲ以及ンを調整します。ホップ率を使用して,ピッチシフトしたデタの周波数も計算します。gydF4y2Ba

hopRatio = (wlen-noverlap)/(wlen-noverlapA);iyg = iy*hopRatio;Fp = Fs*hopRatio;gydF4y2Ba%听,键入soundsc(iwg,Fs), pause(15), soundsc(iwg,Fp);gydF4y2Ba

元の信号と固定されたゲ邮箱ンでタ邮箱ムストレッチした信号をプロットします。gydF4y2Ba

情节((0:长度(iyg) 1) / Fs, iyg,(0:长度(y) 1) / Fs, y)包含(gydF4y2Ba“时间(s)”gydF4y2Ba) xlim([0(长度(iyg)-1)/Fs]) legend(gydF4y2Ba“固定增益时拉伸信号”gydF4y2Ba,gydF4y2Ba原始信号的gydF4y2Ba,gydF4y2Ba“位置”gydF4y2Ba,gydF4y2Ba“最佳”gydF4y2Ba)gydF4y2Ba

图中包含一个axes对象。坐标轴对象包含两个line类型的对象。这些对象代表固定增益时拉伸信号,原始信号。gydF4y2Ba

タ邮箱ムストレッチした信号とピッチシフトした信号を同じプロットで比較します。gydF4y2Ba

iy情节((0:长度()1)/ Fs, iy,(0:长度(iy) 1) / Fp, iy)包含(gydF4y2Ba“时间(s)”gydF4y2Ba) xlim([0(长度(iyg)-1)/Fs]) legend(gydF4y2Ba“时间拉长信号”gydF4y2Ba,gydF4y2Ba“调距信号”gydF4y2Ba,gydF4y2Ba“位置”gydF4y2Ba,gydF4y2Ba“最佳”gydF4y2Ba)gydF4y2Ba

图中包含一个axes对象。坐标轴对象包含两个line类型的对象。这些物体代表时间拉伸信号,节距偏移信号。gydF4y2Ba

ピッチシフトするデタの効果をより理解するには,2秒を超える次の周波数gydF4y2BaFsgydF4y2Baの正弦波にいて考えます。gydF4y2Ba

t = 0:1/Fs:2;X = sin(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

1つのプロットに元の信号,別のプロットにタイムストレッチした信号とピッチシフトした信号をプロットします。gydF4y2Ba

次要情节(2,1,1)情节((0:长度(ix) 1) / Fs,第九,gydF4y2Ba“线宽”gydF4y2Ba(2)包含gydF4y2Ba“时间(s)”gydF4y2Ba) ylabel (gydF4y2Ba信号幅度的gydF4y2Ba) xlim([0(长度(ix)-1)/Fs])图例(gydF4y2Ba“时间拉长信号”gydF4y2Ba副图(2,1,2)hold住gydF4y2Ba在gydF4y2Ba情节((0:长度(x) 1) / Fs, x)图((0:长度(ix) 1) / Fp,第九,gydF4y2Ba“——”gydF4y2Ba,gydF4y2Ba“线宽”gydF4y2Ba2)传说(gydF4y2Ba原始信号的gydF4y2Ba,gydF4y2Ba“调距信号”gydF4y2Ba,gydF4y2Ba“位置”gydF4y2Ba,gydF4y2Ba“最佳”gydF4y2Ba)举行gydF4y2Ba从gydF4y2Ba包含(gydF4y2Ba“时间(s)”gydF4y2Ba) ylabel (gydF4y2Ba信号幅度的gydF4y2Ba) xlim([0(长度(ix)-1)/Fs])gydF4y2Ba

图中包含2个轴对象。axis对象1包含一个类型为line的对象。该对象表示时间拉伸信号。坐标轴对象2包含两个line类型的对象。这些对象代表原始信号,节距偏移信号。gydF4y2Ba

周波数1千赫,持続時間2秒間の複素正弦波を生成します。gydF4y2Ba

Fs = 1e3;Ts = 0:1/fs:2-1/fs;X = exp(2j* *100*cos(2* *2*ts));gydF4y2Ba

100年長さがの周期的ハンウィンドウを設計し,オーバーラップサンプルの数を75に設定します。可乐準拠に対するウィンドウとオバラップの長さを確認します。gydF4y2Ba

Nwin = 100;Win = hann(nwin,gydF4y2Ba“周期”gydF4y2Ba);诺弗拉普= 75;Tf = iscola(赢,重迭)gydF4y2Ba
tf =gydF4y2Ba逻辑gydF4y2Ba1gydF4y2Ba

信号をゼロパディングして,エッジの影響を除去します。切り捨てを避けるために,入力信号をゼロでパディングします。その結果,gydF4y2Ba

lgydF4y2Ba egydF4y2Ba ngydF4y2Ba ggydF4y2Ba tgydF4y2Ba hgydF4y2Ba (gydF4y2Ba xgydF4y2Ba ZgydF4y2Ba egydF4y2Ba rgydF4y2Ba ogydF4y2Ba )gydF4y2Ba -gydF4y2Ba ngydF4y2Ba ogydF4y2Ba vgydF4y2Ba egydF4y2Ba rgydF4y2Ba lgydF4y2Ba 一个gydF4y2Ba pgydF4y2Ba ngydF4y2Ba wgydF4y2Ba 我gydF4y2Ba ngydF4y2Ba -gydF4y2Ba ngydF4y2Ba ogydF4y2Ba vgydF4y2Ba egydF4y2Ba rgydF4y2Ba lgydF4y2Ba 一个gydF4y2Ba pgydF4y2Ba 信号长度减去重叠除以窗口长度减去重叠gydF4y2Ba

は整数になります。FFT長を128に設定します。複素信号の短時間フリエ変換を計算します。gydF4y2Ba

nPad = 100;xZero = [zero (1,nPad) x zero (1,nPad)];Fftlen = 128;s = stft(x0,fs,)gydF4y2Ba“窗口”gydF4y2Ba,赢了,gydF4y2Ba“OverlapLength”gydF4y2Banoverlap,gydF4y2Ba“FFTLength”gydF4y2Ba, fftlen);gydF4y2Ba

逆短時間フリエ変換を計算して,完全再構成のためにゼロを削除します。gydF4y2Ba

[is,ti] = istft(s,fs,)gydF4y2Ba“窗口”gydF4y2Ba,赢了,gydF4y2Ba“OverlapLength”gydF4y2Banoverlap,gydF4y2Ba“FFTLength”gydF4y2Ba, fftlen);is(1:nPad) = [];is(end- npad +1:end) = [];ti = ti(1:end-2*nPad);gydF4y2Ba

元の信号と再構成後の信号の実数部をプロットします。信号の虚数部も完全に再構成されます。gydF4y2Ba

情节(ts,真正的(x))gydF4y2Ba在gydF4y2Ba情节(ti,真正的(是),gydF4y2Ba“——”gydF4y2Ba) xlim([0 0.5]) xlabel(gydF4y2Ba“时间(s)”gydF4y2Ba) ylabel (gydF4y2Ba“振幅(V)”gydF4y2Ba)传说(gydF4y2Ba原始信号的gydF4y2Ba,gydF4y2Ba重构信号的gydF4y2Ba)举行gydF4y2Ba从gydF4y2Ba

图中包含一个axes对象。坐标轴对象包含两个line类型的对象。这些对象分别代表原始信号、重构信号。gydF4y2Ba

2千赫で1秒間サンプリングされた正弦波を生成します。gydF4y2Ba

Fs = 2e3;T = 0:1/fs:1-1/fs;X = 5*sin(2* *10*t)gydF4y2Ba

長さが120の周期的ハミングウィンドウを設計します。オバラップが80サンプルのウィンドウの可乐制約を確認します。ウィンドウとオバラップの組み合わせは可乐準拠です。gydF4y2Ba

赢=汉明(120;gydF4y2Ba“周期”gydF4y2Ba);诺弗拉普= 80;Tf = iscola(赢,重迭)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”gydF4y2Bafftlen,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

图中包含一个axes对象。标题为Original和reconstruction Signal的axis对象包含两个类型为line的对象。这些对象分别代表原始信号、重构信号。gydF4y2Ba

入力引数gydF4y2Ba

すべて折りたたむgydF4y2Ba

短時間フリエ変換。行列または3 次元配列として指定します。単一チャネル信号の場合は、年代gydF4y2Baを列方向に時間が増加し,行方向に周波数が増加する行列として指定します。マルチチャネル信号の場合は,gydF4y2Ba年代gydF4y2Baを3番目の次元がチャネルに対応する3次元配列として指定します。周波数ベクトルと時間ベクトルはgydF4y2BastftgydF4y2Baの出力として取得されます。gydF4y2Ba

メモgydF4y2Ba

istftgydF4y2Baを使用してgydF4y2Ba年代gydF4y2Baを反転させて,その結果をgydF4y2BaxgydF4y2Baと同じ長さになるようにする場合,gydF4y2Ba长度(长度(x) -noverlap) /((窗口)-noverlap)gydF4y2Baの値は整数でなければなりません。gydF4y2Ba

デタ型:gydF4y2Ba双gydF4y2Ba|gydF4y2Ba单gydF4y2Ba
複素数のサポト:gydF4y2BaありgydF4y2Ba

サンプルレト(ヘル単位)。正のスカラとして指定します。gydF4y2Ba

デタ型:gydF4y2Ba双gydF4y2Ba|gydF4y2Ba单gydF4y2Ba

サンプル時間。gydF4y2Ba持续时间gydF4y2Baスカラで指定します。gydF4y2Ba

例:gydF4y2Ba秒(1)gydF4y2Baは,連続する信号サンプル間の1秒間の時間差を表すgydF4y2Ba持续时间gydF4y2Baスカラです。gydF4y2Ba

デタ型:gydF4y2Ba持续时间gydF4y2Ba

名前と値の引数gydF4y2Ba

オプションの引数のペアをgydF4y2BaName1 = Value1,…,以=家gydF4y2Baとして指定します。ここで,gydF4y2Ba的名字gydF4y2Baは引数名で,gydF4y2Ba价值gydF4y2Baは対応する値です。名前と値の引数は他の引数の後に指定しなければなりませんが、ペアの順序は重要ではありません。

R2021aより前は,名前と値をそれぞれコンマを使って区切り,gydF4y2Ba的名字gydF4y2Baを引用符で囲みました。gydF4y2Ba

例:gydF4y2Baistft(年代,“窗口”,赢得“OverlapLength”,50岁,FFTLength, 128)gydF4y2Baは,隣接するセグメント間でのオバラップが50サンプル,dft点が128のウィンドウgydF4y2Ba赢得gydF4y2Baを使用してデタをウィンドウ処理します。gydF4y2Ba

ウィンドウ処理関数。gydF4y2Ba“窗口”gydF4y2Baとベクトルから構成されるコンマ区切りのペアとして指定します。ウィンドウを指定しない場合、またはウィンドウを空として指定する場合、関数は長さが 128 の周期的ハン ウィンドウを使用します。窗口gydF4y2Baの長さは2以上でなければなりません。gydF4y2Ba

利用可能なウィンドウのリストにいては,gydF4y2BaウィンドウgydF4y2Baを参照してください。gydF4y2Ba

例:gydF4y2Ba损害(N + 1)gydF4y2BaとgydF4y2Ba(1-cos(2 *π* (0:N) / N)) / 2gydF4y2Baは,いずれも長さgydF4y2BaNgydF4y2Ba+ 1のハンウィンドウを指定します。gydF4y2Ba

デタ型:gydF4y2Ba双gydF4y2Ba|gydF4y2Ba单gydF4y2Ba

オバラップするサンプル数。gydF4y2Ba“OverlapLength”gydF4y2BaとgydF4y2Ba窗口gydF4y2Baの長さより小さな正の整数で構成されるコンマ区切りのペアとして指定します。gydF4y2Ba“OverlapLength”gydF4y2Baを省略するか,空として指定する場合,ウィンドウの長さが75%より少ない最大整数に設定されます。これは,既定のハンウィンドウの96サンプルになります。gydF4y2Ba

デタ型:gydF4y2Ba双gydF4y2Ba|gydF4y2Ba单gydF4y2Ba

DFT点の数。gydF4y2Ba“FFTLength”gydF4y2Baと正の整数で構成されるコンマ区切りのペアとして指定します。完全な時間領域の再構成を行うには,gydF4y2BastftgydF4y2Baで使用されるものに一致するようにDFT点の数を設定する必要があります。gydF4y2Ba

デタ型:gydF4y2Ba双gydF4y2Ba|gydF4y2Ba单gydF4y2Ba

オバラップ加算の方法。gydF4y2Ba“方法”gydF4y2Baと以下のいずれかで構成されるコンマ区切りのペアとして指定します。gydF4y2Ba

  • “呼啦”gydF4y2Ba—重み付きオバラップ加算gydF4y2Ba

  • “ola”gydF4y2Ba—オバラップ加算gydF4y2Ba

元の信号の共役対称性。gydF4y2Ba“ConjugateSymmetric”gydF4y2Baと,gydF4y2Ba真正的gydF4y2BaまたはgydF4y2Ba假gydF4y2Baで構成されるコンマ区切りのペアとして指定します。このオプションをgydF4y2Ba真正的gydF4y2Baに設定する場合,gydF4y2BaistftgydF4y2Baは,入力gydF4y2Ba年代gydF4y2Baが対称であると仮定します。そうでない場合は,対称性の仮定は作成されません。gydF4y2Ba年代gydF4y2Baが丸め誤差のために厳密に共役対称性でない場合,名前と値のペアのgydF4y2Ba真正的gydF4y2Baへの設定ではSTFTは共役対称として扱われます。gydF4y2Ba年代gydF4y2Baが共役対称である場合,逆変換の計算が速くなり,出力は実数になります。gydF4y2Ba

STFT周波数範囲。gydF4y2Ba“FrequencyRange”gydF4y2Baと,gydF4y2Ba“中心”gydF4y2Ba、gydF4y2Ba双侧的gydF4y2BaまたはgydF4y2Ba“单向的”gydF4y2Baで構成されるコンマ区切りのペアとして指定します。gydF4y2Ba

  • “中心”gydF4y2Ba- - - - - -gydF4y2Ba年代gydF4y2Baを中央揃えの両側STFTとして扱います。gydF4y2BanfftgydF4y2Baが偶数の場合,gydF4y2Ba年代gydF4y2Baは区間gydF4y2Ba(π-π)gydF4y2Baラジアン/サンプルで計算されたと見なされます。gydF4y2BanfftgydF4y2Baが奇数の場合,gydF4y2Ba年代gydF4y2Baは区間gydF4y2Ba(π-π)gydF4y2Baラジアン/サンプルで計算されたと見なされます。時間情報を指定すると,計算区間はそれぞれgydF4y2Ba(- fgydF4y2Ba年代gydF4y2BafgydF4y2Ba年代gydF4y2Ba/ 2)gydF4y2Baサクル/単位時間,gydF4y2Ba(- fgydF4y2Ba年代gydF4y2BafgydF4y2Ba年代gydF4y2Ba/ 2)gydF4y2Baサ邮箱クル/単位時間となります。ここで,fgydF4y2Ba年代gydF4y2Baはサンプルレトです。gydF4y2Ba

  • 双侧的gydF4y2Ba- - - - - -gydF4y2Ba年代gydF4y2Baを区間gydF4y2Ba[0, 2π)gydF4y2Baラジアン/サンプルで計算された両側STFTとして扱います。時間情報を指定した場合,計算区間はgydF4y2Ba[0 fgydF4y2Ba年代gydF4y2Ba)gydF4y2Baサ邮箱クル/単位時間となります。gydF4y2Ba

  • “单向的”gydF4y2Ba- - - - - -gydF4y2Ba年代gydF4y2Baを片側STFTとして扱います。gydF4y2BanfftgydF4y2Baが偶数の場合,gydF4y2Ba年代gydF4y2Baは区間gydF4y2Ba[0,π]gydF4y2Baラジアン/サンプルで計算されたと見なされます。gydF4y2BanfftgydF4y2Baが奇数の場合,gydF4y2Ba年代gydF4y2Baは区間gydF4y2Ba[0,π)gydF4y2Baラジアン/サンプルで計算されたと見なされます。時間情報を指定すると,計算区間はそれぞれgydF4y2Ba[0 fgydF4y2Ba年代gydF4y2Ba/ 2)gydF4y2Baサクル/単位時間,gydF4y2Ba[0 fgydF4y2Ba年代gydF4y2Ba/ 2)gydF4y2Baサ邮箱クル/単位時間となります。ここで,fgydF4y2Ba年代gydF4y2Baはサンプルレトです。gydF4y2Ba

    メモgydF4y2Ba

    この引数がgydF4y2Ba“单向的”gydF4y2Baに設定されている場合,gydF4y2BaistftgydF4y2Baは、正のナ。gydF4y2Ba

例にいては,gydF4y2BaSTFT周波数範囲gydF4y2Baを参照してください。gydF4y2Ba

デタ型:gydF4y2Ba字符gydF4y2Ba|gydF4y2Ba字符串gydF4y2Ba

入力時間次元。gydF4y2Ba“InputTimeDimension”gydF4y2Baと,gydF4y2Ba“acrosscolumns”gydF4y2BaまたはgydF4y2Ba“downrows”gydF4y2Baから構成されるコンマ区切りのペアとして指定します。この値がgydF4y2Ba“downrows”gydF4y2Baに設定されている場合,gydF4y2BaistftgydF4y2BaはgydF4y2Ba年代gydF4y2Baの時間次元が行に沿い,周波数が列に沿うと見なします。この値がgydF4y2Ba“acrosscolumns”gydF4y2Baに設定されている場合,関数gydF4y2BaistftgydF4y2BaはgydF4y2Ba年代gydF4y2Baの時間次元が列に沿い,周波数次元が行に沿うと見なします。gydF4y2Ba

出力引数gydF4y2Ba

すべて折りたたむgydF4y2Ba

時間領域の再構成後の信号。ベクトルまたは行列として返されます。

デタ型:gydF4y2Ba单gydF4y2Ba|gydF4y2Ba双gydF4y2Ba

時点。ベクトルとして返されます。gydF4y2Ba

  • サンプルレトgydF4y2BafsgydF4y2Baが指定された場合,gydF4y2BatgydF4y2Baには時間値(秒単位)が含まれます。gydF4y2Ba

  • 持続時間gydF4y2BatsgydF4y2Baが指定された場合,gydF4y2BatgydF4y2Baは,時間形式が入力持続時間と同じになり,持续时间配列になります。gydF4y2Ba

  • 時間情報が指定されない場合,gydF4y2BatgydF4y2Baはサンプル数を含みます。gydF4y2Ba

デタ型:gydF4y2Ba双gydF4y2Ba|gydF4y2Ba单gydF4y2Ba

詳細gydF4y2Ba

すべて折りたたむgydF4y2Ba

逆短時間フリエ変換gydF4y2Ba

逆短時間フーリエ変換は,STFTの各DFTベクトルの传输线を取り,逆変換した信号をオーバーラップ加算することで計算されます。Istftは次のように計算されます。gydF4y2Ba

xgydF4y2Ba (gydF4y2Ba ngydF4y2Ba )gydF4y2Ba =gydF4y2Ba ∫gydF4y2Ba −gydF4y2Ba 1gydF4y2Ba /gydF4y2Ba 2gydF4y2Ba 1gydF4y2Ba /gydF4y2Ba 2gydF4y2Ba ∑gydF4y2Ba 米gydF4y2Ba =gydF4y2Ba −gydF4y2Ba ∞gydF4y2Ba ∞gydF4y2Ba XgydF4y2Ba 米gydF4y2Ba (gydF4y2Ba fgydF4y2Ba )gydF4y2Ba egydF4y2Ba jgydF4y2Ba 2gydF4y2Ba πgydF4y2Ba fgydF4y2Ba ngydF4y2Ba dgydF4y2Ba fgydF4y2Ba =gydF4y2Ba ∑gydF4y2Ba 米gydF4y2Ba =gydF4y2Ba −gydF4y2Ba ∞gydF4y2Ba ∞gydF4y2Ba ∫gydF4y2Ba −gydF4y2Ba 1gydF4y2Ba /gydF4y2Ba 2gydF4y2Ba 1gydF4y2Ba /gydF4y2Ba 2gydF4y2Ba XgydF4y2Ba 米gydF4y2Ba (gydF4y2Ba fgydF4y2Ba )gydF4y2Ba egydF4y2Ba jgydF4y2Ba 2gydF4y2Ba πgydF4y2Ba fgydF4y2Ba ngydF4y2Ba dgydF4y2Ba fgydF4y2Ba =gydF4y2Ba ∑gydF4y2Ba 米gydF4y2Ba =gydF4y2Ba −gydF4y2Ba ∞gydF4y2Ba ∞gydF4y2Ba xgydF4y2Ba 米gydF4y2Ba (gydF4y2Ba ngydF4y2Ba )gydF4y2Ba

ここで,gydF4y2Ba RgydF4y2Ba は連続するDFT間のホップサ,gydF4y2Ba XgydF4y2Ba 米gydF4y2Ba は時間gydF4y2Ba 米gydF4y2Ba RgydF4y2Ba とgydF4y2Ba xgydF4y2Ba 米gydF4y2Ba (gydF4y2Ba ngydF4y2Ba )gydF4y2Ba =gydF4y2Ba xgydF4y2Ba (gydF4y2Ba ngydF4y2Ba )gydF4y2Ba ggydF4y2Ba (gydF4y2Ba ngydF4y2Ba −gydF4y2Ba 米gydF4y2Ba RgydF4y2Ba )gydF4y2Ba 付近を中心としたウィンドウが適用されたデタのDFTです。逆STFTは,gydF4y2Ba“解析ウィンドウ”gydF4y2Ba ggydF4y2Ba (gydF4y2Ba ngydF4y2Ba )gydF4y2Ba が元の信号のウィンドウ処理に使用されてgydF4y2Ba cgydF4y2Ba が定数のgydF4y2Ba ∑gydF4y2Ba 米gydF4y2Ba =gydF4y2Ba −gydF4y2Ba ∞gydF4y2Ba ∞gydF4y2Ba ggydF4y2Ba 一个gydF4y2Ba +gydF4y2Ba 1gydF4y2Ba (gydF4y2Ba ngydF4y2Ba −gydF4y2Ba 米gydF4y2Ba RgydF4y2Ba )gydF4y2Ba =gydF4y2Ba cgydF4y2Ba ∀gydF4y2Ba ngydF4y2Ba ∈gydF4y2Ba ℤgydF4y2Ba と同じ長さの元の信号の完全再構成です。次の図は,元の信号の再構成で使用されているステップを示しています。gydF4y2Ba

定数オバラップ加算(可乐)制約gydF4y2Ba

変更していないスペクトルを正しく再構成させるには,解析ウィンドウが可乐制約を満たさなければなりません。通常,解析ウィンドウが条件gydF4y2Ba ∑gydF4y2Ba 米gydF4y2Ba =gydF4y2Ba −gydF4y2Ba ∞gydF4y2Ba ∞gydF4y2Ba ggydF4y2Ba 一个gydF4y2Ba +gydF4y2Ba 1gydF4y2Ba (gydF4y2Ba ngydF4y2Ba −gydF4y2Ba 米gydF4y2Ba RgydF4y2Ba )gydF4y2Ba =gydF4y2Ba cgydF4y2Ba ∀gydF4y2Ba ngydF4y2Ba ∈gydF4y2Ba ℤgydF4y2Ba を満たす場合,ウィンドウは可乐準拠であると見なされます。さらに,可乐準拠は弱いまたは強いのいずれかで説明されます。gydF4y2Ba

  • 弱い可乐準拠とは,gydF4y2Ba

    GgydF4y2Ba (gydF4y2Ba fgydF4y2Ba kgydF4y2Ba )gydF4y2Ba =gydF4y2Ba 0gydF4y2Ba ,gydF4y2Ba kgydF4y2Ba =gydF4y2Ba 1gydF4y2Ba ,gydF4y2Ba 2gydF4y2Ba ,gydF4y2Ba ...gydF4y2Ba ,gydF4y2Ba RgydF4y2Ba −gydF4y2Ba 1gydF4y2Ba ,gydF4y2Ba fgydF4y2Ba kgydF4y2Ba ≜gydF4y2Ba kgydF4y2Ba RgydF4y2Ba .gydF4y2Ba

    となるフレムレトの高調波で解析ウィンドウのフリエ変換がゼロであることを意味します。gydF4y2Ba

    エ邮箱リアスのキャンセルはスペクトル変更によって妨害されます。弱い可乐は,周波数領域のエ可乐リアスのキャンセルに依存しています。したがって,信号に何らかのスペクトル変更が行われていなければ,弱い可乐準拠ウィンドウを使用して完全な再構成が可能です。gydF4y2Ba

  • 強い可乐準拠の場合,ウィンドウのフリエ変換はgydF4y2Ba

    GgydF4y2Ba (gydF4y2Ba fgydF4y2Ba )gydF4y2Ba =gydF4y2Ba 0gydF4y2Ba ,gydF4y2Ba fgydF4y2Ba ≥gydF4y2Ba 1gydF4y2Ba 2gydF4y2Ba RgydF4y2Ba .gydF4y2Ba

    となるフレムレトによってダウンサンプリングしながら常に帯域制限しなければなりません。この方程式は,強い可乐制約によって許可されるエ,リアシングがないことを示します。さらに,強い可乐準拠の場合,定数gydF4y2Ba cgydF4y2Ba の値は,1と等しくなければなりません。通常,短時間のスペクトルが何らかの方法で変更される場合,より強い可乐準拠ウィンドウが推奨されます。gydF4y2Ba

関数gydF4y2BaiscolagydF4y2Baを使用して,弱い可乐準拠を確認できます。可乐準拠を確認するために使用される加算数は,ウィンドウの長さとホップサイズによって決まります。通常,重み付きオバラップ加算(wola)には,gydF4y2Ba ∑gydF4y2Ba 米gydF4y2Ba =gydF4y2Ba −gydF4y2Ba ∞gydF4y2Ba ∞gydF4y2Ba ggydF4y2Ba 一个gydF4y2Ba +gydF4y2Ba 1gydF4y2Ba (gydF4y2Ba ngydF4y2Ba −gydF4y2Ba 米gydF4y2Ba RgydF4y2Ba )gydF4y2Ba =gydF4y2Ba cgydF4y2Ba ∀gydF4y2Ba ngydF4y2Ba ∈gydF4y2Ba ℤgydF4y2Ba のgydF4y2Ba 一个gydF4y2Ba =gydF4y2Ba 1gydF4y2Ba ,オバラップ加算(ola)には,gydF4y2Ba 一个gydF4y2Ba =gydF4y2Ba 0gydF4y2Ba を使用するのが一般的です。既定では,gydF4y2BaistftgydF4y2Baは,オバラップ加算方法を実行する前にgydF4y2Ba“合成ウィンドウ”gydF4y2Baを適用して,沃拉方法を使用します。gydF4y2Ba

通常,合成ウィンドウは解析ウィンドウと同じです。強いolaウィンドウの平方根を取ることで有用なwolaウィンドウを構築できます。すべての非負のolaウィンドウに対してこの方法を使用できます。たとえば,ルトハンウィンドウは沃拉ウィンドウの良い例です。gydF4y2Ba

完全再構成gydF4y2Ba

一般に,入力信号のSTFTを計算して逆変換しても,完全再構成は行われません。ISTFTの出力を元の入力信号と可能な限り一致させるには,信号とウィンドウが以下の条件を満たす必要があります。gydF4y2Ba

  • 入力サ邮箱ズ-gydF4y2BaistftgydF4y2Baを使用してgydF4y2BastftgydF4y2Baの出力を逆変換して,その結果を入力信号gydF4y2BaxgydF4y2Baと同じ長さにする場合,gydF4y2Ba kgydF4y2Ba =gydF4y2Ba NgydF4y2Ba xgydF4y2Ba −gydF4y2Ba lgydF4y2Ba 米gydF4y2Ba −gydF4y2Ba lgydF4y2Ba の値は整数でなければなりません。gydF4y2Ba

  • 可乐準拠——可乐準拠ウィンドウを使用して,信号の短時間フーリエ変換を変更していないと仮定します。gydF4y2Ba

  • パディング- kの値が整数にならないような入力信号の長さの場合,短時間フーリエ変換を計算する前に信号をゼロパディングします。信号を逆変換した後に,余分なゼロを削除します。gydF4y2Ba

参照gydF4y2Ba

R.克罗奇埃尔短时傅里叶分析/合成的加权重叠加法。IEEE声学,语音和信号处理汇刊。第28卷第1期,1980年2月,第99-102页。gydF4y2Ba

[2]哥岑,A. D., N.贝尔纳迪尼,D.阿菲。相位声码器的传统实现:交易技巧。数字音频效果COST G-6会议记录(DAFX-00),意大利维罗纳,2000年12月7-9日。gydF4y2Ba

[3]格里芬,丹尼尔W.和杰S.林。修正短时傅里叶变换下的信号估计。IEEE声学,语音和信号处理汇刊。1984年4月,第32卷第2期,第236-243页。gydF4y2Ba

m.r.波特诺夫基于短时傅里叶分析的数字信号和系统时频表示。IEEE声学,语音和信号处理汇刊。1980年2月,第28卷第1期,第55-69页。gydF4y2Ba

史密斯,朱利叶斯·奥利翁。频谱音频信号处理。gydF4y2Bahttps://ccrma.stanford.edu/~jos/sasp/gydF4y2Ba,在线图书,2011年版,2018年11月访问。gydF4y2Ba

夏普,布鲁斯。重叠相加处理的可逆性。gydF4y2Bahttps://gauss256.github.io/blog/cola.htmlgydF4y2Ba,于2019年7月访问。gydF4y2Ba

拡張機能gydF4y2Ba

バジョン履歴gydF4y2Ba

R2019aで導入gydF4y2Ba

参考gydF4y2Ba

関数gydF4y2Ba