このページの内容は最新ではありません。最新版の英語を参照するには、ここをクリックします。
cceps
複素ケプストラム解析
説明
例
入力引数
出力引数
アルゴリズム
ケプストラム解析は、音声処理やホモモルフィック フィルター処理において最も一般的に適用される、非線形の信号処理手法です (参考文献[1])。cceps
は、参考文献[3]のアルゴリズム 7.1 を実装するものです。Fortran プログラムでは冗長な表現も、MATLAB® コードでは以下の 3 行で表せます。この 3 行が cceps
の核をなしています。
h = fft(x); logh = log(abs(h)) + sqrt(-1)*rcunwrap(angle(h)); y = real(ifft(logh));
メモ
上記のコード セグメントにおける rcunwrap
は、unwrap
の特殊な形であり、位相から直線を取り除くものです。rcunwrap
は cceps
内のローカル関数で、MATLAB のコマンド ラインからは使用できません。
以下の表では、フーリエ アルゴリズムと因数分解アルゴリズムの長所と短所を示します。
アルゴリズム | 長所 | 短所 |
---|---|---|
フーリエ | 任意の信号に対して使用可能 | 位相の補正が必要。出力でエイリアスを使用。 |
因数分解 | 位相の補正は不要。エイリアスはなし。 | 短時間の信号にのみ使用可能。入力信号の Z 変換はすべて零点で、零点が単位円上にないことが必須。 |
一般に、これら 2 つのアルゴリズムの結果を使用して互いを検証することはできません。このような検証が可能なのは、入力データの最初の要素が正であり、データ シーケンスの Z 変換は零点のみで、これらすべての零点が単位円内にあり、入力データ シーケンスが長い (またはゼロが付加されている) 場合のみです。
参照
[1] Oppenheim, Alan V., Ronald W. Schafer, and John R. Buck. Discrete-Time Signal Processing. Upper Saddle River, NJ: Prentice Hall, 1999, pp. 788–789.
[2] Steiglitz, K., and B. Dickinson. “Computation of the Complex Cepstrum by Factorization of the Z-transform.” Proceedings of the 1977 IEEE® International Conference on Acoustics, Speech and Signal Processing, pp. 723–726.
[3] Digital Signal Processing Committee of the IEEE Acoustics, Speech, and Signal Processing Society, eds. Programs for Digital Signal Processing. New York: IEEE Press, 1979.
拡張機能
バージョン履歴
R2006a より前に導入