1
我試圖在一個插曲顯示兩件事情問題在MATLAB
上框架上副區的信號的1.A段(211) - 酮一些共振峯的 2.值副區副區( 212)
而我這樣做了一些frames.I'm使用「暫停」逐幀顯示。
這裏是我的問題:
顯示第一個插曲逐幀,但我的第二個插曲幀被添加到以前的,所以我真的不能贏得成功主頻的值之間。
有人可以幫助我在我的第二個副圖上有formants只爲當前幀,不會被添加到第二幀!
這裏是我的代碼:
for k=1:Nc
.............
y_sint=filter(g_p,A_p,g_signal);
figure(1);
subplot(211);
plot(y_sint);
fm1=0;
ft1=0;
while((k-1)*N<=(pos+ms))&((pos+ms)<=k*N)
y1=X(pos:pos+50-1);%calculez coeficientii filtrului folosind metoda lpc
a1=lpc(y1,ncoeff);
r1=roots(a1);
r1=r1(imag(r1)>0.01);
ffreq=sort(atan2(imag(r1),real(r1))*Fs/(2*pi));%converteste in Hz
fm1=[fm1 ffreq(3)];
ft1=[ft1 pos/Fs];
pos=pos+ms;
end
subplot(212);
plot(ft1,fm1,'*');
legend('Formants');
xlabel('Time (s)');
ylabel('Frequency (Hz)');
pause
end
不是這樣的問題!!!我試圖顯示幀中的第二個子圖,但它只是添加到以前的幀......我想只顯示當前幀...就像子圖1 – embry 2011-05-21 14:14:41
我用drawnow,就是一樣! – embry 2011-05-21 14:16:53
我很難理解你...你的意思是你想從同一個迭代中得到'subplot1'和'subplot2'在一個圖中。相反,你會在下圖中看到'subplot2'?我看不出你的代碼在這裏怎麼會發生這種情況.. – 2011-05-21 14:28:23