その手の平は尻もつかめるさ

ギジュツ的な事をメーンで書く予定です

Statistics::PhaseOnlyCorrelation をリリースしました

The CPAN Search Site - search.cpan.org

CPAN にStatistics::PhaseOnlyCorrelation を投げました。
またしても色々あったので、現時点でバージョン0.02 です。

Statistics::PhaseOnlyCorrelation?

このモジュールはその名の通りPhase Only Correlation、つまり位相限定相関を行います。
位相限定相関は、信号波形の位相成分にのみ着目して相関計算を行う手法です。
振幅成分に依存しない相関計算を実施できるので、その手の用途に於いてはロバストに動きます。

位相限定相関は画像のパターンマッチ等によく用いられる手法らしいので、
気合いを入れればStatistics::PhaseOnlyCorrelation で画像のパターンマッチが出来るかも知れません。*1

実例

例えば以下の2つの信号波形を取り上げます。*2

目視だとなんだか似ている信号っぽいですね。
Statistics::PhaseOnlyCorrelation を使って位相限定相関を取った結果は以下のようになります。

鋭いピーク値が出ていますね。なのでこれらの信号は相似していると言えると思います。*3

もう一例。

見るからに別モノの波形ですね。前例と同様に位相限定相関を取った結果は以下の通りです。

ピーク値出てませんね。なので、これらの信号は相似していない別モノの信号であることがわかります。

こんな感じで

Statistics::PhaseOnlyCorrelation で位相限定相関を実行出来ますので、ご活用下さい。

(付録)テストの件

なんか、テストがポシャってるくさいです。
CPAN Testers Reports: Reports for Statistics-PhaseOnlyCorrelation

色々な環境でテストを実施してみましたが、僕の試した限りはFAIL にならないんですよね……
もしもテストがポシャってる方がいたらご一報下さい。Dump した結果なんかも下さると非常に助かります。

*1:未確認

*2:スミマセン、グラフのフォーマットは結構いい加減です

*3:相似か否かの判断は閾値の設定に依存しますが……