【发布时间】:2016-03-15 11:55:16
【问题描述】:
我正在尝试查找 .wav 文件的峰值并使用 findpeaks 方法
a = audioread('FilterNew.wav');
[pks,locs] = findpeaks(a)
但是当我运行脚本时,它给了我 3 个错误
使用 findpeaks 时出错 期望 Y 是一个向量。
findpeaks 中的错误>parse_inputs(第 189 行) validateattributes(Yin,{'numeric'},{'nonempty','real','vector'},...
findpeaks 中的错误(第 131 行) [y,yIsRow,x,xIsRow,minH,minP,minW,maxW,minD,minT,maxN,sortDir,annotate,refW] ...
我试过谷歌搜索,但没有找到任何答案,所以我希望在这里得到一些帮助。代码有什么问题?还是我的 .wav 文件损坏了?!?
谢谢
感谢 mathematician1975 设法绘制图表。
现在,我正在尝试绘制峰值图并标记左右两边的峰值,但它给了我一个错误 使用绘图时出错 向量的长度必须相同
所以我检查了尺寸
>> size(a(1,:))
ans =
1 2
>> size(a(:,2))
ans =
467712 1
我的代码
a = audioread('FilterNew.wav');
[pks,locs] = findpeaks(a(:,1));
[pks2,locs2] = findpeaks(a(:,2));
figure
x = (1:length(a));
plot(x,a,'k');
figure
z = (1:length(a));
plot(z,a,'k');
hold on
plot(locs,pks,'go');
hold on
plot(locs2,pks2,'ro');
我该如何解决?再次感谢您!
【问题讨论】:
标签: matlab audio max signal-processing