Rav*_*rma 3 java speech-recognition
我正在使用wav文件作为输入进行语音2文本转换的原型.我目前正在试验几个ASR,如Microsoft SAPi,Sphinx等.传递的音频wav文件包含来自背景的几个失真/噪音.我尝试使用大胆来完全消除噪音,识别变得更好了.噪音去除部分,我目前通过提供的Ui进行.我的背景是java,我想用java实现相同的噪声消除部分.我已经下载了Audacity源代码,我想知道哪种方法更好.1)只需尝试对已存在的C++方法进行jni调用.2)使用傅立叶变换实现我自己的噪声门机制.然而在后一种方法中,它更像是重新发明轮子.是否有一个标准的api /算法已经在java中实现,它将接收wav文件输入并通过实现高/低通滤波器或任何其他方法来执行噪声消除.
我试图搜索"带有Java的数字音频"这本书,它似乎包含DSP算法,但它不可用.任何有关采取的方法或apis可用的帮助都会非常有帮助.
你可以试试:
使用语音定位 - >如果以立体声录制,声音通常在左右声道中相等.一般来说,噪声在一个通道中比另一个通道更强.
阅读有关消除噪音的内容:http://www.developer.com/java/other/article.php/3599661/Adaptive-Noise-Cancellation-using-Java.htm
使用低通滤波器:如何使用java实现低通滤波器
如果您可以处理录制条件,请将一个麦克风放在扬声器后面,并从语音麦克风中移除此信号.