使用java从wav文件中提取人类的声音

前端之家收集整理的这篇文章主要介绍了使用java从wav文件中提取人类的声音前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我正在从事一个项目,我必须使用 java从音频.wav文件提取人类的声音.

音频.wav文件可能有3到4个声音,如狗,猫,音乐和人类.我将必须识别人类的声音,然后从音频.wav文件删除该部分.

我正在使用FFT.javaComplex.java.

现在我写了一个AudioFileReader类,它从硬盘驱动器读取audio.wav文件,然后将其转换为字节数组.然后使用上面提到的FFT.java和Complex.java应用FFT.fft(bytesArray),它给出了复数数组的返回值;

现在的问题是如何从返回的Complex数组中提取人类的声音字节模式…有没有人知道我可以如何实现这一点?

编辑:我们假设一个非常简单的audio.wav文件.例如,猫的声音然后沉默,人的声音然后沉默,狗的声音然后沉默等没有混合的声音.

解决方法

我认为处理这样​​的问题的标准方法是将输入信号转换成倒谱或梅尔倒谱表示,然后使用特征空间的系数输入到分类器中.有很多研究论文基于这种基本方法讨论了解决这些问题的方法,例如:

http://www.ics.forth.gr/netlab/data/J17.pdf

您可能尝试的一个可能的捷径是将输入信号通过诸如AMBE的低比特率声码器进行解码,然后将原始信号的质量与编码/解码的信号进行比较.这些声码器被设计为以不能充分代表非言语声音为代价,以高质量高度压缩人类言语.

原文链接:https://www.f2er.com/java/126527.html

猜你在找的Java相关文章