Sound source localization with beamforming
6 次查看(过去 30 天)
显示 更早的评论
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 个评论
回答(1 个)
douaer belgacem
2017-4-4
编辑:douaer belgacem
2017-4-4
hi sir , can you explain more because he did't work for me ( the devices).thank you
0 个评论
另请参阅
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!