首页 > 编程语言 > 详细

麦克风阵列技术-beaforming开源算法源码分析

时间:2021-02-26 19:26:14      阅读:45      评论:0      收藏:0      [点我收藏+]

概述

? 在音频前端处理算法中,beamforming算法是一个无法绕过的存在,随着AI技术的广泛发展,前端语音技术的需求也在呈现个性化的动态范围。作为一个深耕音频算法多年的老兵,发现站在巨人的肩膀上,才能做出对得起客户的产品。今天就分析一下一个开源的beamforming算法。

        技术分享图片 

算法流程

? 步骤一:预处理

预处理内容:

A 加窗:为傅里叶变换做准备,防止频谱泄露。
B 傅里叶变换:通过傅里叶变换,获取每路麦克风的频域值大小.
C 求权重因子:获取每路麦克风的权重因子.

? 步骤二:beamforming流程

beamforming算法流程

A 加载加权过的频谱数据
B 计算不同麦克风之间的互相关系数
C 寻找音频方向源头: 计算每个麦克风的最大能量
D 复位最大值相关的延时系数.
E 计算人声可能范围的概率系数

? 步骤三:跟踪人声声源

跟踪算法效果:

A 滤波器滤波:预测滤波器先进行滤波.
B 计算每个麦克风的先验概率.
C 根据当前值计算概率
D 计算概率系数f的值.
E 计算并更新每个粒度的因子
F 添加或删除跟踪源
G 确认是否停止跟踪某个源
H 计算每个源的位置
L 对每个源进行重采样

? 步骤四:人声分离

降噪处理流程:

A 加载分离后的源
B 噪声统计
C 计算噪声泄露
D 计算拉姆达因子
E 噪声叠加
F 计算噪声总量
G 提取人声
H 增益因子应用

? 步骤四:后置滤波器

人声提取流程:

A 加载跟踪源
B 计算矩阵信息
C 计算每个帧信息
D 导出帧信息.

技术分享图片 

算法总结

?总的来说,该算法还是比较新的,各项指标比较完善,并且代码水平写的比较高。笔者分析完成之后,真是受益很大。

 

参考文档

?
1 经典书籍:http://www.labbookpages.co.uk/audio/beamforming/delaySum.html

麦克风阵列技术-beaforming开源算法源码分析

原文:https://www.cnblogs.com/dylancao/p/14453288.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!