HoerTech-gGmbH / openMHA

The open Master Hearing Aid (openMHA)
http://www.openmha.org
GNU Affero General Public License v3.0
245 stars 73 forks source link

A quick question about the mvdr filter #30

Closed yuan9778 closed 5 years ago

yuan9778 commented 5 years ago

This is more of a question than an issue. I tried your example 06-binaural-beamformer and noticed it used a mvdr filter. I was wondering how you guys generate the filter file. I read your documents and failed to find the answer. Could you provide some hints? Thanks much!

Regards, Sanqing

hendrikkayser commented 5 years ago

Dear Sanqing, the filter file was generated in Matlab using Matlab's freqz function with the head-related impulse responses (HRIR, http://medi.uni-oldenburg.de/hrir/) that are mentioned in the example configuration. The filter coefficients for the steering vectors were derived directly from the according HRIRs (measured with the hearing aid microphones). Regarding the noise covariance term in the MVDR solution a spatially diffuse noise field was assumed. This was realized by accumulating HRIRs from all azimuth angles available in the database for the horizontal plane (0° elevation) and computing the covariance matrix from the resulting transfer characteristics. Currently we do not have such a Matlab script available in the openMHA tool set, but actually we plan to prepare one for one of the next releases. I hope this helps you for the time being!

Best, Hendrik