Sound source localization with beamforming

5 views (last 30 days)
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 Comments
Ali Movahed
Ali Movahed on 16 Dec 2016
Hi, The Problem is I just get the first plot which is the time Domain beamforming and I do not get the second plot which is the localizetion of the sources. First, I have designed my microphone Array, after that I Import my recorded Signal from ultrasound transducers and finally I do MVDR beamforming. I suppose with PlotSpectrum(hMVDR), I will be getting the localization of sources. Hope ist clear. Thanks
Muhammad Usman Liaquat
Muhammad Usman Liaquat on 9 Sep 2019
Hello Ali!
can you plz share your email address or contact details?

Sign in to comment.

Answers (1)

douaer belgacem
douaer belgacem on 4 Apr 2017
Edited: douaer belgacem on 4 Apr 2017
hi sir , can you explain more because he did't work for me ( the devices).thank you

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!