How should I choose the OperatingFrequency parameter in phased array system toolbox functions for audio signal processing?
1 次查看(过去 30 天)
显示 更早的评论
I am trying to create beamforming algorithms for speech and audio processing applications using the PhaseShiftBeamformer() and SubbandMVDRBeamformer() objects. For my applications I am using a sample rate of 16000Hz.
From the examples in MATLAB documentation, I can see that OperatingFrequency refers to the carrier frequency in applications involving electromagnetic signals. However, in audio processing, we typically do not use any form of modulation.
What should I set the OperatingFrequency parameter to for audio processing?
Or is the SubbandMVDRBeamformer() not designed to work with audio signals? Should I use the FrostBeamformer() instead?
0 个评论
回答(1 个)
Shubham
2023-7-26
Hi Sattwik,
In audio processing applications, the OperatingFrequency parameter in beamforming algorithms does not have a direct correspondence to carrier frequency used in electromagnetic signal applications. Instead, it represents the centre frequency of the audio signal or the frequency of interest for beamforming.
For audio processing, you can set the OperatingFrequency parameter to the center frequency of the audio band you are interested in. This frequency should be within the range of the audio signal you are processing. For your case, since the sampling frequency is 16000 Hz, so you should keep the operating frequency around 8000 Hz.
The “SubbandMVDRBeamformer()” is designed to work with audio signals and can be used for audio beamforming applications. It operates in the frequency domain by dividing the input signal into sub bands and applying the Minimum Variance Distortionless Response (MVDR) beamforming technique to each sub band.
On the other hand, the “FrostBeamformer()” is also suitable for audio processing and operates in the time domain. It uses the Frost beamforming algorithm, which is a popular choice for speech enhancement applications.
Both “SubbandMVDRBeamformer()” and “FrostBeamformer()” can be used for audio beamforming, but they differ in their implementation and performance characteristics. You can choose the one that best suits your specific requirements and experiment with both to see which one provides better results for your application.
2 个评论
Shubham
2023-7-31
编辑:Shubham
2023-7-31
Hi Sattwack,
When using the phased.WidebandCollector object for audio processing, the 'CarrierFrequency' parameter is typically used for modulated signals, such as those used in wireless communications. Since your signals are not modulated, you can set the 'CarrierFrequency' to any value that is within the operating range of your audio system.
For audio processing, it is common to use an audio sampling rate, such as 44.1 kHz or 48 kHz, as the carrier frequency. These values are commonly used in audio applications and should work well for your microphone array data.
However, it's important to note that the 'CarrierFrequency' parameter does not have a direct impact on audio processing or the performance of the FrostBeamformer. It is primarily used for setting up the WidebandCollector object and is not directly related to your audio processing requirements.
另请参阅
类别
在 Help Center 和 File Exchange 中查找有关 Sonar and Spatial Audio 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!