It's difficult to tell what is being asked here. This question is ambiguous, vague, incomplete, overly broad, or rhetorical and cannot be reasonably answered in its current form. For help clarifying this question so that it can be reopened,
visit the help center。
7年前关闭。
我有一个关于使用Matlab进行音频匹配的项目。因此,有几个正确和错误的声音文件。每个正确的文件都是一个人说“4、6、8”的声音。每个错误的文件都有不同的编号顺序,例如“6,4,8”或“4,8,6”。我应该用matlab检测是否已经说出正确的顺序。因此,如果播放了正确的声音,则必须显示“ACCEPTED”,如果播放了错误的声音,则必须显示“NOT ACCEPTED”。
我知道我应该对每种正确的声音进行时频分析并识别出一种模式。然后,我可以简单地为每个时间间隔设置一个频率阈值。 EG:如果频率为1KHz,则从0.1秒到0.9秒,然后显示“ACCEPTED”。
但是,我不知道该如何编写程序。另外,如何在时间频率分析中获得每个数字的频率的准确值?
这是我到目前为止的规范代码
[right1, Fs] = wavread('C:\Users\Fazrina\Downloads\CorrectSequence1');
figure (1)
subplot(2,1,1), plot(right1), axis('tight');
subplot(2,1,2), specgram(right1,512,Fs);