cwdecoder の解読精度は如何なものでしょうか。
簡単な試験をしてみました。
78文字の欧文と46文字の和文をそれぞれパソコンからオーディオ出力して、cwdecoder で解読ミスした文字数をカウントしました。
<欧文> 78文字
ABCDEFGHIJKLMNOPQRSTUVWXYZ
ABCDEFGHIJKLMNOPQRSTUVWXYZ
ABCDEFGHIJKLMNOPQRSTUVWXYZ
<和文> 46文字
あいうえおかきくけこさしすせそたちつてとなにぬ
ねのはひふへほまみむめもやゆよらりるれろわをん
cwdecoder のトーン周波数は 558Hz に設定されているので、 CW MANIA を 560Hz に設定しています。
結果
実はこれまで、この手の CW 解読器を購入したこともなく使ったことがないので、
この結果がどうなのか、私にはさっぱり分かりません。
市販されている CW 解読器は 30 wpm の速度でも正確に解読できるものなのでしょうか。
とても気になります。。。
速度(wpm) | 欧文 | 和文 |
10 | 0/78 | 0/46 |
15 | 0/78 | 0/46 |
20 | 0/78 | 0/46 |
25 | 2/78 | 2/46 |
27 | 2/78 | 2/46 |
28 | 6/78 | 1/46 |
29 | 8/78 | 9/46 |
30 | 約3割ミス | 約5割ミス |
※試験は2回ずつ行いミスが多い方を採用しています。
※サンプル数 N が小さいので、あくまでも参考程度ということで。
"W" と解読してほしいところを "△M" とは・・・ おしい。
まあ、今回の結果からも分かるように 25 wpm で解読ミスが少ないので、私としては満足してるのですが・・・
ホントのところは分かりません。。。
他の解読器と比較するためのネタがほしいところです。
スケッチを見ていると「Goertzel アルゴリズム」のパラメータを変化させることで、もう少しチューニングができそうなので、30 wpm で最適化するパラメータを模索してみようかと思います。
Arduino のような非力なマイコンでの復号はこの精度が限界なのでしょうか。
やはり ARM プロセッサーのような高速なマイコンを使って信号処理する必要があるのでしょうか。
もう一声、サンプリング周波数が高くできれば・・・と思うのですが。
ここまできたら 30 wpm でも 95% 以上の精度で解読させたいものです。
これは将来の課題ですかね。。。
取りあえず、今日はここまで。