morse-wip/README

97 wiersze
2.2 KiB
Plaintext

MORSE - PROJECT IDEAS
0. To build/install from scratch
aclocal
autoconf
autoheader
automake --add-missing
./configure
make
http://inti.sourceforge.net/tutorial/libinti/autotoolsproject.html
1. Build a simple to use C/C++ advanced Bayesian Morse decoder library
Basic use case example:
#include "morse.h"
...
morse_init(modelparams);
...
...
decode_process(double value) {
char *morsechr;
...
// detected signal value after AGC and filtering
if ( morse_decode(value, morsechr) )
printf("%s", morsechr);
...
}
This can be integrated to any system, even as embedded code.
FLDIGI as the first integration target.
2. Build an automated test framework and a test gallery of datasets.
Input
Wav or MP3 files and transcript files
- resampling code from here http://www.mega-nerd.com/SRC/index.html
Synthetic test datasets (known SNR, timing, speed)
Real world datasets
Model parameters
Output
SER vs. SNR graphs DONE
- can be created using OpenOffice (LibreOffice Calc)
- plot for different filter widths (aka -spd parameter)
- run through different parameter values using automated TCL script
-> automate CSV file generation
-> capture best values & corresponding software versions in SQLITE3 database
<SW version> < date> <parameters,like filter bw> <CER vs. SNR value pairs>
SER vs. timing variations
- need to create morse.m version with timing variability functionality
-
SER vs. speed variations
- need to create morse.m version with speed variability functionality
SER per character
-
Misrecognition distribution (input chr vs. output chr)
- i.e. A recognized as U
- confusion matrix
Symbol Error Rate (SER)
- print recognized symbols ". - ~ ^ w p"
- use Levenshtein distance calculation as error metric
-
Path length vs. SNR
-
Estimated speed vs. actual speed distribution
-
examples:
http://www.yorku.ca/mack/IWC99.html
Test cases repository
regression testing
test results by software version
http://orgmode.org/worg/org-contrib/babel/examples/data-collection-analysis.html