Я пытаюсь отобразить в подпункте две вещи
1.сегмент сигнала на подкадре кадров (211) 2. значения некоторых формант -подпот (212)
И я делаю это для нескольких кадров. Я использую «паузу» для отображения покадрово.
И вот моя проблема:
Отображается первый подзаговоркадр за кадром, но на моем втором субплоте кадры добавляются к предыдущим, поэтому я не могу по-настоящему преуспеть между значениями формант.
Может ли кто-нибудь помочь мне иметь на втором субплоте только формантыдля текущего кадра, а не для добавления во второй кадр!
Вот мой код:
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