Sound source localization with beamforming
Afficher commentaires plus anciens
Hello everyone, I am trying to reconstruct the Sound source coming from a ultrasonic transducer with real data. I have 16 microphones and the real data recieved by microphones is imported in my code as recon 30000*16 matice. I am using MVDR beamformer and PlotSpectrum(hMVDR) function to localize the source. I will be happy if you could help me to run the code with your ideas. here is my code:
h = phased.ConformalArray();
t= 1/2*(1+sqrt(5));
n=16;
c= ones(n,1)';
c(:)=1:16;
h.ElementPosition = [0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0;...
(sqrt(c).*cos(2*pi*t*c))*0.0375;(sqrt(c).*sin(2*pi*t*c))*0.0375];
h.ElementNormal = [0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0;0 0 0 0 0 ...
0 0 0 0 0 0 0 0 0 0 0];
h.Element = ...
phased.OmnidirectionalMicrophoneElement('BackBaffled',true,...
'FrequencyRange',[48e3 570e3]);
t=0:1/20e6:1.5e-3;
c = 343;
fc = 520000; % Operating frequency
hMVDR = phased.MVDRBeamformer('SensorArray',h,...
'OperatingFrequency',fc,'PropagationSpeed',c,'WeightsOutputPort',true);
[y,w] = step(hMVDR,recon);
M=mean(recon,2);
figure;
% Plot signals
plot(t(1:30000),real(M(1:30000)),'r:',t(1:30000),real(y(1:30000)));
xlabel('Time'); ylabel('Amplitude');
legend('Original','Beamformed');
title('MVDR Beamformer');
plotSpectrum(hMVDR);
3 commentaires
Honglei Chen
le 7 Déc 2016
Could you elaborate what the problem is? What is the plot you get?
Ali Movahed
le 16 Déc 2016
Muhammad Usman Liaquat
le 9 Sep 2019
Hello Ali!
can you plz share your email address or contact details?
Réponses (1)
douaer belgacem
le 4 Avr 2017
Modifié(e) : douaer belgacem
le 4 Avr 2017
0 votes
hi sir , can you explain more because he did't work for me ( the devices).thank you
Catégories
En savoir plus sur Beamforming dans Centre d'aide et File Exchange
Produits
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!