本申请属于蓝牙音频,特别是涉及一种基于非负矩阵分解的蓝牙接收端语音降噪方法、装置、存储介质及设备。
背景技术:
1、目前主流的蓝牙音频编码器包括:sbc:a2dp协议强制要求,使用最为广泛,是所有的蓝牙音频设备必须支持的,但音质一般;aac-lc:音质较好且应用较为广泛,很多主流的手机都支持,但与sbc相比,内存占用较大,且运算复杂度高,很多蓝牙设备都基于嵌入式平台,电池容量有限,处理器运算能力较差且内存有限,而且,其专利费较高;aptx系列:音质较好,但码率很高,aptx需要码率384kbps,而aptx-hd的码率为576kbps,且为高通独有的技术,较为封闭;ldac:音质较好,但码率也很高,分别是330kbps,660kbps和990kbps,由于蓝牙设备所处的无线环境特别复杂,稳定支持如此高的码率有一定的困难,且为索尼独有的技术,也很封闭;lhdc:音质较好,但码率也很高,典型的包括400kbps,600kbps和900kbps,如此高的码率,对于蓝牙的基带/射频设计提出了很高的要求。基于上述原因,蓝牙国际联盟bluetooth sig联合众多厂商推出了lc3,主要面向低功耗蓝牙,也可以用于经典蓝牙,其具有较低延迟、较高的音质和编码增益以及在蓝牙领域无专利费的优点,受到广大厂商的关注。
2、在很多蓝牙应用中,如蓝牙通话、蓝牙麦克风以及录音等,都需要进行降噪。
3、非负矩阵分解(nonnegative matrix factorization),简称nmf,使分解后的所有矩阵分量均为非负值,同时实现非线性的降维。nmf已逐渐成为信号处理、生物医学工程、模式识别、计算机视觉和图像工程等研究领域中最受欢迎的多维数据处理工具之一。非负矩阵分解在信号分离应用中有很多应用,现有技术中,使用非负矩阵分实现语音降噪的一种方法,包括线下训练过程和实时降噪过程,简述如下:
4、(1)线下训练,包括:选取纯净语音和噪声构建训练集;对训练集做特征提取,即执行傅里叶变换并获取幅度谱;使用纯净语音幅度谱构建纯净语音幅度谱矩阵vspeech;使用噪声幅度谱构建噪声幅度谱矩阵vnoise;对纯净语音幅度谱矩阵和噪声幅度谱矩阵执行非负矩阵分解获得纯净语音基础矩阵wspeech和噪声基础矩阵wnoise。
5、(2)实时降噪,包括:对带噪语音做特征提取获取幅度谱并构建幅度谱观察矩阵vnoisy;基于训练输出的基础矩阵,对带噪语音幅度谱矩阵执行非负矩阵分解获得激活矩阵h′speech和h′noise;计算语音和噪声的幅度谱;估计信噪比;构建维纳滤波器;对带噪幅度谱滤波;结合带噪语音信号的相位谱与滤波后的幅度谱执行傅里叶逆变换获得降噪后的语音。
6、上述方法的不足之处在于:非负矩阵分解使用基于fft输出的幅度谱,导致幅度谱矩阵、分解得到的基础矩阵和激活矩阵尺寸较大,矩阵分解时,尺寸越大,运算越复杂,限制了其应用范围;在对降噪语音的幅度谱执行傅里叶逆变换时使用了带噪语音的相位谱,由于带噪语音的相位谱与纯净语音的幅度谱有所差别,这也降低了降噪重建后的语音质量;现有技术会引入算法延迟,增加应用实施的难度。
技术实现思路
1、针对现有技术中存在的上述技术问题,本申请提供了一种基于非负矩阵分解的蓝牙接收端语音降噪方法、装置、存储介质及设备,在蓝牙接收端,对码流执行部分解码得到离散余弦变换谱系数,然后基于子带能量执行非负矩阵分解实现降噪,保证了音质,减小了矩阵的尺寸,极大降低了运算量,并可有效延长蓝牙耳机的使用时间,提高了用户体验。
2、为了实现上述目的,本申请采用的第一个技术方案是:提供一种基于非负矩阵分解的蓝牙接收端语音降噪方法,包括:在蓝牙接收端,输入单声道带噪语音码流,并执行解码至变换域噪声整形,得到mdct谱系数;根据mdct谱系数计算子带能量,并构建子带能量观察矩阵;对子带能量观察矩阵执行非负矩阵分解,并计算语音子带能量值和噪声子带能量值;根据语音子带能量值和噪声子带能量值计算子带降噪增益,并对子带降噪增益执行插值,得到所有的频仓增益;根据频仓增益和mdct谱系数,得到降噪谱系数;以及对降噪谱系数继续执行解码过程,输出降噪语音pcm数据。
3、本申请采用的第二个技术方案是:提供一种基于非负矩阵分解的蓝牙接收端语音降噪装置,包括:用于在蓝牙接收端,输入单声道带噪语音码流,并执行解码至变换域噪声整形,得到mdct谱系数的模块;用于根据mdct谱系数计算子带能量,并构建子带能量观察矩阵的模块;用于对子带能量观察矩阵执行非负矩阵分解,并计算语音子带能量值和噪声子带能量值的模块;用于根据语音子带能量值和噪声子带能量值计算子带降噪增益,并对子带降噪增益执行插值,得到所有的频仓增益的模块;用于根据频仓增益和mdct谱系数,得到降噪谱系数的模块;以及用于对降噪谱系数继续执行解码过程,输出降噪语音pcm数据的模块。
4、本申请采用的第三个技术方案是:提供一种计算机可读存储介质,其存储有计算机指令,其中计算机指令被操作以执行方案一中的基于非负矩阵分解的蓝牙接收端语音降噪方法。
5、本申请采用的第四个技术方案是:提供一种计算机设备,其包括处理器和存储器,存储器存储有计算机指令,其中处理器操作计算机指令以执行方案一中的基于非负矩阵分解的蓝牙接收端语音降噪方法。
6、本申请技术方案可以达到的有益效果是:本申请的技术方案既可以应用于经典蓝牙(br、edr),也可以应用于低功耗蓝牙(le、le audio),在蓝牙接收端,基于对码流执行部分解码得到的离散余弦变换谱系数,避免了现有技术中需要使用带噪语音的相位进行重建导致的音质降低的问题,然后再基于子带能量谱执行非负矩阵分解实现降噪,保证了音质,降低了矩阵的维度,能够极大地降低运算量,并可有效延长蓝牙耳机的使用时间,提高用户体验。
1.一种基于非负矩阵分解的蓝牙接收端语音降噪方法,其特征在于,包括:
2.根据权利要求1所述的基于非负矩阵分解的蓝牙接收端语音降噪方法,其特征在于,所述根据所述mdct谱系数计算子带能量,包括:
3.根据权利要求1所述的基于非负矩阵分解的蓝牙接收端语音降噪方法,其特征在于,所述对所述子带能量观察矩阵执行非负矩阵分解,包括:
4.根据权利要求3所述的基于非负矩阵分解的蓝牙接收端语音降噪方法,其特征在于,所述计算语音子带能量值和噪声子带能量值,包括:
5.根据权利要求1所述的基于非负矩阵分解的蓝牙接收端语音降噪方法,其特征在于,所述根据所述频仓增益和所述mdct谱系数,得到降噪谱系数,包括:
6.根据权利要求2所述的基于非负矩阵分解的蓝牙接收端语音降噪方法,其特征在于,所述对所述子带降噪增益执行插值,得到所有的频仓增益,包括:
7.根据权利要求1所述的基于非负矩阵分解的蓝牙接收端语音降噪方法,其特征在于,所述对所述降噪谱系数继续执行解码过程,包括:
8.一种基于非负矩阵分解的蓝牙接收端语音降噪装置,其特征在于,包括:
9.一种计算机可读存储介质,其存储有计算机指令,其中所述计算机指令被操作以执行权利要求1-7任一项所述的基于非负矩阵分解的蓝牙接收端语音降噪方法。
10.一种计算机设备,其包括处理器和存储器,所述存储器存储有计算机指令,其中所述处理器操作所述计算机指令以执行权利要求1-7任一项所述的基于非负矩阵分解的蓝牙接收端语音降噪方法。