主要内容

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

ケプストラム解析

ケプストラムにいて

ケプストラム解析は、音声処理や。

シケンスx“複素ケプストラム”は,xのフーリエ変換の複素自然対数を求め,その結果のシーケンスを逆フーリエ変換することにより計算されます。

x ˆ 1 2 π - π π 日志 X e j ω e j ω n d ω

ルボックスの関数ccepsによりこの演算を行って,入力シーケンスに対する複素ケプストラムを推定し,入力シーケンスと同じ長さの実数シーケンスが返されます。

次に,エコ検出のアプリケションにccepsを使用します。まず,以下のようにして100赫兹でサンプリングした45赫兹の正弦波を作成します。信号の立上りから0.2秒後に,半分の振幅をも。

T = 0:0.01:1.27;S1 = sin(2* *45*t);S2 = s1 + 0.5*[0 (1,20) s1(1:108)];

新しい信号の複素ケプストラムを計算し,プロットします。

C = cceps(s2);情节(t, c)

图中包含一个axes对象。axis对象包含一个类型为line的对象。

複素ケプストラムは0.2秒の点にエコを表すピクを示します。

信号x“実数ケプストラム”は,場合によっては単にケプストラムと呼ばれるものですが,xのフーリエ変換の大きさの自然対数を求め,そして,その結果のシーケンスの逆フーリエ変換を得ることにより計算されます。

c x 1 2 π - π π 日志 | X e j ω | e j ω n d ω

このルボックスの関数rcepsは,この演算を行ってシケンスの実数ケプストラムを返します。返されるシケンスは,入力ベクトルと同じ長さの実数値ベクトルです。

関数rcepsでは,入力と同じ実数ケプストラムをも。シケンスの実数ケプストラムと最小位相再現を共に得るには,[y,ym] = rceps(x)を使用します。ここで,yは実数ケプストラム,ymxの最小位相再現です。以下の例は,rcepsの1出力がxと同じ実数ケプストラムをも固有の最小位相シケンスであることを示します。

Y = [4 1 5];非最小相序[xhat,yhat] = rceps(y);Xhat2 = rceps(yhat);[xhat ' xhat2 ']
ans =3×21.6225 1.6225 0.3400 0.3400 0.3400 0.3400

逆複素ケプストラム

複素ケプストラムを逆変換するには,関数iccepsを使用します。関数ccepsでは,入力のアンラップされた位相がゼロ周波数で連続になるように,データに依存した位相変調が実行されるため,逆変換が複雑になります。位相の変調は整数倍の遅延と等しくなります。出力引数を2設定すると,ccepsでは,この遅延の項が返されます。

X = 1:10;[xhat,delay] = cceps(x)
xhat =1×102.2428 -0.0420 -0.0210 0.0045 0.0366 0.0788 0.1386 0.2327 0.4114 0.9249
延迟= 1

複素ケプストラムを逆変換するには,以下のように元の遅延パラメ,タ,を設定して,iccepsを使用します。

icceps(xhat,2)
icc =1×102.000 3.0000 4.0000 5.0000 6.0000 7.0000 8.0000 9.0000 10.0000 1.000

上の例が示すように,複素ケプストラムになんらかの変更を加えると,元の遅延の項が無効となる可能性があります。複素ケプストラムを厳密に逆変換できません。

参考

||