建築・設備見積りソフト、見積システムの事なら 和田特機株式会社

建設業向け 業務支援タブレットアプリシリーズ 好評発売中

和田特機株式会社HP

PC上で元の連続波形を再現する?

二週間のご無沙汰でした。SALです。
前回求めた、各標本点での傾きを利用して、全域で連続&滑らかな関数を求めることを説明します。

先ず、隣り合う二点間を三次のペジエ曲線で継いでみます。
この関数の4つの係数は簡単に求めることが出来ます。
(係数を逆算する行列の各要素は単純な整数になります)
評価を関数の生成法に限定する為に、正しい傾きを与えた結果、
fs/3 の中点で、-4.66% となり、不満が残ります。

そこで、更に外側の二点を通ることを条件にして、五次式に拡張してみましたが、
複雑化した割には、それ程効果的ではありませんでした。
SALはNGと断定しました。

次に追加した2点での傾きも合わせることにして、七次の拡張ペジエ曲線(?)なるものを考えてみました。
係数を逆算する行列の各要素は、3996(=2*2*3*3*111) を共通分母に持つ分数になってしまいますが、中点の算出に限れば、驚くほど簡単な式になります。
これを使うと、fs/3 の中点での誤差率は、-0.23% となります。
因みに、目標のfs(2/5)でも、-0.88% です。
全く意味の無い比較ですが、
全標本点がゼロである fs/2 でも、-4.28% の誤差で収まります。
そこで、この式で中点を求める方式を P40 として、実装してみました。

目標とした誤差の範囲内で、アナログ波形の再現が出来たので、
任意のサンプリングレートでリサンプリング可能になりました。
先に述べた P40 は、この方式の特殊ケースに当たります。
更に、4分割の P44 プロトコルを導入して、従来の二度掛けアップサンプリングと比較できるようにしてみました。

次回は、いよいよ本格的なリサンプリングの実装についてお話したいと思います。

:お詫び:
12月17日より、ダウンロードによるWFPの提供を開始しましたが、以下の不具合がありますので注意してください。
P40 でメモリーアロケーションエラーを起こすと、マウスカーソルが待ち状態(所謂砂時計)のままになります。
これは、デフォルトの例外処理が働いてしまった為で、実際に待ち状態な訳ではありません。
この様になった場合は、WFPを「Exit」ボタンで一度終了してください。
終了せずに、そのまま操作を続けることも可能ですが、メモリーリークが発生してしまいます。
P40 では、最大で6倍のメモリを必要としますので、ファイルサイズで250MBあたりが限度と考えてください。
この問題は解決済みですが、現在リサンプリング機能を検証中につき、今暫くお待ちください。
なお、次回のアップロードはお正月休み前を予定しております。

コメント