我用Delphi做了测试应用程序,使用Windows API Beep函数发出摩尔斯电码。然后在Android中制作了一个应用程序,将此摩尔斯电码存储在WAV文件中。现在我希望Android应用程序能够解码摩尔斯电码。有没有一些声音处理的教程,或者有人可以发布一些简单的代码(认为这里没有简单性)作为一个例子?或者我需要做些什么才能让它正常工作?
我还下载了JTransforms和jfttw库,但真的不知道从哪里开始。
向你致敬,伊维隆
发布于 2011-09-02 00:50:27
对于这一点,快速傅立叶变换有点过头了--你只需使用一个简单的Goertzel filter将摩尔斯电码从背景噪声中分离出来,然后解码输出。
发布于 2011-09-02 00:52:25
我想几年前的一期QST杂志上有一篇关于DSP的Morse/CW解码的文章。可能会想试着搜索一下他们的档案。
基本上,您需要DSP代码来确定在任何给定的时间点是否存在音调,以及每个音调的开始和关闭时间的估计。然后缩放每个音调的持续时间和音调之间的间隔时间以获得预期的编码速度,并与每个摩尔斯电码字母的计时表进行比较,以估计每个字母或任何字母出现的概率。
在最简单的情况下,您可能有一个点划线空间决策树。在严重的噪声和衰落加上高度个性化的拳头/计时中,你可能需要一些复杂的统计和/或自适应音频模式匹配技术来获得良好的结果。
https://stackoverflow.com/questions/7273153
复制相似问题