-
Notifications
You must be signed in to change notification settings - Fork 5
/
Copy pathfeatures.asv
executable file
·32 lines (23 loc) · 1.05 KB
/
features.asv
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
function [theta]=features(Y1,Y2,fs,fk)
%Assumo che tutti i segnali contengano parlato, dunque max freq facciamo
%esagerando il Nyquist, ovvero circa 11Khz, poichè campioniamo a 22050Hz.
%Allora c/f=lambda, cioè 340/11000=lambda in metri, e dmax per poter
%ascoltare tutte le sorgenti da -pi/2 a +pi/2 senza aliasing angolare e
%dunque di frequenza spaziale, dmax=lambda/2
f=fs/2;
c=340; %velocità
dmax=(c/2*f); %è già in metri
alfa=(4*pi*dmax)/c; %dmax va espressa in metri, ed è la distanza massima anti-aliasing angolare per i sensori
A=sqrt(sum(sum((abs(Y1(:)).^2+abs(Y2(:)).^2))));
w1=length(Y1(1,:));
l1=length(Y1(:,1));
w2=length(Y2(1,:));
l2=length(Y2(:,1));
Y1amp=reshape(abs(Y1)/A,w1*l1,1);
Y2amp=reshape(abs(Y2)/A,w2*l2,1);
FAS=angle(Y2./Y1);
theta=[Y1amp; Y2amp];
%ora la feature 1 contiene tutte le ampiezze normalizzate dei bin in
%frequenza di ogni finestra del segnale osservato al mic1, e concatenato a
%questa serie di dati che è stata caricata come vettore colonna, c'è lo
%stesso tipo di sequenza ma associata alla stft dei dati osservati al mic2