DFT(離散フーリエ変換)は、信号を正弦波の複数の周波数に分解することを知っています。同じことを行うが、三角波の変換はありますか?
私の目的では、1次元信号(電圧など)についてのみ話します。私は過去の株式市場データを研究していますが、特定の株の反転について調べたいだけです。つまり、この変換を使用して株価の「ローパス」を実行したいのです。
編集:はいの場合、どうすればよいですか?
DFT(離散フーリエ変換)は、信号を正弦波の複数の周波数に分解することを知っています。同じことを行うが、三角波の変換はありますか?
私の目的では、1次元信号(電圧など)についてのみ話します。私は過去の株式市場データを研究していますが、特定の株の反転について調べたいだけです。つまり、この変換を使用して株価の「ローパス」を実行したいのです。
編集:はいの場合、どうすればよいですか?
回答:
あなたのニーズを満たす可能性があると私が知っている最も近い直交変換は、傾斜変換です。これはノコギリ波に基づいていますが、いくつかの基本関数は三角波に似ています。
(ソース:応用フーリエ変換)
これは画像コーディング/圧縮用に開発されましたが、財務データの長期線形トレンド/反転の分析のための合理的な最初のアプローチのようです。変換について説明している主要な論文の多くがオンラインで[無料で]入手できるようには思えませんが、次の論文には、おそらく何かを実装するのに十分な詳細があります。
傾斜変換を計算するための切り捨て方法と画像処理への応用 MM Anguh、RRマーティン。IEEEトランス。Communications 43(6)、2103-2110、1995.(著者リンク)(pdfリンク)
具体的には、変換マトリックスの構築に使用される再帰関係を示すセクションIIIを参照してください。
1次Bスプラインは三角形であり、任意の信号をBスプラインの和として表すアルゴリズムが存在します。前述のように、これらのスプラインはオーソバシスを形成しませんが、これは必ずしもひどいことではありません。
まず、Unserによる効率的なBスプライン近似に関する論文を参照してください。http://bigwww.epfl.ch/publications/unser9301.pdf
積分演算子(つまり、cumsum)の随伴要素を使用し、その後に高速ウォルシュアダマール変換を使用できます。
例:Matlab
n = 16;
H = fwht(eye(n))*sqrt(n); % Walsh-Hadamrd in full unitary matrix form
S = cumsum(eye(n)); % the integrator in full matrix form
T = H*S'; % cumsum along the rows of the W-H
Hの一定の正の値のセクションが統合されて、のこぎり波に傾斜が生じます。負の値は減少します。
Tはユニタリーではなく、次元のストレッチングに影響を与えます。明るい面では、それは速い逆を持っています:別のfwhtに続いて微分器。
D = inv(S'); % difference matrix with an extra row at bottom for full rank
Tinv = D*H; % inverse of T