しばらく前に、デジタル波形を描画するさまざまな方法を試していましたが、私が試みたのは、振幅エンベロープの標準シルエットではなく、オシロスコープのように表示することでした。これは、正弦波と方形波がスコープ上でどのように見えるかです。
これを行う単純な方法は次のとおりです。
- 出力画像のオーディオファイルを水平ピクセルごとに1つのチャンクに分割します
- 各チャンクのサンプル振幅のヒストグラムを計算します
- ピクセルの列として輝度でヒストグラムをプロットします
次のようなものが生成されます。
これは、チャンクごとに多くのサンプルがあり、信号の周波数がサンプリング周波数と無関係である場合は正常に機能しますが、そうでない場合は機能しません。たとえば、信号周波数がサンプリング周波数の正確な約数である場合、サンプルは各サイクルで正確に同じ振幅で常に発生し、実際の再構成信号がこれらのポイント間に存在しても、ヒストグラムはほんの数ポイントになります。このサインパルスは上記の左と同じくらい滑らかでなければなりませんが、正確に1 kHzであり、サンプルは常に同じポイントの周辺で発生するため、そうではありません。
ポイント数を増やすためにアップサンプリングを試みましたが、問題は解決せず、場合によっては問題を解決するのに役立ちます。
だから、私が本当に欲しいのは、デジタルサンプルから連続的に再構築された信号の真のPDF(確率vs振幅)(振幅vs時間)を計算する方法です。これに使用するアルゴリズムがわかりません。一般に、関数のPDFはその逆関数の導関数です。
sin(x)のPDF:
しかし、逆関数が多値関数である波に対してこれを計算する方法や、それを高速に行う方法はわかりません。それをブランチに分割し、それぞれの逆数を計算し、導関数を取り、それらをすべて合計しますか?しかし、それはかなり複雑で、おそらくもっと簡単な方法があります。
この「補間データのPDF」は、GPSトラックのカーネル密度推定を行う試みにも適用できます。リング状にすべきでしたが、サンプルだけを見て、サンプル間の補間点を考慮していなかったため、KDEはリングというよりもハンプのように見えました。サンプルがわかっているだけであれば、これが最善です。しかし、サンプルは私たちが知っているすべてではありません。また、サンプル間にパスがあることもわかっています。GPSの場合、帯域制限されたオーディオのように完璧なナイキスト再構成はありませんが、補間関数に推測を加えることで基本的な考え方が適用されます。