CN109979476B - 一种语音去混响的方法及装置 - Google Patents

一种语音去混响的方法及装置 Download PDF

Info

Publication number
CN109979476B
CN109979476B CN201711460558.8A CN201711460558A CN109979476B CN 109979476 B CN109979476 B CN 109979476B CN 201711460558 A CN201711460558 A CN 201711460558A CN 109979476 B CN109979476 B CN 109979476B
Authority
CN
China
Prior art keywords
frame
voice signal
spectrum vector
signal
frequency point
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN201711460558.8A
Other languages
English (en)
Other versions
CN109979476A (zh
Inventor
李佳芮
梁民
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
China Academy of Telecommunications Technology CATT
Original Assignee
China Academy of Telecommunications Technology CATT
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by China Academy of Telecommunications Technology CATT filed Critical China Academy of Telecommunications Technology CATT
Priority to CN201711460558.8A priority Critical patent/CN109979476B/zh
Publication of CN109979476A publication Critical patent/CN109979476A/zh
Application granted granted Critical
Publication of CN109979476B publication Critical patent/CN109979476B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L21/00Speech or voice signal processing techniques to produce another audible or non-audible signal, e.g. visual or tactile, in order to modify its quality or its intelligibility
    • G10L21/02Speech enhancement, e.g. noise reduction or echo cancellation
    • G10L21/0208Noise filtering
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L25/00Speech or voice analysis techniques not restricted to a single one of groups G10L15/00 - G10L21/00
    • G10L25/03Speech or voice analysis techniques not restricted to a single one of groups G10L15/00 - G10L21/00 characterised by the type of extracted parameters
    • G10L25/18Speech or voice analysis techniques not restricted to a single one of groups G10L15/00 - G10L21/00 characterised by the type of extracted parameters the extracted parameters being spectral information of each sub-band
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L21/00Speech or voice signal processing techniques to produce another audible or non-audible signal, e.g. visual or tactile, in order to modify its quality or its intelligibility
    • G10L21/02Speech enhancement, e.g. noise reduction or echo cancellation
    • G10L21/0208Noise filtering
    • G10L2021/02082Noise filtering the noise being echo, reverberation of the speech

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Computational Linguistics (AREA)
  • Signal Processing (AREA)
  • Health & Medical Sciences (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • Human Computer Interaction (AREA)
  • Acoustics & Sound (AREA)
  • Multimedia (AREA)
  • Quality & Reliability (AREA)
  • Spectroscopy & Molecular Physics (AREA)
  • Circuit For Audible Band Transducer (AREA)

Abstract

本发明提供一种语音去混响的方法及装置。该语音去混响的方法,包括:获取麦克风阵列捕获的每帧语音信号的频谱矢量;根据所述每帧语音信号的频谱矢量,分别获取检测结果为语音的信号帧的第一频点以及检测结果为非语音的信号帧的第二频点;获取所述第一频点中每一频点处的频谱的去混响后的第一语音信号频谱矢量,并根据所述第一语音信号频谱矢量对每一频点的加权预测误差的预测系数矩阵进行更新;获取第二频点中每一频点的频谱进行衰减后的非语音信号频谱矢量;根据第一语音信号频谱矢量和非语音信号频谱矢量,获取去混响语音信号。上述方案,实现了语音信号的实时处理,降低了计算量,减低了噪音对语音信号的影响,提高了语音通信系统和ASR的性能。

Description

一种语音去混响的方法及装置
技术领域
本发明涉及语音信号处理技术领域,特别涉及一种语音去混响的方法及装置。
背景技术
语音信号在室内会发生混响效应,这一混响的语音通常严重地降低了通信系统中语音可懂度和自动语音识别系统(ASR)中语音正确识别率。
对于现有的去混响技术均有各自的技术缺陷,尤其是在利用离线WPE进行语音处理时,其不能实时处理语音信号、计算量较大、易受噪声影响,无法改善和提高语音通信系统和ASR的性能。
发明内容
本发明实施例提供一种语音去混响的方法及装置,以解决在利用离线WPE进行语音处理时,因不能实时处理语音信号、计算量较大、易受噪声影响,无法改善和提高语音通信系统和ASR的性能。
为了解决上述技术问题,本发明实施例提供一种语音去混响的方法,包括:
获取麦克风阵列捕获的每帧语音信号的频谱矢量;
根据所述每帧语音信号的频谱矢量,分别获取检测结果为语音的信号帧的第一频点以及检测结果为非语音的信号帧的第二频点;
获取所述第一频点中每一频点处的频谱的去混响后的第一语音信号频谱矢量,并根据所述第一语音信号频谱矢量对每一频点的加权预测误差的预测系数矩阵进行更新;
获取第二频点中每一频点的频谱进行衰减后的非语音信号频谱矢量;
根据所述第一语音信号频谱矢量和非语音信号频谱矢量,获取去混响语音信号。
进一步地,所述获取麦克风阵列捕获的每帧语音信号的频谱矢量的步骤,包括:
获取麦克风阵列实时捕获的语音信号;
对每一帧语音信号进行频谱计算,得到麦克风阵列捕获的每帧语音信号的频谱矢量。
进一步地,所述根据所述每帧语音信号的频谱矢量,分别获取检测结果为语音的信号帧的第一频点以及检测结果为非语音的信号帧的第二频点的步骤,包括:
获取麦克风阵列捕获的每帧语音信号的频谱矢量的香农熵值和所述香农熵值的方差之比;
获取当前帧语音信号在预设频点的频谱矢量与前一帧语音信号在预设频点的频谱矢量间相干系数的幅值平方;
在所述麦克风阵列捕获的每帧语音信号的频谱矢量的香农熵值和所述香农熵值的方差之比小于第一门限参数,且所述当前帧语音信号在预设频点的频谱矢量与前一帧语音信号在预设频点的频谱矢量间相干系数的幅值平方大于第二门限参数时,将当前帧语音信号在预设频点处标记为语音;或
在所述麦克风阵列捕获的每帧语音信号的频谱矢量的香农熵值和所述香农熵值的方差之比大于或等于第一门限参数,或所述当前帧语音信号在预设频点的频谱矢量与前一帧语音信号在预设频点的频谱矢量的幅值平方相干系数小于或等于第二门限参数时,将当前帧语音信号在预设频点处标记为噪音。
进一步地,所述获取麦克风阵列捕获的每帧语音信号的频谱矢量的香农熵值和所述香农熵值的方差之比的步骤,包括:
获取麦克风阵列捕获的每帧语音信号的频谱矢量的香农熵值和所述麦克风阵列捕获的每帧语音信号的频谱矢量的香农熵值的方差;
根据所述香农熵值和所述香农熵值的方差,获取麦克风阵列捕获的每帧语音信号的频谱矢量的香农熵值和所述香农熵值的方差之比。
进一步地,所述麦克风阵列捕获的每帧语音信号的频谱矢量的香农熵值的获取方式为:
获取检测频点处的每帧语音信号的频谱矢量的幅值权重;
根据所述幅值权重,获取每一个麦克风捕获的每帧语音信号的频谱矢量的香农熵值;
根据所述每一个麦克风捕获的每帧语音信号的频谱矢量的香农熵值,获取麦克风阵列捕获的每帧语音信号的频谱矢量的香农熵值。
进一步地,所述获取检测频点处的每帧语音信号的频谱矢量的幅值权重的步骤,包括:
根据公式:
Figure BDA0001530079200000031
获取幅值权重;
其中,pn,m[k]为第k帧第m个频点处的语音信号的频谱矢量的幅值权重;yn,m[k]为第n个麦克风接收信号的第k帧快速傅氏变换中第m个频点的谱线;n=1,2,…,N,且N为捕获语音信号的麦克风总数;m=1,2,…,M,且M为频点总数;k为信号帧索引变量,k=1,2,…,K,且K为语音信号总帧数。
进一步地,所述根据所述幅值权重,获取每一个麦克风捕获的每帧语音信号的频谱矢量的香农熵值的步骤,包括:
根据公式:
Figure BDA0001530079200000032
获取每一个麦克风捕获的每帧语音信号的频谱矢量的香农熵值;
其中,Hn,Y[k]为第k帧第n个麦克风捕获的语音信号的频谱矢量的香农熵值;pn,m[k]为第k帧第m个频点处的语音信号的频谱矢量的幅值权重;n=1,2,…,N,且N为捕获语音信号的麦克风总数;m=1,2,…,M,且M为频点总数;k为信号帧索引变量,k=1,2,…,K,且K为语音信号总帧数。
进一步地,所述根据所述每一个麦克风捕获的每帧语音信号的频谱矢量的香农熵值,获取麦克风阵列捕获的每帧语音信号的频谱矢量的香农熵值的步骤,包括:
根据公式:
Figure BDA0001530079200000041
获取麦克风阵列捕获的每帧语音信号的频谱矢量的香农熵值;
其中,HY[k]为麦克风阵列捕获的每帧语音信号的频谱矢量的香农熵值;Hn,Y[k]为第k帧第n个麦克风捕获的语音信号的频谱矢量的香农熵值;n=1,2,…,N,且N为捕获语音信号的麦克风总数;k为信号帧索引变量,k=1,2,…,K,且K为语音信号总帧数。
进一步地,所述麦克风阵列捕获的每帧语音信号的频谱矢量的香农熵值的方差的获取方式为:
根据所述麦克风阵列捕获的每帧语音信号的频谱矢量的香农熵值,获取所述香农熵值的均值;
根据所述麦克风阵列捕获的每帧语音信号的频谱矢量的香农熵值以及所述香农熵值的均值,获取麦克风阵列捕获的每帧语音信号的频谱矢量的香农熵值的方差。
进一步地,所述根据所述麦克风阵列捕获的每帧语音信号的频谱矢量的香农熵值,获取所述香农熵值的均值的步骤,包括:
根据公式:μH[k]=λ·μH[k-1]+(1-λ)·HY[k]获取香农熵值的均值;
其中,μH[k]为第k帧语音信号的频谱矢量的香农熵值的均值;HY[k]为麦克风阵列捕获的第k帧语音信号的频谱矢量的香农熵值;μH[k-1]为第k-1帧语音信号的频谱矢量的香农熵值的均值;λ为平滑系数,且0<λ<1;k为信号帧索引变量,k=1,2,…,K,且K为语音信号总帧数。
进一步地,所述根据所述麦克风阵列捕获的每帧语音信号的频谱矢量的香农熵值以及所述香农熵值的均值,获取麦克风阵列捕获的每帧语音信号的频谱矢量的香农熵值的方差的步骤,包括:
根据公式:
Figure BDA0001530079200000042
获取麦克风阵列捕获的每帧语音信号的频谱矢量的香农熵值的方差;
其中,
Figure BDA0001530079200000051
为第k帧麦克风阵列信号谱矢量的香农熵值的方差;
Figure BDA0001530079200000052
为第k-1帧麦克风阵列信号谱矢量的香农熵值的方差;μH[k]为第k帧语音信号的频谱矢量的香农熵值的均值;HY[k]为麦克风阵列捕获的第k帧语音信号的频谱矢量的香农熵值;λ为平滑系数,且0<λ<1;k为信号帧索引变量,k=1,2,…,K,且K为语音信号总帧数。
进一步地,所述根据所述香农熵值和所述香农熵值的方差,获取麦克风阵列捕获的每帧语音信号的频谱矢量的香农熵值和所述香农熵值的方差之比的步骤,包括:
根据公式:
Figure BDA0001530079200000053
获取麦克风阵列捕获的每帧语音信号的频谱矢量的香农熵值和所述香农熵值的方差之比;
其中,C1[k]为麦克风阵列捕获的每帧语音信号的频谱矢量的香农熵值和所述香农熵值的方差之比;HY[k]为麦克风阵列捕获的每帧语音信号的频谱矢量的香农熵值;
Figure BDA0001530079200000054
为第k帧麦克风阵列信号谱矢量的香农熵值的方差;k为信号帧索引变量,k=1,2,…,K,且K为总信号帧数。
进一步地,所述获取当前帧语音信号在预设频点的频谱矢量与前一帧语音信号在预设频点的频谱矢量间相干系数的幅值平方的步骤,包括:
获取当前帧语音信号在预设频点的频谱矢量与前一帧语音信号在预设频点的频谱矢量之间的相干系数;
根据所述相干系数,获取当前帧语音信号在预设频点的频谱矢量与前一帧语音信号在预设频点的频谱矢量间相干系数的幅值平方。
进一步地,所述获取当前帧语音信号在预设频点的频谱矢量与前一帧语音信号在预设频点的频谱矢量之间的相干系数的步骤,包括:
获取麦克风阵列捕获的当前帧语音信号的频谱矢量在预设频点处的谱线的方差和及当前帧语音信号的频谱矢量与前一帧语音信号的频谱矢量之间的协方差;
根据所述方差和及所述协方差,获取当前帧语音信号在预设频点的频谱矢量与前一帧语音信号在预设频点的频谱矢量之间的相干系数。
进一步地,所述麦克风阵列捕获的当前帧语音信号的频谱矢量在预设频点处的谱线的方差和的获取方式为:
根据公式:
Figure BDA0001530079200000061
获取方差和;
其中,
Figure BDA0001530079200000062
为麦克风阵列捕获的语音信号的第k帧第m个频点的谱线的方差和;
Figure BDA0001530079200000063
为第n个麦克风接收信号的第k帧快速傅氏变换中第m个频点的谱线的方差;n=1,2,…,N,且N为捕获语音信号的麦克风总数;m=1,2,…,M,且M为频点总数;k为信号帧索引变量,k=1,2,…,K,且K为语音信号总帧数。
进一步地,所述第n个麦克风接收信号的第k帧快速傅氏变换中第m个频点的谱线的方差的获取方式为:
根据公式:
Figure BDA0001530079200000064
获取第n个麦克风接收信号的第k帧快速傅氏变换中第m个频点的谱线的方差;
其中,
Figure BDA0001530079200000065
为第n个麦克风接收信号的第k帧快速傅氏变换中第m个频点的谱线的方差;
Figure BDA0001530079200000066
为第n个麦克风接收信号的第k-1帧快速傅氏变换中第m个频点的谱线的方差;yn,m[k]*为yn,m[k]的共轭;yn,m[k]为第n个麦克风接收信号的第k帧快速傅氏变换中第m个频点的谱线;n=1,2,…,N,且N为捕获语音信号的麦克风总数;m=1,2,…,M,且M为频点总数;k为信号帧索引变量,k=1,2,…,K,且K为语音信号总帧数;λ为平滑系数,且0<λ<1。
进一步地,所述当前帧语音信号的频谱矢量与前一帧语音信号的频谱矢量之间的协方差的获取方式为:
根据公式:Δn,m[k]=λ·Δn,m[k-1]+(1-λ)·{yn,m[k]yn,m[k-1]*}获取协方差;
其中,Δn,m[k]为当前帧语音信号的频谱矢量与前一帧语音信号的频谱矢量之间的协方差;Δn,m[k-1]为第k-1帧语音信号的频谱矢量与前一帧语音信号的频谱矢量之间的协方差;yn,m[k-1]*为yn,m[k-1]的共轭;yn,m[k]为第n个麦克风接收信号的第k帧快速傅氏变换中第m个频点的谱线;n=1,2,…,N,且N为捕获语音信号的麦克风总数;m=1,2,…,M,且M为频点总数;k为信号帧索引变量,k=1,2,…,K,且K为语音信号总帧数;λ为平滑系数,且0<λ<1。
进一步地,所述根据所述方差和及所述协方差,获取当前帧语音信号在预设频点的频谱矢量与前一帧语音信号在预设频点的频谱矢量之间的相干系数的步骤,包括:
根据公式:
Figure BDA0001530079200000071
获取当前帧语音信号在预设频点的频谱矢量与前一帧语音信号在预设频点的频谱矢量之间的相干系数;
其中,ρm[k]为当前帧语音信号在频点m处的频谱矢量与前一帧语音信号在频点m处的频谱矢量之间的相干系数;Δn,m[k]为当前帧语音信号的频谱矢量与前一帧语音信号的频谱矢量之间的协方差;
Figure BDA0001530079200000072
为麦克风阵列捕获的语音信号的第k帧第m个频点的谱线的方差和;
Figure BDA0001530079200000073
为麦克风阵列捕获的语音信号的第k-1帧第m个频点的谱线的方差和;n=1,2,…,N,且N为捕获语音信号的麦克风总数;m=1,2,…,M,且M为频点总数;k为信号帧索引变量,k=1,2,…,K,且K为语音信号总帧数。
进一步地,所述根据所述相干系数,获取当前帧语音信号在预设频点的频谱矢量与前一帧语音信号在预设频点的频谱矢量间相干系数的幅值平方的步骤,包括:
根据公式:C2[k,m]=|ρm[k]|2获取当前帧语音信号在预设频点的频谱矢量与前一帧语音信号在预设频点的频谱矢量间相干系数的幅值平方;
其中,C2[k,m]为当前帧语音信号在频点m处的频谱矢量与前一帧语音信号在频点m处的频谱矢量间相干系数的幅值平方;ρm[k]为当前帧语音信号在频点m处的频谱矢量与前一帧语音信号在频点m处的频谱矢量之间的相干系数;m=1,2,…,M,且M为频点总数;k为信号帧索引变量,k=1,2,…,K,且K为语音信号总帧数。
进一步地,所述获取所述第一频点中每一频点处的频谱的去混响后的第一语音信号频谱矢量,包括:
根据公式:
Figure BDA0001530079200000081
获取去混响后的第一语音信号频谱矢量;
其中,
Figure BDA0001530079200000082
为去混响后的第一语音信号频谱矢量;
Figure BDA0001530079200000083
为麦克风阵列捕获到的语音信号的频谱矢量;
Figure BDA0001530079200000084
为Wm[k-1]的共轭转置矩阵;Wm[k-1]为第k-1帧的语音信号的频谱矢量的预测系数矩阵;
Figure BDA0001530079200000085
为麦克风阵列捕获的第k帧语音信号前的预设帧数的阵列信号;m=1,2,…,M,且M为频点总数;k为信号帧索引变量,k=1,2,…,K,且K为语音信号总帧数。
进一步地,所述根据所述第一语音信号频谱矢量对每一频点的加权预测误差的预测系数矩阵进行更新,包括:
获取卡尔曼增益;
根据所述卡尔曼增益以及去混响后的第一语音信号频谱矢量,进行第一频点中每一频点的加权预测误差的预测系数矩阵的更新。
进一步地,所述获取卡尔曼增益的步骤,包括:
根据公式:
Figure BDA0001530079200000086
获取;
其中,Km[k]为卡尔曼增益;
Figure BDA0001530079200000087
为麦克风阵列捕获的第k帧语音信号前的预设帧数的阵列信号;
Figure BDA0001530079200000088
Figure BDA0001530079200000089
的共轭转置矩阵;
Figure BDA00015300792000000810
为第K-1帧信号的相关矩阵的逆矩阵;Λm 2[k]为麦克风阵列捕获的语音信号的功率;α为遗忘因子,且0<α<1;m=1,2,…,M,且M为频点总数;k为信号帧索引变量,k=1,2,…,K,且K为语音信号总帧数。
进一步地,所述麦克风阵列捕获的第k帧语音信号前的预设帧数的阵列信号的获取方式为:
根据公式:
Figure BDA0001530079200000091
获取麦克风阵列捕获的第k帧语音信号前的预设帧数的阵列信号;
其中,
Figure BDA0001530079200000092
为麦克风阵列捕获的第k帧语音信号前的预设帧数的阵列信号;m=1,2,…,M,且M为频点总数;k为信号帧索引变量,k=1,2,…,K,且K为语音信号总帧数;n=1,2,…,N,且N为捕获语音信号的麦克风总数;N′>Δ且N′和Δ均为正整数;yn,m[k-Δ-(N′-1)]为第n个麦克风接收信号的第k-Δ-(N′-1)帧快速傅氏变换中第m个频点的谱线。
进一步地,所述麦克风阵列捕获的语音信号的功率的获取方式为:
根据公式:
Figure BDA0001530079200000093
获取麦克风阵列捕获的语音信号的功率;
其中,Λm 2[k]为麦克风阵列捕获的语音信号的功率;yn,m[k]为第n个麦克风接收信号的第k帧快速傅氏变换中第m个频点的谱线;n=1,2,…,N,且N为捕获语音信号的麦克风总数;m=1,2,…,M,且M为频点总数;k为信号帧索引变量,k=1,2,…,K,且K为语音信号总帧数。
进一步地,在所述根据所述第一语音信号频谱矢量对每一频点的加权预测误差的预测系数矩阵进行更新之后,还包括:
根据公式:
Figure BDA0001530079200000094
进行相关矩阵的逆矩阵的更新;
其中,
Figure BDA0001530079200000095
为第k帧相关矩阵的逆矩阵;
Figure BDA0001530079200000096
为第k-1帧相关矩阵的逆矩阵;Km[k]为卡尔曼增益;
Figure BDA0001530079200000097
Figure BDA0001530079200000098
的共轭转置矩阵;
Figure BDA0001530079200000099
为麦克风阵列捕获的第k帧语音信号前的预设帧数的阵列信号;α为遗忘因子,且0<α<1;m=1,2,…,M,且M为频点总数;k为信号帧索引变量,k=1,2,…,K,且K为语音信号总帧数。
进一步地,所述根据所述卡尔曼增益以及去混响后的第一语音信号频谱矢量,进行第一频点中每一频点的加权预测误差的预测系数矩阵的更新的步骤,包括:
根据公式:
Figure BDA0001530079200000101
进行第一频点中每一频点的加权预测误差的预测系数矩阵的更新;
其中,Wm[k]为更新后的预测系数矩阵;Wm[k-1]为更新前的预测系数矩阵;Km[k]为卡尔曼增益;
Figure BDA0001530079200000102
Figure BDA0001530079200000103
的共轭转置矩阵;
Figure BDA0001530079200000104
为去混响后的第一语音信号频谱矢量;m=1,2,…,M,且M为频点总数;k为信号帧索引变量,k=1,2,…,K,且K为语音信号总帧数。
进一步地,所述根据所述第一语音信号频谱矢量和非语音信号频谱矢量,获取去混响语音信号的步骤,包括:
根据所述第一语音信号频谱矢量和非语音信号频谱矢量,获取每帧语音信号的第二语音信号频谱矢量;
根据每帧语音信号的第二语音信号频谱矢量,获取去混响语音信号。
本发明实施例还提供一种语音去混响的装置,包括存储器、处理器及存储在所述存储器上并可在所述处理器上运行的计算机程序;其中,所述处理器执行所述计算机程序时实现以下步骤:
获取麦克风阵列捕获的每帧语音信号的频谱矢量;
根据所述每帧语音信号的频谱矢量,分别获取检测结果为语音的信号帧的第一频点以及检测结果为非语音的信号帧的第二频点;
获取所述第一频点中每一频点处的频谱的去混响后的第一语音信号频谱矢量,并根据所述第一语音信号频谱矢量对每一频点的加权预测误差的预测系数矩阵进行更新;
获取第二频点中每一频点的频谱进行衰减后的非语音信号频谱矢量;
根据所述第一语音信号频谱矢量和非语音信号频谱矢量,获取去混响语音信号。
进一步地,所述计算机程序被处理器执行时还可实现如下步骤:
获取麦克风阵列实时捕获的语音信号;
对每一帧语音信号进行频谱计算,得到麦克风阵列捕获的每帧语音信号的频谱矢量。
进一步地,所述计算机程序被处理器执行时还可实现如下步骤:
获取麦克风阵列捕获的每帧语音信号的频谱矢量的香农熵值和所述香农熵值的方差之比;
获取当前帧语音信号在预设频点的频谱矢量与前一帧语音信号在预设频点的频谱矢量间相干系数的幅值平方;
在所述麦克风阵列捕获的每帧语音信号的频谱矢量的香农熵值和所述香农熵值的方差之比小于第一门限参数,且所述当前帧语音信号在预设频点的频谱矢量与前一帧语音信号在预设频点的频谱矢量间相干系数的幅值平方大于第二门限参数时,将当前帧语音信号在预设频点处标记为语音;或
在所述麦克风阵列捕获的每帧语音信号的频谱矢量的香农熵值和所述香农熵值的方差之比大于或等于第一门限参数,或所述当前帧语音信号在预设频点的频谱矢量与前一帧语音信号在预设频点的频谱矢量的幅值平方相干系数小于或等于第二门限参数时,将当前帧语音信号在预设频点处标记为噪音。
进一步地,所述计算机程序被处理器执行时还可实现如下步骤:
获取麦克风阵列捕获的每帧语音信号的频谱矢量的香农熵值和所述麦克风阵列捕获的每帧语音信号的频谱矢量的香农熵值的方差;
根据所述香农熵值和所述香农熵值的方差,获取麦克风阵列捕获的每帧语音信号的频谱矢量的香农熵值和所述香农熵值的方差之比。
进一步地,所述计算机程序被处理器执行时还可实现如下步骤:
获取检测频点处的每帧语音信号的频谱矢量的幅值权重;
根据所述幅值权重,获取每一个麦克风捕获的每帧语音信号的频谱矢量的香农熵值;
根据所述每一个麦克风捕获的每帧语音信号的频谱矢量的香农熵值,获取麦克风阵列捕获的每帧语音信号的频谱矢量的香农熵值。
进一步地,所述计算机程序被处理器执行时还可实现如下步骤:
根据公式:
Figure BDA0001530079200000121
获取幅值权重;
其中,pn,m[k]为第k帧第m个频点处的语音信号的频谱矢量的幅值权重;yn,m[k]为第n个麦克风接收信号的第k帧快速傅氏变换中第m个频点的谱线;n=1,2,…,N,且N为捕获语音信号的麦克风总数;m=1,2,…,M,且M为频点总数;k为信号帧索引变量,k=1,2,…,K,且K为语音信号总帧数。
进一步地,所述计算机程序被处理器执行时还可实现如下步骤:
根据公式:
Figure BDA0001530079200000122
获取每一个麦克风捕获的每帧语音信号的频谱矢量的香农熵值;
其中,Hn,Y[k]为第k帧第n个麦克风捕获的语音信号的频谱矢量的香农熵值;pn,m[k]为第k帧第m个频点处的语音信号的频谱矢量的幅值权重;n=1,2,…,N,且N为捕获语音信号的麦克风总数;m=1,2,…,M,且M为频点总数;k为信号帧索引变量,k=1,2,…,K,且K为语音信号总帧数。
进一步地,所述计算机程序被处理器执行时还可实现如下步骤:
根据公式:
Figure BDA0001530079200000123
获取麦克风阵列捕获的每帧语音信号的频谱矢量的香农熵值;
其中,HY[k]为麦克风阵列捕获的每帧语音信号的频谱矢量的香农熵值;Hn,Y[k]为第k帧第n个麦克风捕获的语音信号的频谱矢量的香农熵值;n=1,2,…,N,且N为捕获语音信号的麦克风总数;k为信号帧索引变量,k=1,2,…,K,且K为语音信号总帧数。
进一步地,所述计算机程序被处理器执行时还可实现如下步骤:
根据所述麦克风阵列捕获的每帧语音信号的频谱矢量的香农熵值,获取所述香农熵值的均值;
根据所述麦克风阵列捕获的每帧语音信号的频谱矢量的香农熵值以及所述香农熵值的均值,获取麦克风阵列捕获的每帧语音信号的频谱矢量的香农熵值的方差。
进一步地,所述计算机程序被处理器执行时还可实现如下步骤:
根据公式:μH[k]=λ·μH[k-1]+(1-λ)·HY[k]获取香农熵值的均值;
其中,μH[k]为第k帧语音信号的频谱矢量的香农熵值的均值;HY[k]为麦克风阵列捕获的第k帧语音信号的频谱矢量的香农熵值;μH[k-1]为第k-1帧语音信号的频谱矢量的香农熵值的均值;λ为平滑系数,且0<λ<1;k为信号帧索引变量,k=1,2,…,K,且K为语音信号总帧数。
进一步地,所述计算机程序被处理器执行时还可实现如下步骤:
根据公式:
Figure BDA0001530079200000131
获取麦克风阵列捕获的每帧语音信号的频谱矢量的香农熵值的方差;
其中,
Figure BDA0001530079200000132
为第k帧麦克风阵列信号谱矢量的香农熵值的方差;
Figure BDA0001530079200000133
为第k-1帧麦克风阵列信号谱矢量的香农熵值的方差;μH[k]为第k帧语音信号的频谱矢量的香农熵值的均值;HY[k]为麦克风阵列捕获的第k帧语音信号的频谱矢量的香农熵值;λ为平滑系数,且0<λ<1;k为信号帧索引变量,k=1,2,…,K,且K为语音信号总帧数。
进一步地,所述计算机程序被处理器执行时还可实现如下步骤:
根据公式:
Figure BDA0001530079200000134
获取麦克风阵列捕获的每帧语音信号的频谱矢量的香农熵值和所述香农熵值的方差之比;
其中,C1[k]为麦克风阵列捕获的每帧语音信号的频谱矢量的香农熵值和所述香农熵值的方差之比;HY[k]为麦克风阵列捕获的每帧语音信号的频谱矢量的香农熵值;
Figure BDA0001530079200000135
为第k帧麦克风阵列信号谱矢量的香农熵值的方差;k为信号帧索引变量,k=1,2,…,K,且K为总信号帧数。
进一步地,所述计算机程序被处理器执行时还可实现如下步骤:
获取当前帧语音信号在预设频点的频谱矢量与前一帧语音信号在预设频点的频谱矢量之间的相干系数;
根据所述相干系数,获取当前帧语音信号在预设频点的频谱矢量与前一帧语音信号在预设频点的频谱矢量间相干系数的幅值平方。
进一步地,所述计算机程序被处理器执行时还可实现如下步骤:
获取麦克风阵列捕获的当前帧语音信号的频谱矢量在预设频点处的谱线的方差和及当前帧语音信号的频谱矢量与前一帧语音信号的频谱矢量之间的协方差;
根据所述方差和及所述协方差,获取当前帧语音信号在预设频点的频谱矢量与前一帧语音信号在预设频点的频谱矢量之间的相干系数。
进一步地,所述计算机程序被处理器执行时还可实现如下步骤:
根据公式:
Figure BDA0001530079200000141
获取方差和;
其中,
Figure BDA0001530079200000142
为麦克风阵列捕获的语音信号的第k帧第m个频点的谱线的方差和;
Figure BDA0001530079200000143
为第n个麦克风接收信号的第k帧快速傅氏变换中第m个频点的谱线的方差;n=1,2,…,N,且N为捕获语音信号的麦克风总数;m=1,2,…,M,且M为频点总数;k为信号帧索引变量,k=1,2,…,K,且K为语音信号总帧数。
进一步地,所述计算机程序被处理器执行时还可实现如下步骤:
根据公式:
Figure BDA0001530079200000144
获取第n个麦克风接收信号的第k帧快速傅氏变换中第m个频点的谱线的方差;
其中,
Figure BDA0001530079200000145
为第n个麦克风接收信号的第k帧快速傅氏变换中第m个频点的谱线的方差;
Figure BDA0001530079200000146
为第n个麦克风接收信号的第k-1帧快速傅氏变换中第m个频点的谱线的方差;yn,m[k]*为yn,m[k]的共轭;yn,m[k]为第n个麦克风接收信号的第k帧快速傅氏变换中第m个频点的谱线;n=1,2,…,N,且N为捕获语音信号的麦克风总数;m=1,2,…,M,且M为频点总数;k为信号帧索引变量,k=1,2,…,K,且K为语音信号总帧数;λ为平滑系数,且0<λ<1。
进一步地,所述计算机程序被处理器执行时还可实现如下步骤:
根据公式:Δn,m[k]=λ·Δn,m[k-1]+(1-λ)·{yn,m[k]yn,m[k-1]*}获取协方差;
其中,Δn,m[k]为当前帧语音信号的频谱矢量与前一帧语音信号的频谱矢量之间的协方差;Δn,m[k-1]为第k-1帧语音信号的频谱矢量与前一帧语音信号的频谱矢量之间的协方差;yn,m[k-1]*为yn,m[k-1]的共轭;yn,m[k]为第n个麦克风接收信号的第k帧快速傅氏变换中第m个频点的谱线;n=1,2,…,N,且N为捕获语音信号的麦克风总数;m=1,2,…,M,且M为频点总数;k为信号帧索引变量,k=1,2,…,K,且K为语音信号总帧数;λ为平滑系数,且0<λ<1。
进一步地,所述计算机程序被处理器执行时还可实现如下步骤:
根据公式:
Figure BDA0001530079200000151
获取当前帧语音信号在预设频点的频谱矢量与前一帧语音信号在预设频点的频谱矢量之间的相干系数;
其中,ρm[k]为当前帧语音信号在频点m处的频谱矢量与前一帧语音信号在频点m处的频谱矢量之间的相干系数;Δn,m[k]为当前帧语音信号的频谱矢量与前一帧语音信号的频谱矢量之间的协方差;
Figure BDA0001530079200000152
为麦克风阵列捕获的语音信号的第k帧第m个频点的谱线的方差和;
Figure BDA0001530079200000153
为麦克风阵列捕获的语音信号的第k-1帧第m个频点的谱线的方差和;n=1,2,…,N,且N为捕获语音信号的麦克风总数;m=1,2,…,M,且M为频点总数;k为信号帧索引变量,k=1,2,…,K,且K为语音信号总帧数。
进一步地,所述计算机程序被处理器执行时还可实现如下步骤:
根据公式:C2[k,m]=|ρm[k]|2获取当前帧语音信号在预设频点的频谱矢量与前一帧语音信号在预设频点的频谱矢量间相干系数的幅值平方;
其中,C2[k,m]为当前帧语音信号在频点m处的频谱矢量与前一帧语音信号在频点m处的频谱矢量间相干系数的幅值平方;ρm[k]为当前帧语音信号在频点m处的频谱矢量与前一帧语音信号在频点m处的频谱矢量之间的相干系数;m=1,2,…,M,且M为频点总数;k为信号帧索引变量,k=1,2,…,K,且K为语音信号总帧数。
进一步地,所述计算机程序被处理器执行时还可实现如下步骤:
根据公式:
Figure BDA0001530079200000161
获取去混响后的第一语音信号频谱矢量;
其中,
Figure BDA0001530079200000162
为去混响后的第一语音信号频谱矢量;
Figure BDA0001530079200000163
为麦克风阵列捕获到的语音信号的频谱矢量;
Figure BDA0001530079200000164
为Wm[k-1]的共轭转置矩阵;Wm[k-1]为第k-1帧的语音信号的频谱矢量的预测系数矩阵;
Figure BDA0001530079200000165
为麦克风阵列捕获的第k帧语音信号前的预设帧数的阵列信号;m=1,2,…,M,且M为频点总数;k为信号帧索引变量,k=1,2,…,K,且K为语音信号总帧数。
进一步地,所述计算机程序被处理器执行时还可实现如下步骤:
获取卡尔曼增益;
根据所述卡尔曼增益以及去混响后的第一语音信号频谱矢量,进行第一频点中每一频点的加权预测误差的预测系数矩阵的更新。
进一步地,所述计算机程序被处理器执行时还可实现如下步骤:
根据公式:
Figure BDA0001530079200000166
获取;
其中,Km[k]为卡尔曼增益;
Figure BDA0001530079200000167
为麦克风阵列捕获的第k帧语音信号前的预设帧数的阵列信号;
Figure BDA0001530079200000168
Figure BDA0001530079200000169
的共轭转置矩阵;
Figure BDA00015300792000001610
为第K-1帧信号的相关矩阵的逆矩阵;Λm 2[k]为麦克风阵列捕获的语音信号的功率;α为遗忘因子,且0<α<1;m=1,2,…,M,且M为频点总数;k为信号帧索引变量,k=1,2,…,K,且K为语音信号总帧数。
进一步地,所述计算机程序被处理器执行时还可实现如下步骤:
根据公式:
Figure BDA00015300792000001611
获取麦克风阵列捕获的第k帧语音信号前的预设帧数的阵列信号;
其中,
Figure BDA00015300792000001612
为麦克风阵列捕获的第k帧语音信号前的预设帧数的阵列信号;m=1,2,…,M,且M为频点总数;k为信号帧索引变量,k=1,2,…,K,且K为语音信号总帧数;n=1,2,…,N,且N为捕获语音信号的麦克风总数;N′>Δ且N′和Δ均为正整数;yn,m[k-Δ-(N′-1)]为第n个麦克风接收信号的第k-Δ-(N′-1)帧快速傅氏变换中第m个频点的谱线。
进一步地,所述计算机程序被处理器执行时还可实现如下步骤:
根据公式:
Figure BDA0001530079200000171
获取麦克风阵列捕获的语音信号的功率;
其中,Λm 2[k]为麦克风阵列捕获的语音信号的功率;yn,m[k]为第n个麦克风接收信号的第k帧快速傅氏变换中第m个频点的谱线;n=1,2,…,N,且N为捕获语音信号的麦克风总数;m=1,2,…,M,且M为频点总数;k为信号帧索引变量,k=1,2,…,K,且K为语音信号总帧数。
进一步地,所述计算机程序被处理器执行时还可实现如下步骤:
根据公式:
Figure BDA0001530079200000172
进行相关矩阵的逆矩阵的更新;
其中,
Figure BDA0001530079200000173
为第k帧相关矩阵的逆矩阵;
Figure BDA0001530079200000174
为第k-1帧相关矩阵的逆矩阵;Km[k]为卡尔曼增益;
Figure BDA0001530079200000175
Figure BDA0001530079200000176
的共轭转置矩阵;
Figure BDA0001530079200000177
为麦克风阵列捕获的第k帧语音信号前的预设帧数的阵列信号;α为遗忘因子,且0<α<1;m=1,2,…,M,且M为频点总数;k为信号帧索引变量,k=1,2,…,K,且K为语音信号总帧数。
进一步地,所述计算机程序被处理器执行时还可实现如下步骤:
根据公式:
Figure BDA0001530079200000178
进行第一频点中每一频点的加权预测误差的预测系数矩阵的更新;
其中,Wm[k]为更新后的预测系数矩阵;Wm[k-1]为更新前的预测系数矩阵;Km[k]为卡尔曼增益;
Figure BDA0001530079200000179
Figure BDA00015300792000001710
的共轭转置矩阵;
Figure BDA00015300792000001711
为去混响后的第一语音信号频谱矢量;m=1,2,…,M,且M为频点总数;k为信号帧索引变量,k=1,2,…,K,且K为语音信号总帧数。
进一步地,所述计算机程序被处理器执行时还可实现如下步骤:
根据所述第一语音信号频谱矢量和非语音信号频谱矢量,获取每帧语音信号的第二语音信号频谱矢量;
根据每帧语音信号的第二语音信号频谱矢量,获取去混响语音信号。
本发明实施例还提供一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现上述的语音去混响的方法。
本发明实施例还提供一种语音去混响的装置,包括:
第一获取模块,用于获取麦克风阵列捕获的每帧语音信号的频谱矢量;
第二获取模块,用于根据所述每帧语音信号的频谱矢量,分别获取检测结果为语音的信号帧的第一频点以及检测结果为非语音的信号帧的第二频点;
获取更新模块,用于获取所述第一频点中每一频点处的频谱的去混响后的第一语音信号频谱矢量,并根据所述第一语音信号频谱矢量对每一频点的加权预测误差的预测系数矩阵进行更新;
第三获取模块,用于获取第二频点中每一频点的频谱进行衰减后的非语音信号频谱矢量;
第四获取模块,用于根据所述第一语音信号频谱矢量和非语音信号频谱矢量,获取去混响语音信号。
进一步地,所述第一获取模块,包括:
第一获取子模块,用于获取麦克风阵列实时捕获的语音信号;
第二获取子模块,用于对每一帧语音信号进行频谱计算,得到麦克风阵列捕获的每帧语音信号的频谱矢量。
进一步地,所述第二获取模块,包括:
第三获取子模块,用于获取麦克风阵列捕获的每帧语音信号的频谱矢量的香农熵值和所述香农熵值的方差之比;
第四获取子模块,用于获取当前帧语音信号在预设频点的频谱矢量与前一帧语音信号在预设频点的频谱矢量间相干系数的幅值平方;
标记子模块,用于在所述麦克风阵列捕获的每帧语音信号的频谱矢量的香农熵值和所述香农熵值的方差之比小于第一门限参数,且所述当前帧语音信号在预设频点的频谱矢量与前一帧语音信号在预设频点的频谱矢量间相干系数的幅值平方大于第二门限参数时,将当前帧语音信号在预设频点处标记为语音;或
在所述麦克风阵列捕获的每帧语音信号的频谱矢量的香农熵值和所述香农熵值的方差之比大于或等于第一门限参数,或所述当前帧语音信号在预设频点的频谱矢量与前一帧语音信号在预设频点的频谱矢量的幅值平方相干系数小于或等于第二门限参数时,将当前帧语音信号在预设频点处标记为噪音。
进一步地,所述第三获取子模块,包括:
第一获取单元,用于获取麦克风阵列捕获的每帧语音信号的频谱矢量的香农熵值和所述麦克风阵列捕获的每帧语音信号的频谱矢量的香农熵值的方差;
第二获取单元,用于根据所述香农熵值和所述香农熵值的方差,获取麦克风阵列捕获的每帧语音信号的频谱矢量的香农熵值和所述香农熵值的方差之比。
进一步地,所述麦克风阵列捕获的每帧语音信号的频谱矢量的香农熵值的获取方式为:
获取检测频点处的每帧语音信号的频谱矢量的幅值权重;
根据所述幅值权重,获取每一个麦克风捕获的每帧语音信号的频谱矢量的香农熵值;
根据所述每一个麦克风捕获的每帧语音信号的频谱矢量的香农熵值,获取麦克风阵列捕获的每帧语音信号的频谱矢量的香农熵值。
进一步地,所述获取检测频点处的每帧语音信号的频谱矢量的幅值权重的方式为:
根据公式:
Figure BDA0001530079200000191
获取幅值权重;
其中,pn,m[k]为第k帧第m个频点处的语音信号的频谱矢量的幅值权重;yn,m[k]为第n个麦克风接收信号的第k帧快速傅氏变换中第m个频点的谱线;n=1,2,…,N,且N为捕获语音信号的麦克风总数;m=1,2,…,M,且M为频点总数;k为信号帧索引变量,k=1,2,…,K,且K为语音信号总帧数。
进一步地,所述根据所述幅值权重,获取每一个麦克风捕获的每帧语音信号的频谱矢量的香农熵值的方式为:
根据公式:
Figure BDA0001530079200000201
获取每一个麦克风捕获的每帧语音信号的频谱矢量的香农熵值;
其中,Hn,Y[k]为第k帧第n个麦克风捕获的语音信号的频谱矢量的香农熵值;pn,m[k]为第k帧第m个频点处的语音信号的频谱矢量的幅值权重;n=1,2,…,N,且N为捕获语音信号的麦克风总数;m=1,2,…,M,且M为频点总数;k为信号帧索引变量,k=1,2,…,K,且K为语音信号总帧数。
进一步地,所述根据所述每一个麦克风捕获的每帧语音信号的频谱矢量的香农熵值,获取麦克风阵列捕获的每帧语音信号的频谱矢量的香农熵值的方式为:
根据公式:
Figure BDA0001530079200000202
获取麦克风阵列捕获的每帧语音信号的频谱矢量的香农熵值;
其中,HY[k]为麦克风阵列捕获的每帧语音信号的频谱矢量的香农熵值;Hn,Y[k]为第k帧第n个麦克风捕获的语音信号的频谱矢量的香农熵值;n=1,2,…,N,且N为捕获语音信号的麦克风总数;k为信号帧索引变量,k=1,2,…,K,且K为语音信号总帧数。
进一步地,所述麦克风阵列捕获的每帧语音信号的频谱矢量的香农熵值的方差的获取方式为:
根据所述麦克风阵列捕获的每帧语音信号的频谱矢量的香农熵值,获取所述香农熵值的均值;
根据所述麦克风阵列捕获的每帧语音信号的频谱矢量的香农熵值以及所述香农熵值的均值,获取麦克风阵列捕获的每帧语音信号的频谱矢量的香农熵值的方差。
进一步地,所述根据所述麦克风阵列捕获的每帧语音信号的频谱矢量的香农熵值,获取所述香农熵值的均值的方式为:
根据公式:μH[k]=λ·μH[k-1]+(1-λ)·HY[k]获取香农熵值的均值;
其中,μH[k]为第k帧语音信号的频谱矢量的香农熵值的均值;HY[k]为麦克风阵列捕获的第k帧语音信号的频谱矢量的香农熵值;μH[k-1]为第k-1帧语音信号的频谱矢量的香农熵值的均值;λ为平滑系数,且0<λ<1;k为信号帧索引变量,k=1,2,…,K,且K为语音信号总帧数。
进一步地,所述根据所述麦克风阵列捕获的每帧语音信号的频谱矢量的香农熵值以及所述香农熵值的均值,获取麦克风阵列捕获的每帧语音信号的频谱矢量的香农熵值的方差的方式为:
根据公式:
Figure BDA0001530079200000211
获取麦克风阵列捕获的每帧语音信号的频谱矢量的香农熵值的方差;
其中,
Figure BDA0001530079200000212
为第k帧麦克风阵列信号谱矢量的香农熵值的方差;
Figure BDA0001530079200000213
为第k-1帧麦克风阵列信号谱矢量的香农熵值的方差;μH[k]为第k帧语音信号的频谱矢量的香农熵值的均值;HY[k]为麦克风阵列捕获的第k帧语音信号的频谱矢量的香农熵值;λ为平滑系数,且0<λ<1;k为信号帧索引变量,k=1,2,…,K,且K为语音信号总帧数。
进一步地,所述第二获取单元用于:
根据公式:
Figure BDA0001530079200000214
获取麦克风阵列捕获的每帧语音信号的频谱矢量的香农熵值和所述香农熵值的方差之比;
其中,C1[k]为麦克风阵列捕获的每帧语音信号的频谱矢量的香农熵值和所述香农熵值的方差之比;HY[k]为麦克风阵列捕获的每帧语音信号的频谱矢量的香农熵值;
Figure BDA0001530079200000215
为第k帧麦克风阵列信号谱矢量的香农熵值的方差;k为信号帧索引变量,k=1,2,…,K,且K为总信号帧数。
进一步地,所述第四获取子模块,包括:
第三获取单元,用于获取当前帧语音信号在预设频点的频谱矢量与前一帧语音信号在预设频点的频谱矢量之间的相干系数;
第四获取单元,用于根据所述相干系数,获取当前帧语音信号在预设频点的频谱矢量与前一帧语音信号在预设频点的频谱矢量间相干系数的幅值平方。
进一步地,所述第三获取单元用于:
获取麦克风阵列捕获的当前帧语音信号的频谱矢量在预设频点处的谱线的方差和及当前帧语音信号的频谱矢量与前一帧语音信号的频谱矢量之间的协方差;
根据所述方差和及所述协方差,获取当前帧语音信号在预设频点的频谱矢量与前一帧语音信号在预设频点的频谱矢量之间的相干系数。
进一步地,所述麦克风阵列捕获的当前帧语音信号的频谱矢量在预设频点处的谱线的方差和的获取方式为:
根据公式:
Figure BDA0001530079200000221
获取方差和;
其中,
Figure BDA0001530079200000222
为麦克风阵列捕获的语音信号的第k帧第m个频点的谱线的方差和;
Figure BDA0001530079200000223
为第n个麦克风接收信号的第k帧快速傅氏变换中第m个频点的谱线的方差;n=1,2,…,N,且N为捕获语音信号的麦克风总数;m=1,2,…,M,且M为频点总数;k为信号帧索引变量,k=1,2,…,K,且K为语音信号总帧数。
进一步地,所述第n个麦克风接收信号的第k帧快速傅氏变换中第m个频点的谱线的方差的获取方式为:
根据公式:
Figure BDA0001530079200000224
获取第n个麦克风接收信号的第k帧快速傅氏变换中第m个频点的谱线的方差;
其中,
Figure BDA0001530079200000225
为第n个麦克风接收信号的第k帧快速傅氏变换中第m个频点的谱线的方差;
Figure BDA0001530079200000226
为第n个麦克风接收信号的第k-1帧快速傅氏变换中第m个频点的谱线的方差;yn,m[k]*为yn,m[k]的共轭;yn,m[k]为第n个麦克风接收信号的第k帧快速傅氏变换中第m个频点的谱线;n=1,2,…,N,且N为捕获语音信号的麦克风总数;m=1,2,…,M,且M为频点总数;k为信号帧索引变量,k=1,2,…,K,且K为语音信号总帧数;λ为平滑系数,且0<λ<1。
进一步地,所述当前帧语音信号的频谱矢量与前一帧语音信号的频谱矢量之间的协方差的获取方式为:
根据公式:Δn,m[k]=λ·Δn,m[k-1]+(1-λ)·{yn,m[k]yn,m[k-1]*}获取协方差;
其中,Δn,m[k]为当前帧语音信号的频谱矢量与前一帧语音信号的频谱矢量之间的协方差;Δn,m[k-1]为第k-1帧语音信号的频谱矢量与前一帧语音信号的频谱矢量之间的协方差;yn,m[k-1]*为yn,m[k-1]的共轭;yn,m[k]为第n个麦克风接收信号的第k帧快速傅氏变换中第m个频点的谱线;n=1,2,…,N,且N为捕获语音信号的麦克风总数;m=1,2,…,M,且M为频点总数;k为信号帧索引变量,k=1,2,…,K,且K为语音信号总帧数;λ为平滑系数,且0<λ<1。
进一步地,所述根据所述方差和及所述协方差,获取当前帧语音信号在预设频点的频谱矢量与前一帧语音信号在预设频点的频谱矢量之间的相干系数的方式为:
根据公式:
Figure BDA0001530079200000231
获取当前帧语音信号在预设频点的频谱矢量与前一帧语音信号在预设频点的频谱矢量之间的相干系数;
其中,ρm[k]为当前帧语音信号在频点m处的频谱矢量与前一帧语音信号在频点m处的频谱矢量之间的相干系数;Δn,m[k]为当前帧语音信号的频谱矢量与前一帧语音信号的频谱矢量之间的协方差;
Figure BDA0001530079200000232
为麦克风阵列捕获的语音信号的第k帧第m个频点的谱线的方差和;
Figure BDA0001530079200000233
为麦克风阵列捕获的语音信号的第k-1帧第m个频点的谱线的方差和;n=1,2,…,N,且N为捕获语音信号的麦克风总数;m=1,2,…,M,且M为频点总数;k为信号帧索引变量,k=1,2,…,K,且K为语音信号总帧数。
进一步地,所述第四获取单元用于:
根据公式:C2[k,m]=|ρm[k]|2获取当前帧语音信号在预设频点的频谱矢量与前一帧语音信号在预设频点的频谱矢量间相干系数的幅值平方;
其中,C2[k,m]为当前帧语音信号在频点m处的频谱矢量与前一帧语音信号在频点m处的频谱矢量间相干系数的幅值平方;ρm[k]为当前帧语音信号在频点m处的频谱矢量与前一帧语音信号在频点m处的频谱矢量之间的相干系数;m=1,2,…,M,且M为频点总数;k为信号帧索引变量,k=1,2,…,K,且K为语音信号总帧数。
进一步地,所述获取所述第一频点中每一频点处的频谱的去混响后的第一语音信号频谱矢量的方式为:
根据公式:
Figure BDA0001530079200000241
获取去混响后的第一语音信号频谱矢量;
其中,
Figure BDA0001530079200000242
为去混响后的第一语音信号频谱矢量;
Figure BDA0001530079200000243
为麦克风阵列捕获到的语音信号的频谱矢量;
Figure BDA0001530079200000244
为Wm[k-1]的共轭转置矩阵;Wm[k-1]为第k-1帧的语音信号的频谱矢量的预测系数矩阵;
Figure BDA0001530079200000245
为麦克风阵列捕获的第k帧语音信号前的预设帧数的阵列信号;m=1,2,…,M,且M为频点总数;k为信号帧索引变量,k=1,2,…,K,且K为语音信号总帧数。
进一步地,所述根据所述第一语音信号频谱矢量对每一频点的加权预测误差的预测系数矩阵进行更新的方式,包括:
获取卡尔曼增益;
根据所述卡尔曼增益以及去混响后的第一语音信号频谱矢量,进行第一频点中每一频点的加权预测误差的预测系数矩阵的更新。
进一步地,所述获取卡尔曼增益的方式为:
根据公式:
Figure BDA0001530079200000246
获取;
其中,Km[k]为卡尔曼增益;
Figure BDA0001530079200000251
为麦克风阵列捕获的第k帧语音信号前的预设帧数的阵列信号;
Figure BDA0001530079200000252
Figure BDA0001530079200000253
的共轭转置矩阵;
Figure BDA0001530079200000254
为第K-1帧信号的相关矩阵的逆矩阵;Λm 2[k]为麦克风阵列捕获的语音信号的功率;α为遗忘因子,且0<α<1;m=1,2,…,M,且M为频点总数;k为信号帧索引变量,k=1,2,…,K,且K为语音信号总帧数。
进一步地,所述麦克风阵列捕获的第k帧语音信号前的预设帧数的阵列信号的获取方式为:
根据公式:
Figure BDA0001530079200000255
获取麦克风阵列捕获的第k帧语音信号前的预设帧数的阵列信号;
其中,
Figure BDA0001530079200000256
为麦克风阵列捕获的第k帧语音信号前的预设帧数的阵列信号;m=1,2,…,M,且M为频点总数;k为信号帧索引变量,k=1,2,…,K,且K为语音信号总帧数;n=1,2,…,N,且N为捕获语音信号的麦克风总数;N′>Δ且N′和Δ均为正整数;yn,m[k-Δ-(N′-1)]为第n个麦克风接收信号的第k-Δ-(N′-1)帧快速傅氏变换中第m个频点的谱线。
进一步地,所述麦克风阵列捕获的语音信号的功率的获取方式为:
根据公式:
Figure BDA0001530079200000257
获取麦克风阵列捕获的语音信号的功率;
其中,Λm 2[k]为麦克风阵列捕获的语音信号的功率;yn,m[k]为第n个麦克风接收信号的第k帧快速傅氏变换中第m个频点的谱线;n=1,2,…,N,且N为捕获语音信号的麦克风总数;m=1,2,…,M,且M为频点总数;k为信号帧索引变量,k=1,2,…,K,且K为语音信号总帧数。
进一步地,在所述根据所述第一语音信号频谱矢量对每一频点的加权预测误差的预测系数矩阵进行更新之后,还包括:
根据公式:
Figure BDA0001530079200000258
进行相关矩阵的逆矩阵的更新;
其中,
Figure BDA0001530079200000261
为第k帧相关矩阵的逆矩阵;
Figure BDA0001530079200000262
为第k-1帧相关矩阵的逆矩阵;Km[k]为卡尔曼增益;
Figure BDA0001530079200000263
Figure BDA0001530079200000264
的共轭转置矩阵;
Figure BDA0001530079200000265
为麦克风阵列捕获的第k帧语音信号前的预设帧数的阵列信号;α为遗忘因子,且0<α<1;m=1,2,…,M,且M为频点总数;k为信号帧索引变量,k=1,2,…,K,且K为语音信号总帧数。
进一步地,所述根据所述卡尔曼增益以及去混响后的第一语音信号频谱矢量,进行第一频点中每一频点的加权预测误差的预测系数矩阵的更新的方式为:
根据公式:
Figure BDA0001530079200000266
进行第一频点中每一频点的加权预测误差的预测系数矩阵的更新;
其中,Wm[k]为更新后的预测系数矩阵;Wm[k-1]为更新前的预测系数矩阵;Km[k]为卡尔曼增益;
Figure BDA0001530079200000267
Figure BDA0001530079200000268
的共轭转置矩阵;
Figure BDA0001530079200000269
为去混响后的第一语音信号频谱矢量;m=1,2,…,M,且M为频点总数;k为信号帧索引变量,k=1,2,…,K,且K为语音信号总帧数。
进一步地,所述第四获取模块,包括:
第五获取子模块,用于根据所述第一语音信号频谱矢量和非语音信号频谱矢量,获取每帧语音信号的第二语音信号频谱矢量;
第六获取子模块,用于根据每帧语音信号的第二语音信号频谱矢量,获取去混响语音信号。
本发明的有益效果是:
上述方案,实现了语音信号的实时处理,降低了计算量,减低了噪音对语音信号的影响,提高了语音通信系统和ASR的性能。
附图说明
图1表示线性预测残差增强法示意图;
图2表示直接型逆滤波法去混响方法示意图;
图3表示MMSE/LS法去混响方法示意图;
图4表示“延时-相加”型波束赋型器的结构示意图;
图5表示“滤波-相加”型波束赋型器的结构示意图;
图6表示单输入-多输出(SIMO)声学系统中MINT方法去语音混淆效应的示意图;
图7表示本发明实施例的语音去混响的方法的流程示意图;
图8表示本发明实施例的语音去混响的方法的系统框架图;
图9表示本发明实施例的语音去混响的装置的模块示意图;
图10表示本发明实施例的语音去混响的装置的结构示意图。
具体实施方式
为使本发明的目的、技术方案和优点更加清楚,下面将结合附图及具体实施例对本发明进行详细描述。
目前语音去混响处理技术按照其算法处理所遵循的准则,通常可分为三类,即:基于声源模型的去混响技术、基于同态变换的去混响技术和基于声道(acoustic channel)逆滤波和均衡的去混响技术。
基于声源模型的去混响技术是通过利用有关纯净语音信号的结构以及该信号在室内混响情况下是如何畸变等先验信息,来计算该纯净语音信号的估计。这类技术中的典型算法有线性预测(LP)残差增强法、谐波滤波发和基于语音概率模型的去混响法。线性预测残差增强法的主要思想是:根据语音的产生模型可知,语音信号时由一脉冲串或随机噪声激励一个全几点滤波器而产生的;而混响信号(即麦克风捕获信号)则可模型化为语音源信号与声学信号(即声源至麦克风的声学路径)冲击响应的卷积;通常声学信道模型化为有限冲激响应(FIR)滤波,其传递函数仅含若干零点,因此室内混响在麦克风接收信号中仅引入零点,并由此仅影响到语音产生模型中激励信号的特性,而对模型中全极点滤波器毫无影响。鉴于有声语音的激励(即LP残差信号)是结构良好的脉冲串,在室内混响情况下该结构将变得模糊,那么根据这一特点我们可清晰地辨别混响效应并予以减弱或消除。具体做法如图1所示,其中首先对麦克风信号进行LP分析而获得其残差信号和LP系数,然后对该LP残差信号进行增强处理已恢复其良好的结构特性,最后用LP系数对增强的残差信号进行合成处理而获得去混响的语音。
谐波滤波法的主要思想根源于一个心理声学的事实,即:谐波结构是语音的一个重要属性,特别是有声语音,其激励是通过震动声带而产生的;在频域里,有声语音的频谱有一个基频F0(即基音,pitch)及其一系列谐波构成的,只要谐波频率精确地为基频的整数倍,语音听起来就清晰悦耳;然而在混响环境中,非谐波成分的引入,使得语音听起来有些粗糙刺耳或沙哑。通过抑制混响语音中的非谐波成分来重现语音的良好谐波结构,以便减小混响效应。在该算法中,首先准确地估计出混响语音信号的基频F0,然后从有声的语音频谱中抽取基频F0的谐波分量来形成增强的语音频谱;通过比较该增强的语音频谱和其对应的混响语音频谱,来计算去混响滤波器的系数;对不同的有声语音段求得的去混响滤波器进行平均处理而获得一个最终使用的去混响滤波器,用之对整个混响语音进行滤波处理,从而获得去混响的语音信号。
基于语音概率模型的去混响法的思想是:对给定的一帧麦克风信号
Figure BDA0001530079200000281
和语音信号
Figure BDA0001530079200000282
后验概率分布密度函数
Figure BDA0001530079200000283
估计其语音信号
Figure BDA0001530079200000284
使得其后验概率分布密度最大化,具体如公式一所示:
公式一:
Figure BDA0001530079200000285
由于
Figure BDA0001530079200000286
那么最大化后验概率密度
Figure BDA0001530079200000287
等价于最大化其联合概率分布密度函数
Figure BDA0001530079200000288
根据语音概率模型,联合概率分布密度函数
Figure BDA0001530079200000289
可用公式二表示:
公式二:
Figure BDA00015300792000002810
其中
Figure BDA00015300792000002811
是语音的特征矢量,c为语音帧的聚类索引。
而麦克风信号x(n)可用公式三表示为:
公式三:x(n)=s(n)*h+b(n)
其中,h为声道冲击响应,b(n)为零均值和
Figure BDA00015300792000002812
方差的高斯(Gauss)分布背景噪声,*为线性卷积。
进一步有公式四:
Figure BDA0001530079200000291
显然,
Figure BDA0001530079200000292
依赖于语音信号的特性参数
Figure BDA0001530079200000293
和声道参数
Figure BDA0001530079200000294
为此,应用迭代“期望-最大化”(EM)来求解语音信号估值
Figure BDA0001530079200000295
如下:
在E-步骤,算法用当前估计的声道参数和麦克风信号来计算源语音信号的期望值,如公式五所示:
公式五:
Figure BDA0001530079200000296
在M-步骤,算法运用E-步骤获得的数据来确定声道参数的最大似然估计,如公式六所示:
公式六:
Figure BDA0001530079200000297
EM算法不断地进行上述公式五和公式六的迭代运算,直到收敛为止。
另一类去混响技术是基于同态变换这一重要的信号处理方法,该方法将非加性混合的信号变换到一个矢量空间,变换后的信号在这一空间中呈现加性混跌。对于源语音信号与声道冲击响应卷积产生的混响信号,倒谱分析是广为应用的同态变换。设有信号x(n),其复倒谱xc(n)如公式七的定义:
公式七:xc(n)=IFFT{ln[FFT{x(n)}]}
这里FFT{·}和IFFT{·}分别是快速傅里叶变换及其逆变换。
对于x(n)=h*s(n)的混响信号,在其倒谱域我们可知:
公式八:xc(n)=hc+sc(n)
据此我们可用线性滤波技术来分离sc(n)和hc
此外,基于声道逆滤波和均衡的去混响技术,作为一类完美的语音去混响技术,一直具有诱人技术前景,其中用于单声道系统的直接型逆滤波和最小均方误差(MMSE)/最小二乘(LS)法以及用于多声道系统的波束赋型和多-输入/输出逆理论(MINT)法较为典型。对于单声道系统,直接型逆滤波法假定其冲击响应h(其传递函数为H(z))已知或已被估计出,那么用于去混响的均衡滤波器传递函数G(z)由下式确定,其系统框图如图2所示。
公式九:
Figure BDA0001530079200000301
在实际实现时,该逆滤波器g必须是稳定因果的,因而要求h(n)必须是最小相位系统,然而不幸的是室内声学冲击响应通常都是非最小相位系统。假设源语音参考信号s(n)可资用,那么直接应用一个线性均衡器g来滤波麦克风信号x(n),并运用MMSE/LS调节均衡器g的系数,使得g的输出尽可能地接近参考信号s(n),如图3所示,其中误差信号e(n)由公式十定义:
公式十:
Figure BDA0001530079200000302
这里D为均衡器的决策时延,*为线性卷积运算。那么均衡器的系数g则由公式十一和公式十二确定:
公式十一:
Figure BDA0001530079200000303
公式十二:
Figure BDA0001530079200000304
其中N为观察样本数。MMSE/LS去混响均衡器并不要求声道传递函数是最小相位系统。
波束赋型器是一个空间滤波器,它运行于麦克风阵列,以增强来自预定方向的信号同时抑制来自其它方向的声学传播,由此可降低语音信号的室内混响效应。波束赋型器主要有二种类型:“延时-相加”型和“滤波-相加”型,如图4和图5所示。对“延时-相加”型波束赋型器,其目标语音的估
Figure BDA0001530079200000307
如公式十三所示:
公式十三:
Figure BDA0001530079200000305
其中xm为第m个麦克风接收信号,gm和τm分别是标量因子和延时因子,延时因子的选择准则是使不同麦克风信号经该因子延时后在相位上对齐。“延时-相加”型波束赋型器虽然简单,但并不十分有效应用于语音去混响技术,因为其本身是一个窄带赋型器,而语音是一个典型的宽带信号。在“滤波-相加”型波束赋型器中,每个麦克风信号xm(n)首先经过一个线性滤波器gm作滤波处理,然后再将每个滤波处理后的信号相加起来形成去混响信号,即:
公式十四:
Figure BDA0001530079200000306
这里*表示为线性卷积运算。
“滤波-相加”型波束赋型器可较好地工作于像语音这样的宽带信号,其滤波器的设计通常采用数据独立或数据驱动技术来实现。
用于多声道系统的MINT去混响方法主要思想是:对一个单输入多输出系统(SIMO),考虑这样的多项式Gm(z)(m=1,2,…,M)和下述方程式(即公式十五):
公式十五:
Figure BDA0001530079200000311
其中S(z)是目标源语音信号的z变换,Hm(z)是信号源到第m个麦克风的声道传递函数,Xm(z)和Bm(z)分别是第m个麦克风的接收信号和背景噪声的z变换。
多项式Gm(z)的确定准则为:在无噪声条件下,通过应用Bezout定理,选择这样的Gm(z),使得方程式(15)求解的
Figure BDA0001530079200000312
应该等于目标源语音的S(z)。Bezout定理在数学上可用公式十六表述为:
公式十六:
Figure BDA0001530079200000313
使得
Figure BDA0001530079200000314
其中gcd{·}代表所涉及的相关多项式的最大公约数。换言之,只要声道冲击响应hm(m=1,2,…,M)是互质的(尽管可能不是最小相位系统)即SIMO系统是不可约的,那么必定存在一组滤波器
Figure BDA0001530079200000315
(m=1,2,…,M),它们可以完全消除混响效应,完美恢复目标源语音信号。若SIMO系统的声道间有共同的零点,即存在公式十七:C(z)=gcd{H1(z),H2(z),…,HM(z)}≠1
那么可以得到公式十八:Hm(z)=C(z)H′m(z),m=1,2,…,M
由此我们求解多项式Gm(z),m=1,2,…,M,使得它们满足下式:
公式十九:
Figure BDA0001530079200000316
在此情况下,公式十五可以如下表示:
公式二十:
Figure BDA0001530079200000321
由此可见,通过应用Bezout定理,可约得SIMO系统被多项式C(z)均衡化。因此在多声道间存在共同零点的情况下,MINT均衡器仅能部分地抑制混响效应;而要全面消除室内混响效应,必须用MMSE/LS或直接型逆滤波法来克服C(z)的影响。
MINT均衡滤波器的设计可按下述方法进行:公式十六对应的时域表达式可表征为:
公式二十一:
Figure BDA0001530079200000322
其中,分别有公式二十二:
Figure BDA0001530079200000323
公式二十三:
Figure BDA0001530079200000324
公式二十四:
Figure BDA0001530079200000325
其中,Lg是FIR滤波器
Figure BDA0001530079200000326
的长度。
公式二十五:
Figure BDA0001530079200000327
其中,公式二十五为一个(Lg+Lh-1)×Lg卷积矩阵。
公式二十六:
Figure BDA0001530079200000328
其为一个(Lg+Lh-1)×1列矢量。
根据上述公式可知,公式二十一的解如下:
公式二十七:
Figure BDA0001530079200000329
其中,Hc+=(HcTHc)-1HcT为矩阵Hc的伪逆。如果考虑决策的时延D,那么MINT均衡滤波器则为:
公式二十八:
Figure BDA00015300792000003210
公式二十九:
Figure BDA00015300792000003211
其中,公式二十九为一个(Lg+Lh-1)×1列矢量,其中第D+1个元素为1而其它全为0。图6给出了SIMO声学系统MINT去混响方法的示意图。
近年来,有关学者提出了采用加权预测误差(Weighted Prediction Error,WPE)进行去混响的方法,该方法假设混响过程符合自回归模型,那么麦克风采集的语音信号的混响成分可以通过以前的语音信号预测得到,然后通过估计预测误差得到去混响信号。假定声源所发出的声音被N个麦克风捕获,即:
公式三十:
Figure BDA0001530079200000331
其中yn,m[k]为第n个麦克风接收信号的第k帧FFT变换中第m个频点的谱线,n=1,2,…,N;m=1,2,…,M(这里M为频点总数);k=0,1,2,…。
假定麦克风采集的语音信号的混响成分可以通过以前的语音信号预测得到,那么去混响信号可以由下述公式得到:
公式三十一:
Figure BDA0001530079200000332
公式三十二:
Figure BDA0001530079200000333
Figure BDA0001530079200000334
公式三十三:
Figure BDA0001530079200000335
Figure BDA0001530079200000336
公式三十一中,Wm[k]为N×N·N′预测系数矩阵,它满足使下式代价函数最小化:
公式三十四:
Figure BDA0001530079200000337
求解公式三十四可得:
公式三十五:
Figure BDA0001530079200000338
公式三十六:
Figure BDA0001530079200000339
公式三十七:
Figure BDA00015300792000003310
这里,Λm 2[k]代表功率,由下式定义:
公式三十八:
Figure BDA00015300792000003311
上述WPE算法为离线算法,需等待语音信号全部捕获完毕后,方可进行去混响处理。
综上所述,现有去混响技术均有各自的技术缺陷,对基于声源模型的去混响技术而言,LP残差增强法至多可以消去混响效应中强混响分量,但对于声学冲击响应尾部引发的弱混响分量却无能为力(而这弱混响分量有害于语音的可懂度),并且该算法处理时引入了畸变,使得处理后的语音听起来不自然。谐波滤波法由于消除了语音和混响的非谐波成分而忽略了混响对谐波成分的影响,因而处理后的语音听起来有畸变;此外,该方法只用于离线处理,无法实时在线实现。而基于语音概率模型的去混响法实际上采用高阶统计量(HOS)来估计声道的冲击响应,然而计算可靠的HOS需要大量数据样本和繁重的计算复杂度,从而使该算法难以在实际中实时实现。基于同态变换的去混响技术源于语音识别研究机构,其去混响能力的报道仅限于语音识别的应用,在算法去混响性能上其一致性较差,并且在处理后的语音中引入新的畸变。在基于声道逆滤波和均衡的去混响技术中,业已指出直接型逆滤波法需对声道冲击响应进行估计,并且要求声道冲击响应必须是最小相位系统,但实际中这一条件不满足;而MMSE/LS法虽然不需对声道冲击响应进行估计,并且也无需对其加以最小相位系统的约束,但它则需要一个目标源语音的参考信号,而这一参考信号在实际中难以获取。麦克风阵列波束赋型器应用于语音型的宽带信号去混响时,其性能实际中受限于诸多因素,其中混响环境下如何处理和对待近场目标声源问题仍缺乏满意的解决方案,即便是一个分析使用的合适框架。SIMO声学系统中MINT去混响方法虽然在理论上可以完美地消去室内混响效应即使声道冲击响应不是最小相位系统,但实际中它非常敏感于在进行声道冲击响应估计时所产生的估计误差,因而仅适用于小背景噪声环境下使用。离线WPE算法不能实时在线处理语音信号,计算量较大,且预测系数矩阵易受无语音段噪声影响,难以实际应用。
针对离线WPE不能实时处理语音信号、计算量较大、易受噪声影响的问题,本发明实施例提出了一种新的去混响方法,其主要思想是:该方法将现有的“离线”(off-line)形式的WPE算法推广至“在线”(on-line)实现形式,从而降低WPE的计算复杂度,以便满足实时应用的要求;针对离线WPE算法易受噪声影响的问题,本发明提出这样一种改善方案:对接收的每帧信号进行语音端点检测(Voice Activity Detection,VAD),在VAD标记为语音的信号帧中,应用在线WPE算法来更新预测系数矩阵,并计算其线性预测误差,从而获得去混响语音的频谱;而在VAD标记为无语音的信号帧中,无需应用WPE算法来更新预测系数矩阵,这时可直接用一个(0-1之间)的固定系数对该帧信号频谱进行衰减,以达对混响和噪声的进一步抑制。
下面分别对本发明实施例所用到的在线WPE算法原理以及VAD检测算法原理说明如下。
一、在线WPE算法原理的实现
离线WPE算法需等待整段语音采集完毕后,方可进行处理。其所产生的延迟对于通信系统和ASR系统均是不可容忍的。因此将离线WPE算法修改为在线WPE算法,对实时性要求较高的应用而言是十分重要和必要的。定义每一步的预测误差如公式三十九所示:
公式三十九:
Figure BDA0001530079200000351
其中,其中α是在0~1之间取值的遗忘因子,
Figure BDA0001530079200000352
由公式三十一定义的矢量,Λm 2[k]为公式三十八定义的功率。
将公式三十九最小化可得预测系数矩阵的最佳解为:
公式四十:
Figure BDA0001530079200000353
具体地,有公式四十一:
Figure BDA0001530079200000354
公式四十二:
Figure BDA0001530079200000355
因存在公式四十三:
Figure BDA0001530079200000356
那么记
Figure BDA0001530079200000357
的逆矩阵为
Figure BDA0001530079200000358
则有,
公式四十四:
Figure BDA0001530079200000361
Figure BDA0001530079200000362
其中,Km[k]是卡尔曼增益,它由公式四十五定义。
公式四十五:
Figure BDA0001530079200000363
将公式四十五和公式四十二带入公式四十,得Wm[k]在线更新公式如公式四十六所示。
公式四十六:
Figure BDA0001530079200000364
其中,H为共轭转置算子。
二、VAD检测算法原理的实现
VAD技术的研究由来已久,有关学者和工程技术人员相继提出了诸多技术方法。然而,现有的这些方法均存在漏检概率大的缺陷,特别是低信噪比(SNR)情况下。本发明提出一种新的VAD方法,能可靠地检测出语音信号;其主要思想是来源于这样的考虑,既然功率分布的聚集程度可以通过香农熵(以下简称为熵)来体现,而语音信号功率呈现明显的聚集特性,因此语音信号帧的熵值会明显低于噪声信号帧的熵值;此外,语音信号帧的熵值变化范围较广,故其均方差较大,而噪声信号帧的熵值变化范围较小,故其均方差较小。由此可见,信号帧的熵值对其熵方差的比,可用作鉴别信号帧是语音帧还是噪声帧的一个特征参数。此外,语音信号具有短时平稳性,其相邻帧的频谱信号间相关性较高,而噪声相邻帧的频谱信号间相关性则通常较小。因此,相邻帧的频谱信号幅度相干系数也可用作鉴别信号帧是否为语音帧的另一种特征参数。
具体地,对公式三十定义的第k帧麦克风阵列捕获到的语音信号的频谱矢量
Figure BDA0001530079200000365
m=1,2,…,M,可利用公式四十七计算其香农熵值HY[k]。
公式四十七:
Figure BDA0001530079200000366
具体地,Hn,Y[k]为第k帧第n个麦克风捕获的语音信号的频谱矢量的香农熵值,由下式可获取得到。
公式四十八:
Figure BDA0001530079200000371
其中,公式四十八中pn,m[k]为第k帧第m个频点处的语音信号的频谱矢量的幅值权重,由下式获取得到。
公式四十九:
Figure BDA0001530079200000372
记HY[k]的均值为μH[k]、方差为
Figure BDA0001530079200000373
则可用下述递归技术来近似估计它们:
公式五十:μH[k]=λ·μH[k-1]+(1-λ)·HY[k]
公式五十一:
Figure BDA0001530079200000374
这里0<λ<1为平滑系数。
由上述可得到VAD的第一特征参数(即麦克风阵列捕获的语音信号的频谱矢量的香农熵值和所述香农熵值的方差之比)可由下式表述,即:
公式五十二:
Figure BDA0001530079200000375
另一方面,当前帧语音信号在预设频点的频谱矢量与前一帧语音信号在预设频点的频谱矢量之间的相干系数(ρm[k])可由下式定义,即:
公式五十三:
Figure BDA0001530079200000376
其中,
Figure BDA0001530079200000377
为麦克风阵列捕获的语音信号的第k帧第m个频点的谱线的方差和,又公式五十四定义,即:
公式五十四:
Figure BDA0001530079200000378
具体地,
Figure BDA0001530079200000379
为第n个麦克风接收信号的第k帧快速傅氏变换中第m个频点的谱线的方差,由公式五十五定义,即:
公式五十五:
Figure BDA00015300792000003710
具体地,公式五十三中的Δn,m[k]为当前帧语音信号的频谱矢量与前一帧语音信号的频谱矢量之间的协方差,由公式五十六定义,即:
公式五十六:Δn,m[k]=λ·Δn,m[k-1]+(1-λ)·{yn,m[k]yn,m[k-1]*}
那么VAD的第二特征参数(即当前帧语音信号在频点m处的频谱矢量与前一帧语音信号在频点m处的频谱矢量间相干系数的幅值平方)由公式五十七定义,即:
公式五十七:C2[k,m]=|ρm[k]|2
在得到第一特征参数和第二特征参数后,便可依据这两个参数,确定某一帧上的某频点是否为语音,即当第一特征参数小于第一门限参数(可用Th1表示)且第二特征参数大于第二门限参数(可用Th2表示)时,则将该信号帧的这一频点标记为语音,否则标记为噪音。
这里需要说明的是,本发明实施例中所提到的n=1,2,…,N,且N为捕获语音信号的麦克风总数;m=1,2,…,M,且M为频点总数;k为信号帧索引变量,k=1,2,…,K,且K为语音信号总帧数。
具体地,如图7所示,本发明实施例的语音去混响的方法,包括:
步骤71,获取麦克风阵列捕获的每帧语音信号的频谱矢量;
步骤72,根据所述每帧语音信号的频谱矢量,分别获取检测结果为语音的信号帧的第一频点以及检测结果为非语音的信号帧的第二频点;
需要说明的是,该第一频点中包含至少一个检测结果为语音的信号帧的频点,且该第二频点中包含至少一个检测结果为非语音的信号帧的频点。
步骤73,获取所述第一频点中每一频点处的频谱的去混响后的第一语音信号频谱矢量,并根据所述第一语音信号频谱矢量对每一频点的加权预测误差的预测系数矩阵进行更新;
步骤74,获取第二频点中每一频点的频谱进行衰减后的非语音信号频谱矢量;
步骤75,根据所述第一语音信号频谱矢量和非语音信号频谱矢量,获取去混响语音信号;
需要说明的是,步骤75的具体实现方式为根据所述第一语音信号频谱矢量和非语音信号频谱矢量,获取每帧语音信号的第二语音信号频谱矢量;根据每帧语音信号的第二语音信号频谱矢量,获取去混响语音信号。
具体地,所述步骤71的实现方式为:获取麦克风阵列实时捕获的语音信号;对每一帧语音信号进行频谱计算,得到麦克风阵列捕获的每帧语音信号的频谱矢量。
具体地,步骤72的实现过程包括:
获取麦克风阵列捕获的每帧语音信号的频谱矢量的香农熵值和所述香农熵值的方差之比;
获取当前帧语音信号在预设频点的频谱矢量与前一帧语音信号在预设频点的频谱矢量间相干系数的幅值平方;
在所述麦克风阵列捕获的每帧语音信号的频谱矢量的香农熵值和所述香农熵值的方差之比小于第一门限参数,且所述当前帧语音信号在预设频点的频谱矢量与前一帧语音信号在预设频点的频谱矢量间相干系数的幅值平方大于第二门限参数时,将当前帧语音信号在预设频点处标记为语音;或
在所述麦克风阵列捕获的每帧语音信号的频谱矢量的香农熵值和所述香农熵值的方差之比大于或等于第一门限参数,或所述当前帧语音信号在预设频点的频谱矢量与前一帧语音信号在预设频点的频谱矢量的幅值平方相干系数小于或等于第二门限参数时,将当前帧语音信号在预设频点处标记为噪音。
具体地,所述获取麦克风阵列捕获的每帧语音信号的频谱矢量的香农熵值和所述香农熵值的方差之比的步骤,包括:
获取麦克风阵列捕获的每帧语音信号的频谱矢量的香农熵值和所述麦克风阵列捕获的每帧语音信号的频谱矢量的香农熵值的方差;
根据所述香农熵值和所述香农熵值的方差,获取麦克风阵列捕获的每帧语音信号的频谱矢量的香农熵值和所述香农熵值的方差之比。
进一步地,所述麦克风阵列捕获的每帧语音信号的频谱矢量的香农熵值的获取方式为:
获取检测频点处的每帧语音信号的频谱矢量的幅值权重;
根据所述幅值权重,获取每一个麦克风捕获的每帧语音信号的频谱矢量的香农熵值;
根据所述每一个麦克风捕获的每帧语音信号的频谱矢量的香农熵值,获取麦克风阵列捕获的每帧语音信号的频谱矢量的香农熵值。
进一步地,所述获取检测频点处的每帧语音信号的频谱矢量的幅值权重的步骤,包括:
根据公式四十九:
Figure BDA0001530079200000401
获取幅值权重;
其中,pn,m[k]为第k帧第m个频点处的语音信号的频谱矢量的幅值权重;yn,m[k]为第n个麦克风接收信号的第k帧快速傅氏变换中第m个频点的谱线。
进一步地,所述根据所述幅值权重,获取每一个麦克风捕获的每帧语音信号的频谱矢量的香农熵值的步骤,包括:
根据公式四十八:
Figure BDA0001530079200000402
获取每一个麦克风捕获的每帧语音信号的频谱矢量的香农熵值;
其中,Hn,Y[k]为第k帧第n个麦克风捕获的语音信号的频谱矢量的香农熵值;pn,m[k]为第k帧第m个频点处的语音信号的频谱矢量的幅值权重。
进一步地,所述根据所述每一个麦克风捕获的每帧语音信号的频谱矢量的香农熵值,获取麦克风阵列捕获的每帧语音信号的频谱矢量的香农熵值的步骤,包括:
根据公式四十七:
Figure BDA0001530079200000403
获取麦克风阵列捕获的每帧语音信号的频谱矢量的香农熵值;
其中,HY[k]为麦克风阵列捕获的每帧语音信号的频谱矢量的香农熵值;Hn,Y[k]为第k帧第n个麦克风捕获的语音信号的频谱矢量的香农熵值。
进一步地,所述麦克风阵列捕获的每帧语音信号的频谱矢量的香农熵值的方差的获取方式为:
根据所述麦克风阵列捕获的每帧语音信号的频谱矢量的香农熵值,获取所述香农熵值的均值;
根据所述麦克风阵列捕获的每帧语音信号的频谱矢量的香农熵值以及所述香农熵值的均值,获取麦克风阵列捕获的每帧语音信号的频谱矢量的香农熵值的方差。
具体地,所述根据所述麦克风阵列捕获的每帧语音信号的频谱矢量的香农熵值,获取所述香农熵值的均值的步骤,包括:
根据公式五十:μH[k]=λ·μH[k-1]+(1-λ)·HY[k]获取香农熵值的均值;
其中,μH[k]为第k帧语音信号的频谱矢量的香农熵值的均值;HY[k]为麦克风阵列捕获的第k帧语音信号的频谱矢量的香农熵值;μH[k-1]为第k-1帧语音信号的频谱矢量的香农熵值的均值;λ为平滑系数,且0<λ<1;k为信号帧索引变量。
进一步地,所述根据所述麦克风阵列捕获的每帧语音信号的频谱矢量的香农熵值以及所述香农熵值的均值,获取麦克风阵列捕获的每帧语音信号的频谱矢量的香农熵值的方差的步骤,包括:
根据公式五十一:
Figure BDA0001530079200000411
获取麦克风阵列捕获的每帧语音信号的频谱矢量的香农熵值的方差;
其中,
Figure BDA0001530079200000412
为第k帧麦克风阵列信号谱矢量的香农熵值的方差;
Figure BDA0001530079200000413
为第k-1帧麦克风阵列信号谱矢量的香农熵值的方差;μH[k]为第k帧语音信号的频谱矢量的香农熵值的均值;HY[k]为麦克风阵列捕获的第k帧语音信号的频谱矢量的香农熵值。
进一步地,所述根据所述香农熵值和所述香农熵值的方差,获取麦克风阵列捕获的每帧语音信号的频谱矢量的香农熵值和所述香农熵值的方差之比的步骤,包括:
根据公式五十二:
Figure BDA0001530079200000414
获取麦克风阵列捕获的每帧语音信号的频谱矢量的香农熵值和所述香农熵值的方差之比;
其中,C1[k]为麦克风阵列捕获的每帧语音信号的频谱矢量的香农熵值和所述香农熵值的方差之比;HY[k]为麦克风阵列捕获的每帧语音信号的频谱矢量的香农熵值;
Figure BDA0001530079200000415
为第k帧麦克风阵列信号谱矢量的香农熵值的方差。
进一步地,所述获取当前帧语音信号在预设频点的频谱矢量与前一帧语音信号在预设频点的频谱矢量间相干系数的幅值平方的步骤,包括:
获取当前帧语音信号在预设频点的频谱矢量与前一帧语音信号在预设频点的频谱矢量之间的相干系数;
根据所述相干系数,获取当前帧语音信号在预设频点的频谱矢量与前一帧语音信号在预设频点的频谱矢量间相干系数的幅值平方。
进一步地,所述获取当前帧语音信号在预设频点的频谱矢量与前一帧语音信号在预设频点的频谱矢量之间的相干系数的步骤,包括:
获取麦克风阵列捕获的当前帧语音信号的频谱矢量在预设频点处的谱线的方差和及当前帧语音信号的频谱矢量与前一帧语音信号的频谱矢量之间的协方差;
根据所述方差和及所述协方差,获取当前帧语音信号在预设频点的频谱矢量与前一帧语音信号在预设频点的频谱矢量之间的相干系数。
具体地,所述麦克风阵列捕获的当前帧语音信号的频谱矢量在预设频点处的谱线的方差和的获取方式为:
根据公式五十四:
Figure BDA0001530079200000421
获取方差和;
其中,
Figure BDA0001530079200000422
为麦克风阵列捕获的语音信号的第k帧第m个频点的谱线的方差和;
Figure BDA0001530079200000423
为第n个麦克风接收信号的第k帧快速傅氏变换中第m个频点的谱线的方差。
进一步地,所述第n个麦克风接收信号的第k帧快速傅氏变换中第m个频点的谱线的方差的获取方式为:
根据公式五十五:
Figure BDA0001530079200000424
获取第n个麦克风接收信号的第k帧快速傅氏变换中第m个频点的谱线的方差;
其中,
Figure BDA0001530079200000425
为第n个麦克风接收信号的第k帧快速傅氏变换中第m个频点的谱线的方差;
Figure BDA0001530079200000426
为第n个麦克风接收信号的第k-1帧快速傅氏变换中第m个频点的谱线的方差;yn,m[k]*为yn,m[k]的共轭;yn,m[k]为第n个麦克风接收信号的第k帧快速傅氏变换中第m个频点的谱线。
进一步地,所述当前帧语音信号的频谱矢量与前一帧语音信号的频谱矢量之间的协方差的获取方式为:
根据公式五十六:Δn,m[k]=λ·Δn,m[k-1]+(1-λ)·{yn,m[k]yn,m[k-1]*}获取协方差;
其中,Δn,m[k]为当前帧语音信号的频谱矢量与前一帧语音信号的频谱矢量之间的协方差;Δn,m[k-1]为第k-1帧语音信号的频谱矢量与前一帧语音信号的频谱矢量之间的协方差;yn,m[k-1]*为yn,m[k-1]的共轭;yn,m[k]为第n个麦克风接收信号的第k帧快速傅氏变换中第m个频点的谱线。
进一步地,所述根据所述方差和及所述协方差,获取当前帧语音信号在预设频点的频谱矢量与前一帧语音信号在预设频点的频谱矢量之间的相干系数的步骤,包括:
根据公式五十三:
Figure BDA0001530079200000431
获取当前帧语音信号在预设频点的频谱矢量与前一帧语音信号在预设频点的频谱矢量之间的相干系数;
其中,ρm[k]为当前帧语音信号在频点m处的频谱矢量与前一帧语音信号在频点m处的频谱矢量之间的相干系数;Δn,m[k]为当前帧语音信号的频谱矢量与前一帧语音信号的频谱矢量之间的协方差;
Figure BDA0001530079200000432
为麦克风阵列捕获的语音信号的第k帧第m个频点的谱线的方差和;
Figure BDA0001530079200000433
为麦克风阵列捕获的语音信号的第k-1帧第m个频点的谱线的方差和。
进一步地,所述根据所述相干系数,获取当前帧语音信号在预设频点的频谱矢量与前一帧语音信号在预设频点的频谱矢量间相干系数的幅值平方的步骤,包括:
根据公式五十七:C2[k,m]=|ρm[k]|2获取当前帧语音信号在预设频点的频谱矢量与前一帧语音信号在预设频点的频谱矢量间相干系数的幅值平方;
其中,C2[k,m]为当前帧语音信号在频点m处的频谱矢量与前一帧语音信号在频点m处的频谱矢量间相干系数的幅值平方;ρm[k]为当前帧语音信号在频点m处的频谱矢量与前一帧语音信号在频点m处的频谱矢量之间的相干系数。
综上所述,VAD算法的具体实现流程为:
步骤1---开始,并初始化参数:
设置第一门限参数Th1和第二门限参数Th2,设置输入信号帧序号k=0;
步骤2---更新信号帧序号:k=k+1;对所有频点m(m=1,2,…,M),作下述处理:
步骤2.1)读取频谱矢量数据
Figure BDA0001530079200000441
步骤2.2)根据公式四十七至五十二计算VAD第一特征参数C1[k];
步骤2.3)根据公式五十三至五十七计算VAD第二特征参数C2[k,m];
步骤3---给第k帧信号作标记:
如果C1[k]<Th1并且C2[k,m]>Th2,则将该帧信号在频点m处标记为语音;
否则,则将该帧信号在频点m处标记为噪声
步骤4---输入信号结束否?如果是,则跳转到步骤5,否则,跳转到步骤2;
步骤5---VAD处理结束。
具体地,本发明实施例中的所述获取所述第一频点中每一频点处的频谱的去混响后的第一语音信号频谱矢量的具体实现方式为:
根据公式五十八:
Figure BDA0001530079200000442
获取去混响后的第一语音信号频谱矢量;
其中,
Figure BDA0001530079200000443
为去混响后的第一语音信号频谱矢量;
Figure BDA0001530079200000444
为麦克风阵列捕获到的语音信号的频谱矢量;
Figure BDA0001530079200000445
为Wm[k-1]的共轭转置矩阵;Wm[k-1]为第k-1帧的语音信号的频谱矢量的预测系数矩阵;
Figure BDA0001530079200000446
为麦克风阵列捕获的第k帧语音信号前的预设帧数的阵列信号。
进一步地,所述根据所述第一语音信号频谱矢量对每一频点的加权预测误差的预测系数矩阵进行更新,包括:
获取卡尔曼增益;
根据所述卡尔曼增益以及去混响后的第一语音信号频谱矢量,进行第一频点中每一频点的加权预测误差的预测系数矩阵的更新。
具体地,所述获取卡尔曼增益的步骤,包括:
根据公式四十五:
Figure BDA0001530079200000451
获取;
其中,Km[k]为卡尔曼增益;
Figure BDA0001530079200000452
为麦克风阵列捕获的第k帧语音信号前的预设帧数的阵列信号;
Figure BDA0001530079200000453
Figure BDA0001530079200000454
的共轭转置矩阵;
Figure BDA0001530079200000455
为第K-1帧信号的相关矩阵的逆矩阵;Λm 2[k]为麦克风阵列捕获的语音信号的功率;α为遗忘因子,且0<α<1。
具体地,所述麦克风阵列捕获的第k帧语音信号前的预设帧数的阵列信号的获取方式为:
根据公式三十三:
Figure BDA0001530079200000456
获取麦克风阵列捕获的第k帧语音信号前的预设帧数的阵列信号;
其中,
Figure BDA0001530079200000457
为麦克风阵列捕获的第k帧语音信号前的预设帧数的阵列信号;m=1,2,…,M,且M为频点总数;N′>Δ且N′和Δ均为正整数;yn,m[k-Δ-(N′-1)]为第n个麦克风接收信号的第k-Δ-(N′-1)帧快速傅氏变换中第m个频点的谱线。
进一步地,所述麦克风阵列捕获的语音信号的功率的获取方式为:
根据公式三十八:
Figure BDA0001530079200000458
获取麦克风阵列捕获的语音信号的功率;
其中,Λm 2[k]为麦克风阵列捕获的语音信号的功率;yn,m[k]为第n个麦克风接收信号的第k帧快速傅氏变换中第m个频点的谱线。
进一步地,在所述根据所述第一语音信号频谱矢量对每一频点的加权预测误差的预测系数矩阵进行更新之后,还包括:
根据公式四十四:
Figure BDA0001530079200000461
进行相关矩阵的逆矩阵的更新;
其中,
Figure BDA0001530079200000462
为第k帧相关矩阵的逆矩阵;
Figure BDA0001530079200000463
为第k-1帧相关矩阵的逆矩阵;Km[k]为卡尔曼增益;
Figure BDA0001530079200000464
Figure BDA0001530079200000465
的共轭转置矩阵;
Figure BDA0001530079200000466
为麦克风阵列捕获的第k帧语音信号前的预设帧数的阵列信号。
进一步地,所述根据所述卡尔曼增益以及去混响后的第一语音信号频谱矢量,进行第一频点中每一频点的加权预测误差的预测系数矩阵的更新的步骤,包括:
根据公式四十六:
Figure BDA0001530079200000467
进行第一频点中每一频点的加权预测误差的预测系数矩阵的更新;
其中,Wm[k]为更新后的预测系数矩阵;Wm[k-1]为更新前的预测系数矩阵;Km[k]为卡尔曼增益;
Figure BDA0001530079200000468
Figure BDA0001530079200000469
的共轭转置矩阵;
Figure BDA00015300792000004610
为去混响后的第一语音信号频谱矢量。
具体地,上述所说的在线WPE去混响算法的具体实现过程为:
步骤1---处理开始并初始化:
初始化常数参数:0<α<1,γ>>1,帧序号k=0;
初始化矩阵:
Figure BDA00015300792000004611
Wm[0]=0,m=1,2,…,M;
步骤2---更新:对所有m=1,2,…,M,作下述处理:
步骤2.1)更新信号帧序号k:k=k+1;
步骤2.2)从N个麦克风各读取第k帧信号并作快速傅里叶变换(FFT)处理,可得N个第k帧信号频谱,据此按公式三十和公式三十三的定义分别构造出相应的频谱矢量
Figure BDA00015300792000004612
Figure BDA00015300792000004613
步骤2.3)根据公式四十五计算Km[k];
步骤2.4)根据公式五十八计算去混响的信号频谱矢量
Figure BDA00015300792000004614
步骤2.5)根据公式四十六更新预测系数矩阵Wm[k];
步骤2.6)应用公式四十四更新相关矩阵的逆矩阵
Figure BDA0001530079200000471
步骤2.7)去混响处理是否结束?如果是,则跳转步骤3;否则,则跳转步骤2;
步骤3---处理结束。
综上所述,本发明提出的实时在线去混响算法的系统框图如图8所示。
首先进行初始化初始化,即初始化VAD算法和在线WPE算法的相关参数;设置信号帧序号k=0;然后利用频谱计算器对N路信道各读取一信号帧,应用FFT生成所需的频谱矢量数据;然后利用VAD检测标记器调用VAD算法模块给当前信号帧k予以语音或噪声的标记,并输出标记;判断输出的标记是否为语音,若为语音,则利用在线WPE处理器对当前信号帧k,调用在线WPE算法模块更新预测系数矩阵,并计算和输出去混响信号;若不为语音,则利用衰减器不更新更新预测系数矩阵,而对当前信号帧k的频谱,直接乘以一个衰减因子,并据此逆变换回时域输出其信号;执行完此帧的运算后,判断输入信号是否结束,若还有输入信号,则执行k=k+1,在对下一帧语音信号进行处理,若没有输入信号了,则结束算法流程。
综上所述,本发明实施例相对现有技术的主要优点是:
A、本发明实施例提出的去混响算法可实时在线实现;
B、由于算法仅在语音段对相应的传输函数(即预测系数矩阵)进行更新,因而其计算量降低,同时增强了算法对噪声或干扰的鲁棒性;
C、由于采用语音信号熵特征与相关特性相结合进行VAD,从而有效减少了漏检现象,为算法及时准确地进行相应的传输函数更新提供了可靠的保障;
D、基于上述VAD检测结果,本发明实施例提出的方法对无语音段的频谱幅值乘以固定系数,从而简单而有效地抑制了混响和噪声信号。
如图9所示,本发明实施例还提供一种语音去混响的装置90,包括:
第一获取模块91,用于获取麦克风阵列捕获的每帧语音信号的频谱矢量;
第二获取模块92,用于根据所述每帧语音信号的频谱矢量,分别获取检测结果为语音的信号帧的第一频点以及检测结果为非语音的信号帧的第二频点;
获取更新模块93,用于获取所述第一频点中每一频点处的频谱的去混响后的第一语音信号频谱矢量,并根据所述第一语音信号频谱矢量对每一频点的加权预测误差的预测系数矩阵进行更新;
第三获取模块94,用于获取第二频点中每一频点的频谱进行衰减后的非语音信号频谱矢量;
第四获取模块95,用于根据所述第一语音信号频谱矢量和非语音信号频谱矢量,获取去混响语音信号。
具体地,所述第一获取模块91,包括:
第一获取子模块,用于获取麦克风阵列实时捕获的语音信号;
第二获取子模块,用于对每一帧语音信号进行频谱计算,得到麦克风阵列捕获的每帧语音信号的频谱矢量。
进一步地,所述第二获取模块92,包括:
第三获取子模块,用于获取麦克风阵列捕获的每帧语音信号的频谱矢量的香农熵值和所述香农熵值的方差之比;
第四获取子模块,用于获取当前帧语音信号在预设频点的频谱矢量与前一帧语音信号在预设频点的频谱矢量间相干系数的幅值平方;
标记子模块,用于在所述麦克风阵列捕获的每帧语音信号的频谱矢量的香农熵值和所述香农熵值的方差之比小于第一门限参数,且所述当前帧语音信号在预设频点的频谱矢量与前一帧语音信号在预设频点的频谱矢量间相干系数的幅值平方大于第二门限参数时,将当前帧语音信号在预设频点处标记为语音;或
在所述麦克风阵列捕获的每帧语音信号的频谱矢量的香农熵值和所述香农熵值的方差之比大于或等于第一门限参数,或所述当前帧语音信号在预设频点的频谱矢量与前一帧语音信号在预设频点的频谱矢量的幅值平方相干系数小于或等于第二门限参数时,将当前帧语音信号在预设频点处标记为噪音。
具体地,所述第三获取子模块,包括:
第一获取单元,用于获取麦克风阵列捕获的每帧语音信号的频谱矢量的香农熵值和所述麦克风阵列捕获的每帧语音信号的频谱矢量的香农熵值的方差;
第二获取单元,用于根据所述香农熵值和所述香农熵值的方差,获取麦克风阵列捕获的每帧语音信号的频谱矢量的香农熵值和所述香农熵值的方差之比。
进一步地,所述麦克风阵列捕获的每帧语音信号的频谱矢量的香农熵值的获取方式为:
获取检测频点处的每帧语音信号的频谱矢量的幅值权重;
根据所述幅值权重,获取每一个麦克风捕获的每帧语音信号的频谱矢量的香农熵值;
根据所述每一个麦克风捕获的每帧语音信号的频谱矢量的香农熵值,获取麦克风阵列捕获的每帧语音信号的频谱矢量的香农熵值。
进一步地,所述获取检测频点处的每帧语音信号的频谱矢量的幅值权重的方式为:
根据公式:
Figure BDA0001530079200000491
获取幅值权重;
其中,pn,m[k]为第k帧第m个频点处的语音信号的频谱矢量的幅值权重;yn,m[k]为第n个麦克风接收信号的第k帧快速傅氏变换中第m个频点的谱线;n=1,2,…,N,且N为捕获语音信号的麦克风总数;m=1,2,…,M,且M为频点总数;k为信号帧索引变量,k=1,2,…,K,且K为语音信号总帧数。
进一步地,所述根据所述幅值权重,获取每一个麦克风捕获的每帧语音信号的频谱矢量的香农熵值的方式为:
根据公式:
Figure BDA0001530079200000492
获取每一个麦克风捕获的每帧语音信号的频谱矢量的香农熵值;
其中,Hn,Y[k]为第k帧第n个麦克风捕获的语音信号的频谱矢量的香农熵值;pn,m[k]为第k帧第m个频点处的语音信号的频谱矢量的幅值权重;n=1,2,…,N,且N为捕获语音信号的麦克风总数;m=1,2,…,M,且M为频点总数;k为信号帧索引变量,k=1,2,…,K,且K为语音信号总帧数。
进一步地,所述根据所述每一个麦克风捕获的每帧语音信号的频谱矢量的香农熵值,获取麦克风阵列捕获的每帧语音信号的频谱矢量的香农熵值的方式为:
根据公式:
Figure BDA0001530079200000501
获取麦克风阵列捕获的每帧语音信号的频谱矢量的香农熵值;
其中,HY[k]为麦克风阵列捕获的每帧语音信号的频谱矢量的香农熵值;Hn,Y[k]为第k帧第n个麦克风捕获的语音信号的频谱矢量的香农熵值;n=1,2,…,N,且N为捕获语音信号的麦克风总数;k为信号帧索引变量,k=1,2,…,K,且K为语音信号总帧数。
进一步地,所述麦克风阵列捕获的每帧语音信号的频谱矢量的香农熵值的方差的获取方式为:
根据所述麦克风阵列捕获的每帧语音信号的频谱矢量的香农熵值,获取所述香农熵值的均值;
根据所述麦克风阵列捕获的每帧语音信号的频谱矢量的香农熵值以及所述香农熵值的均值,获取麦克风阵列捕获的每帧语音信号的频谱矢量的香农熵值的方差。
进一步地,所述根据所述麦克风阵列捕获的每帧语音信号的频谱矢量的香农熵值,获取所述香农熵值的均值的方式为:
根据公式:μH[k]=λ·μH[k-1]+(1-λ)·HY[k]获取香农熵值的均值;
其中,μH[k]为第k帧语音信号的频谱矢量的香农熵值的均值;HY[k]为麦克风阵列捕获的第k帧语音信号的频谱矢量的香农熵值;μH[k-1]为第k-1帧语音信号的频谱矢量的香农熵值的均值;λ为平滑系数,且0<λ<1;k为信号帧索引变量,k=1,2,…,K,且K为语音信号总帧数。
进一步地,所述根据所述麦克风阵列捕获的每帧语音信号的频谱矢量的香农熵值以及所述香农熵值的均值,获取麦克风阵列捕获的每帧语音信号的频谱矢量的香农熵值的方差的方式为:
根据公式:
Figure BDA0001530079200000511
获取麦克风阵列捕获的每帧语音信号的频谱矢量的香农熵值的方差;
其中,
Figure BDA0001530079200000512
为第k帧麦克风阵列信号谱矢量的香农熵值的方差;
Figure BDA0001530079200000513
为第k-1帧麦克风阵列信号谱矢量的香农熵值的方差;μH[k]为第k帧语音信号的频谱矢量的香农熵值的均值;HY[k]为麦克风阵列捕获的第k帧语音信号的频谱矢量的香农熵值;λ为平滑系数,且0<λ<1;k为信号帧索引变量,k=1,2,…,K,且K为语音信号总帧数。
进一步地,所述第二获取单元用于:
根据公式:
Figure BDA0001530079200000514
获取麦克风阵列捕获的每帧语音信号的频谱矢量的香农熵值和所述香农熵值的方差之比;
其中,C1[k]为麦克风阵列捕获的每帧语音信号的频谱矢量的香农熵值和所述香农熵值的方差之比;HY[k]为麦克风阵列捕获的每帧语音信号的频谱矢量的香农熵值;
Figure BDA0001530079200000515
为第k帧麦克风阵列信号谱矢量的香农熵值的方差;k为信号帧索引变量,k=1,2,…,K,且K为总信号帧数。
进一步地,所述第四获取子模块,包括:
第三获取单元,用于获取当前帧语音信号在预设频点的频谱矢量与前一帧语音信号在预设频点的频谱矢量之间的相干系数;
第四获取单元,用于根据所述相干系数,获取当前帧语音信号在预设频点的频谱矢量与前一帧语音信号在预设频点的频谱矢量间相干系数的幅值平方。
进一步地,所述第三获取单元用于:
获取麦克风阵列捕获的当前帧语音信号的频谱矢量在预设频点处的谱线的方差和及当前帧语音信号的频谱矢量与前一帧语音信号的频谱矢量之间的协方差;
根据所述方差和及所述协方差,获取当前帧语音信号在预设频点的频谱矢量与前一帧语音信号在预设频点的频谱矢量之间的相干系数。
进一步地,所述麦克风阵列捕获的当前帧语音信号的频谱矢量在预设频点处的谱线的方差和的获取方式为:
根据公式:
Figure BDA0001530079200000521
获取方差和;
其中,
Figure BDA0001530079200000522
为麦克风阵列捕获的语音信号的第k帧第m个频点的谱线的方差和;
Figure BDA0001530079200000523
为第n个麦克风接收信号的第k帧快速傅氏变换中第m个频点的谱线的方差;n=1,2,…,N,且N为捕获语音信号的麦克风总数;m=1,2,…,M,且M为频点总数;k为信号帧索引变量,k=1,2,…,K,且K为语音信号总帧数。
进一步地,所述第n个麦克风接收信号的第k帧快速傅氏变换中第m个频点的谱线的方差的获取方式为:
根据公式:
Figure BDA0001530079200000524
获取第n个麦克风接收信号的第k帧快速傅氏变换中第m个频点的谱线的方差;
其中,
Figure BDA0001530079200000525
为第n个麦克风接收信号的第k帧快速傅氏变换中第m个频点的谱线的方差;
Figure BDA0001530079200000526
为第n个麦克风接收信号的第k-1帧快速傅氏变换中第m个频点的谱线的方差;yn,m[k]*为yn,m[k]的共轭;yn,m[k]为第n个麦克风接收信号的第k帧快速傅氏变换中第m个频点的谱线;n=1,2,…,N,且N为捕获语音信号的麦克风总数;m=1,2,…,M,且M为频点总数;k为信号帧索引变量,k=1,2,…,K,且K为语音信号总帧数;λ为平滑系数,且0<λ<1。
进一步地,所述当前帧语音信号的频谱矢量与前一帧语音信号的频谱矢量之间的协方差的获取方式为:
根据公式:Δn,m[k]=λ·Δn,m[k-1]+(1-λ)·{yn,m[k]yn,m[k-1]*}获取协方差;
其中,Δn,m[k]为当前帧语音信号的频谱矢量与前一帧语音信号的频谱矢量之间的协方差;Δn,m[k-1]为第k-1帧语音信号的频谱矢量与前一帧语音信号的频谱矢量之间的协方差;yn,m[k-1]*为yn,m[k-1]的共轭;yn,m[k]为第n个麦克风接收信号的第k帧快速傅氏变换中第m个频点的谱线;n=1,2,…,N,且N为捕获语音信号的麦克风总数;m=1,2,…,M,且M为频点总数;k为信号帧索引变量,k=1,2,…,K,且K为语音信号总帧数;λ为平滑系数,且0<λ<1。
进一步地,所述根据所述方差和及所述协方差,获取当前帧语音信号在预设频点的频谱矢量与前一帧语音信号在预设频点的频谱矢量之间的相干系数的方式为:
根据公式:
Figure BDA0001530079200000531
获取当前帧语音信号在预设频点的频谱矢量与前一帧语音信号在预设频点的频谱矢量之间的相干系数;
其中,ρm[k]为当前帧语音信号在频点m处的频谱矢量与前一帧语音信号在频点m处的频谱矢量之间的相干系数;Δn,m[k]为当前帧语音信号的频谱矢量与前一帧语音信号的频谱矢量之间的协方差;
Figure BDA0001530079200000532
为麦克风阵列捕获的语音信号的第k帧第m个频点的谱线的方差和;
Figure BDA0001530079200000533
为麦克风阵列捕获的语音信号的第k-1帧第m个频点的谱线的方差和;n=1,2,…,N,且N为捕获语音信号的麦克风总数;m=1,2,…,M,且M为频点总数;k为信号帧索引变量,k=1,2,…,K,且K为语音信号总帧数。
进一步地,所述第四获取单元用于:
根据公式:C2[k,m]=|ρm[k]|2获取当前帧语音信号在预设频点的频谱矢量与前一帧语音信号在预设频点的频谱矢量间相干系数的幅值平方;
其中,C2[k,m]为当前帧语音信号在频点m处的频谱矢量与前一帧语音信号在频点m处的频谱矢量间相干系数的幅值平方;ρm[k]为当前帧语音信号在频点m处的频谱矢量与前一帧语音信号在频点m处的频谱矢量之间的相干系数;m=1,2,…,M,且M为频点总数;k为信号帧索引变量,k=1,2,…,K,且K为语音信号总帧数。
进一步地,所述获取所述第一频点中每一频点处的频谱的去混响后的第一语音信号频谱矢量的方式为:
根据公式:
Figure BDA0001530079200000541
获取去混响后的第一语音信号频谱矢量;
其中,
Figure BDA0001530079200000542
为去混响后的第一语音信号频谱矢量;
Figure BDA0001530079200000543
为麦克风阵列捕获到的语音信号的频谱矢量;
Figure BDA0001530079200000544
为Wm[k-1]的共轭转置矩阵;Wm[k-1]为第k-1帧的语音信号的频谱矢量的预测系数矩阵;
Figure BDA0001530079200000545
为麦克风阵列捕获的第k帧语音信号前的预设帧数的阵列信号;m=1,2,…,M,且M为频点总数;k为信号帧索引变量,k=1,2,…,K,且K为语音信号总帧数。
进一步地,所述根据所述第一语音信号频谱矢量对每一频点的加权预测误差的预测系数矩阵进行更新的方式,包括:
获取卡尔曼增益;
根据所述卡尔曼增益以及去混响后的第一语音信号频谱矢量,进行第一频点中每一频点的加权预测误差的预测系数矩阵的更新。
进一步地,所述获取卡尔曼增益的方式为:
根据公式:
Figure BDA0001530079200000546
获取;
其中,Km[k]为卡尔曼增益;
Figure BDA0001530079200000547
为麦克风阵列捕获的第k帧语音信号前的预设帧数的阵列信号;
Figure BDA0001530079200000548
Figure BDA0001530079200000549
的共轭转置矩阵;
Figure BDA00015300792000005410
为第K-1帧信号的相关矩阵的逆矩阵;Λm 2[k]为麦克风阵列捕获的语音信号的功率;α为遗忘因子,且0<α<1;m=1,2,…,M,且M为频点总数;k为信号帧索引变量,k=1,2,…,K,且K为语音信号总帧数。
进一步地,所述麦克风阵列捕获的第k帧语音信号前的预设帧数的阵列信号的获取方式为:
根据公式:
Figure BDA00015300792000005411
获取麦克风阵列捕获的第k帧语音信号前的预设帧数的阵列信号;
其中,
Figure BDA0001530079200000551
为麦克风阵列捕获的第k帧语音信号前的预设帧数的阵列信号;m=1,2,…,M,且M为频点总数;k为信号帧索引变量,k=1,2,…,K,且K为语音信号总帧数;n=1,2,…,N,且N为捕获语音信号的麦克风总数;N′>Δ且N′和Δ均为正整数;yn,m[k-Δ-(N′-1)]为第n个麦克风接收信号的第k-Δ-(N′-1)帧快速傅氏变换中第m个频点的谱线。
进一步地,所述麦克风阵列捕获的语音信号的功率的获取方式为:
根据公式:
Figure BDA0001530079200000552
获取麦克风阵列捕获的语音信号的功率;
其中,Λm 2[k]为麦克风阵列捕获的语音信号的功率;yn,m[k]为第n个麦克风接收信号的第k帧快速傅氏变换中第m个频点的谱线;n=1,2,…,N,且N为捕获语音信号的麦克风总数;m=1,2,…,M,且M为频点总数;k为信号帧索引变量,k=1,2,…,K,且K为语音信号总帧数。
进一步地,在所述根据所述第一语音信号频谱矢量对每一频点的加权预测误差的预测系数矩阵进行更新之后,还包括:
根据公式:
Figure BDA0001530079200000553
进行相关矩阵的逆矩阵的更新;
其中,
Figure BDA0001530079200000554
为第k帧相关矩阵的逆矩阵;
Figure BDA0001530079200000555
为第k-1帧相关矩阵的逆矩阵;Km[k]为卡尔曼增益;
Figure BDA0001530079200000556
Figure BDA0001530079200000557
的共轭转置矩阵;
Figure BDA0001530079200000558
为麦克风阵列捕获的第k帧语音信号前的预设帧数的阵列信号;α为遗忘因子,且0<α<1;m=1,2,…,M,且M为频点总数;k为信号帧索引变量,k=1,2,…,K,且K为语音信号总帧数。
进一步地,所述根据所述卡尔曼增益以及去混响后的第一语音信号频谱矢量,进行第一频点中每一频点的加权预测误差的预测系数矩阵的更新的方式为:
根据公式:
Figure BDA0001530079200000559
进行第一频点中每一频点的加权预测误差的预测系数矩阵的更新;
其中,Wm[k]为更新后的预测系数矩阵;Wm[k-1]为更新前的预测系数矩阵;Km[k]为卡尔曼增益;
Figure BDA0001530079200000561
Figure BDA0001530079200000562
的共轭转置矩阵;
Figure BDA0001530079200000563
为去混响后的第一语音信号频谱矢量;m=1,2,…,M,且M为频点总数;k为信号帧索引变量,k=1,2,…,K,且K为语音信号总帧数。
进一步地,所述第四获取模块,包括:
第五获取子模块,用于根据所述第一语音信号频谱矢量和非语音信号频谱矢量,获取每帧语音信号的第二语音信号频谱矢量;
第六获取子模块,用于根据每帧语音信号的第二语音信号频谱矢量,获取去混响语音信号。
需要说明的是,该装置的实施例是与上述方法实施例一一对应的装置,上述方法实施例中所有实现方式均适用于该装置的实施例中,也能达到相同的技术效果。
如图10所示,本发明实施例还提供一种语音去混响的装置,包括存储器101、处理器102及存储在所述存储器101上并可在所述处理器上运行的计算机程序,且所述存储器91通过总线接口103与所述处理器102连接;其中,所述处理器102执行所述计算机程序时实现以下步骤:
获取麦克风阵列捕获的每帧语音信号的频谱矢量;
根据所述每帧语音信号的频谱矢量,分别获取检测结果为语音的信号帧的第一频点以及检测结果为非语音的信号帧的第二频点;
获取所述第一频点中每一频点处的频谱的去混响后的第一语音信号频谱矢量,并根据所述第一语音信号频谱矢量对每一频点的加权预测误差的预测系数矩阵进行更新;
获取第二频点中每一频点的频谱进行衰减后的非语音信号频谱矢量;
根据所述第一语音信号频谱矢量和非语音信号频谱矢量,获取去混响语音信号。
进一步地,所述计算机程序被处理器执行时还可实现如下步骤:
获取麦克风阵列实时捕获的语音信号;
对每一帧语音信号进行频谱计算,得到麦克风阵列捕获的每帧语音信号的频谱矢量。
进一步地,所述计算机程序被处理器执行时还可实现如下步骤:
获取麦克风阵列捕获的每帧语音信号的频谱矢量的香农熵值和所述香农熵值的方差之比;
获取当前帧语音信号在预设频点的频谱矢量与前一帧语音信号在预设频点的频谱矢量间相干系数的幅值平方;
在所述麦克风阵列捕获的每帧语音信号的频谱矢量的香农熵值和所述香农熵值的方差之比小于第一门限参数,且所述当前帧语音信号在预设频点的频谱矢量与前一帧语音信号在预设频点的频谱矢量间相干系数的幅值平方大于第二门限参数时,将当前帧语音信号在预设频点处标记为语音;或
在所述麦克风阵列捕获的每帧语音信号的频谱矢量的香农熵值和所述香农熵值的方差之比大于或等于第一门限参数,或所述当前帧语音信号在预设频点的频谱矢量与前一帧语音信号在预设频点的频谱矢量的幅值平方相干系数小于或等于第二门限参数时,将当前帧语音信号在预设频点处标记为噪音。
进一步地,所述计算机程序被处理器执行时还可实现如下步骤:
获取麦克风阵列捕获的每帧语音信号的频谱矢量的香农熵值和所述麦克风阵列捕获的每帧语音信号的频谱矢量的香农熵值的方差;
根据所述香农熵值和所述香农熵值的方差,获取麦克风阵列捕获的每帧语音信号的频谱矢量的香农熵值和所述香农熵值的方差之比。
进一步地,所述计算机程序被处理器执行时还可实现如下步骤:
获取检测频点处的每帧语音信号的频谱矢量的幅值权重;
根据所述幅值权重,获取每一个麦克风捕获的每帧语音信号的频谱矢量的香农熵值;
根据所述每一个麦克风捕获的每帧语音信号的频谱矢量的香农熵值,获取麦克风阵列捕获的每帧语音信号的频谱矢量的香农熵值。
进一步地,所述计算机程序被处理器执行时还可实现如下步骤:
根据公式:
Figure BDA0001530079200000581
获取幅值权重;
其中,pn,m[k]为第k帧第m个频点处的语音信号的频谱矢量的幅值权重;yn,m[k]为第n个麦克风接收信号的第k帧快速傅氏变换中第m个频点的谱线;n=1,2,…,N,且N为捕获语音信号的麦克风总数;m=1,2,…,M,且M为频点总数;k为信号帧索引变量,k=1,2,…,K,且K为语音信号总帧数。
进一步地,所述计算机程序被处理器执行时还可实现如下步骤:
根据公式:
Figure BDA0001530079200000582
获取每一个麦克风捕获的每帧语音信号的频谱矢量的香农熵值;
其中,Hn,Y[k]为第k帧第n个麦克风捕获的语音信号的频谱矢量的香农熵值;pn,m[k]为第k帧第m个频点处的语音信号的频谱矢量的幅值权重;n=1,2,…,N,且N为捕获语音信号的麦克风总数;m=1,2,…,M,且M为频点总数;k为信号帧索引变量,k=1,2,…,K,且K为语音信号总帧数。
进一步地,所述计算机程序被处理器执行时还可实现如下步骤:
根据公式:
Figure BDA0001530079200000583
获取麦克风阵列捕获的每帧语音信号的频谱矢量的香农熵值;
其中,HY[k]为麦克风阵列捕获的每帧语音信号的频谱矢量的香农熵值;Hn,Y[k]为第k帧第n个麦克风捕获的语音信号的频谱矢量的香农熵值;n=1,2,…,N,且N为捕获语音信号的麦克风总数;k为信号帧索引变量,k=1,2,…,K,且K为语音信号总帧数。
进一步地,所述计算机程序被处理器执行时还可实现如下步骤:
根据所述麦克风阵列捕获的每帧语音信号的频谱矢量的香农熵值,获取所述香农熵值的均值;
根据所述麦克风阵列捕获的每帧语音信号的频谱矢量的香农熵值以及所述香农熵值的均值,获取麦克风阵列捕获的每帧语音信号的频谱矢量的香农熵值的方差。
进一步地,所述计算机程序被处理器执行时还可实现如下步骤:
根据公式:μH[k]=λ·μH[k-1]+(1-λ)·HY[k]获取香农熵值的均值;
其中,μH[k]为第k帧语音信号的频谱矢量的香农熵值的均值;HY[k]为麦克风阵列捕获的第k帧语音信号的频谱矢量的香农熵值;μH[k-1]为第k-1帧语音信号的频谱矢量的香农熵值的均值;λ为平滑系数,且0<λ<1;k为信号帧索引变量,k=1,2,…,K,且K为语音信号总帧数。
进一步地,所述计算机程序被处理器执行时还可实现如下步骤:
根据公式:
Figure BDA0001530079200000591
获取麦克风阵列捕获的每帧语音信号的频谱矢量的香农熵值的方差;
其中,
Figure BDA0001530079200000592
为第k帧麦克风阵列信号谱矢量的香农熵值的方差;
Figure BDA0001530079200000593
为第k-1帧麦克风阵列信号谱矢量的香农熵值的方差;μH[k]为第k帧语音信号的频谱矢量的香农熵值的均值;HY[k]为麦克风阵列捕获的第k帧语音信号的频谱矢量的香农熵值;λ为平滑系数,且0<λ<1;k为信号帧索引变量,k=1,2,…,K,且K为语音信号总帧数。
进一步地,所述计算机程序被处理器执行时还可实现如下步骤:
根据公式:
Figure BDA0001530079200000594
获取麦克风阵列捕获的每帧语音信号的频谱矢量的香农熵值和所述香农熵值的方差之比;
其中,C1[k]为麦克风阵列捕获的每帧语音信号的频谱矢量的香农熵值和所述香农熵值的方差之比;HY[k]为麦克风阵列捕获的每帧语音信号的频谱矢量的香农熵值;
Figure BDA0001530079200000595
为第k帧麦克风阵列信号谱矢量的香农熵值的方差;k为信号帧索引变量,k=1,2,…,K,且K为总信号帧数。
进一步地,所述计算机程序被处理器执行时还可实现如下步骤:
获取当前帧语音信号在预设频点的频谱矢量与前一帧语音信号在预设频点的频谱矢量之间的相干系数;
根据所述相干系数,获取当前帧语音信号在预设频点的频谱矢量与前一帧语音信号在预设频点的频谱矢量间相干系数的幅值平方。
进一步地,所述计算机程序被处理器执行时还可实现如下步骤:
获取麦克风阵列捕获的当前帧语音信号的频谱矢量在预设频点处的谱线的方差和及当前帧语音信号的频谱矢量与前一帧语音信号的频谱矢量之间的协方差;
根据所述方差和及所述协方差,获取当前帧语音信号在预设频点的频谱矢量与前一帧语音信号在预设频点的频谱矢量之间的相干系数。
进一步地,所述计算机程序被处理器执行时还可实现如下步骤:
根据公式:
Figure BDA0001530079200000601
获取方差和;
其中,
Figure BDA0001530079200000602
为麦克风阵列捕获的语音信号的第k帧第m个频点的谱线的方差和;
Figure BDA0001530079200000603
为第n个麦克风接收信号的第k帧快速傅氏变换中第m个频点的谱线的方差;n=1,2,…,N,且N为捕获语音信号的麦克风总数;m=1,2,…,M,且M为频点总数;k为信号帧索引变量,k=1,2,…,K,且K为语音信号总帧数。
进一步地,所述计算机程序被处理器执行时还可实现如下步骤:
根据公式:
Figure BDA0001530079200000604
获取第n个麦克风接收信号的第k帧快速傅氏变换中第m个频点的谱线的方差;
其中,
Figure BDA0001530079200000605
为第n个麦克风接收信号的第k帧快速傅氏变换中第m个频点的谱线的方差;
Figure BDA0001530079200000606
为第n个麦克风接收信号的第k-1帧快速傅氏变换中第m个频点的谱线的方差;yn,m[k]*为yn,m[k]的共轭;yn,m[k]为第n个麦克风接收信号的第k帧快速傅氏变换中第m个频点的谱线;n=1,2,…,N,且N为捕获语音信号的麦克风总数;m=1,2,…,M,且M为频点总数;k为信号帧索引变量,k=1,2,…,K,且K为语音信号总帧数;λ为平滑系数,且0<λ<1。
进一步地,所述计算机程序被处理器执行时还可实现如下步骤:
根据公式:Δn,m[k]=λ·Δn,m[k-1]+(1-λ)·{yn,m[k]yn,m[k-1]*}获取协方差;
其中,Δn,m[k]为当前帧语音信号的频谱矢量与前一帧语音信号的频谱矢量之间的协方差;Δn,m[k-1]为第k-1帧语音信号的频谱矢量与前一帧语音信号的频谱矢量之间的协方差;yn,m[k-1]*为yn,m[k-1]的共轭;yn,m[k]为第n个麦克风接收信号的第k帧快速傅氏变换中第m个频点的谱线;n=1,2,…,N,且N为捕获语音信号的麦克风总数;m=1,2,…,M,且M为频点总数;k为信号帧索引变量,k=1,2,…,K,且K为语音信号总帧数;λ为平滑系数,且0<λ<1。
进一步地,所述计算机程序被处理器执行时还可实现如下步骤:
根据公式:
Figure BDA0001530079200000611
获取当前帧语音信号在预设频点的频谱矢量与前一帧语音信号在预设频点的频谱矢量之间的相干系数;
其中,ρm[k]为当前帧语音信号在频点m处的频谱矢量与前一帧语音信号在频点m处的频谱矢量之间的相干系数;Δn,m[k]为当前帧语音信号的频谱矢量与前一帧语音信号的频谱矢量之间的协方差;
Figure BDA0001530079200000612
为麦克风阵列捕获的语音信号的第k帧第m个频点的谱线的方差和;
Figure BDA0001530079200000613
为麦克风阵列捕获的语音信号的第k-1帧第m个频点的谱线的方差和;n=1,2,…,N,且N为捕获语音信号的麦克风总数;m=1,2,…,M,且M为频点总数;k为信号帧索引变量,k=1,2,…,K,且K为语音信号总帧数。
进一步地,所述计算机程序被处理器执行时还可实现如下步骤:
根据公式:C2[k,m]=|ρm[k]|2获取当前帧语音信号在预设频点的频谱矢量与前一帧语音信号在预设频点的频谱矢量间相干系数的幅值平方;
其中,C2[k,m]为当前帧语音信号在频点m处的频谱矢量与前一帧语音信号在频点m处的频谱矢量间相干系数的幅值平方;ρm[k]为当前帧语音信号在频点m处的频谱矢量与前一帧语音信号在频点m处的频谱矢量之间的相干系数;m=1,2,…,M,且M为频点总数;k为信号帧索引变量,k=1,2,…,K,且K为语音信号总帧数。
进一步地,所述计算机程序被处理器执行时还可实现如下步骤:
根据公式:
Figure BDA0001530079200000621
获取去混响后的第一语音信号频谱矢量;
其中,
Figure BDA0001530079200000622
为去混响后的第一语音信号频谱矢量;
Figure BDA0001530079200000623
为麦克风阵列捕获到的语音信号的频谱矢量;
Figure BDA0001530079200000624
为Wm[k-1]的共轭转置矩阵;Wm[k-1]为第k-1帧的语音信号的频谱矢量的预测系数矩阵;
Figure BDA0001530079200000625
为麦克风阵列捕获的第k帧语音信号前的预设帧数的阵列信号;m=1,2,…,M,且M为频点总数;k为信号帧索引变量,k=1,2,…,K,且K为语音信号总帧数。
进一步地,所述计算机程序被处理器执行时还可实现如下步骤:
获取卡尔曼增益;
根据所述卡尔曼增益以及去混响后的第一语音信号频谱矢量,进行第一频点中每一频点的加权预测误差的预测系数矩阵的更新。
进一步地,所述计算机程序被处理器执行时还可实现如下步骤:
根据公式:
Figure BDA0001530079200000626
获取;
其中,Km[k]为卡尔曼增益;
Figure BDA0001530079200000627
为麦克风阵列捕获的第k帧语音信号前的预设帧数的阵列信号;
Figure BDA0001530079200000628
Figure BDA0001530079200000629
的共轭转置矩阵;
Figure BDA00015300792000006210
为第K-1帧信号的相关矩阵的逆矩阵;Λm 2[k]为麦克风阵列捕获的语音信号的功率;α为遗忘因子,且0<α<1;m=1,2,…,M,且M为频点总数;k为信号帧索引变量,k=1,2,…,K,且K为语音信号总帧数。
进一步地,所述计算机程序被处理器执行时还可实现如下步骤:
根据公式:
Figure BDA00015300792000006211
获取麦克风阵列捕获的第k帧语音信号前的预设帧数的阵列信号;
其中,
Figure BDA0001530079200000631
为麦克风阵列捕获的第k帧语音信号前的预设帧数的阵列信号;m=1,2,…,M,且M为频点总数;k为信号帧索引变量,k=1,2,…,K,且K为语音信号总帧数;n=1,2,…,N,且N为捕获语音信号的麦克风总数;N′>Δ且N′和Δ均为正整数;yn,m[k-Δ-(N′-1)]为第n个麦克风接收信号的第k-Δ-(N′-1)帧快速傅氏变换中第m个频点的谱线。
进一步地,所述计算机程序被处理器执行时还可实现如下步骤:
根据公式:
Figure BDA0001530079200000632
获取麦克风阵列捕获的语音信号的功率;
其中,Λm 2[k]为麦克风阵列捕获的语音信号的功率;yn,m[k]为第n个麦克风接收信号的第k帧快速傅氏变换中第m个频点的谱线;n=1,2,…,N,且N为捕获语音信号的麦克风总数;m=1,2,…,M,且M为频点总数;k为信号帧索引变量,k=1,2,…,K,且K为语音信号总帧数。
进一步地,所述计算机程序被处理器执行时还可实现如下步骤:
根据公式:
Figure BDA0001530079200000633
进行相关矩阵的逆矩阵的更新;
其中,
Figure BDA0001530079200000634
为第k帧相关矩阵的逆矩阵;
Figure BDA0001530079200000635
为第k-1帧相关矩阵的逆矩阵;Km[k]为卡尔曼增益;
Figure BDA0001530079200000636
Figure BDA0001530079200000637
的共轭转置矩阵;
Figure BDA0001530079200000638
为麦克风阵列捕获的第k帧语音信号前的预设帧数的阵列信号;α为遗忘因子,且0<α<1;m=1,2,…,M,且M为频点总数;k为信号帧索引变量,k=1,2,…,K,且K为语音信号总帧数。
进一步地,所述计算机程序被处理器执行时还可实现如下步骤:
根据公式:
Figure BDA0001530079200000639
进行第一频点中每一频点的加权预测误差的预测系数矩阵的更新;
其中,Wm[k]为更新后的预测系数矩阵;Wm[k-1]为更新前的预测系数矩阵;Km[k]为卡尔曼增益;
Figure BDA00015300792000006310
Figure BDA00015300792000006311
的共轭转置矩阵;
Figure BDA00015300792000006312
为去混响后的第一语音信号频谱矢量;m=1,2,…,M,且M为频点总数;k为信号帧索引变量,k=1,2,…,K,且K为语音信号总帧数。
进一步地,所述计算机程序被处理器执行时还可实现如下步骤:
根据所述第一语音信号频谱矢量和非语音信号频谱矢量,获取每帧语音信号的第二语音信号频谱矢量;
根据每帧语音信号的第二语音信号频谱矢量,获取去混响语音信号。
本发明实施例还提供一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现上述的语音去混响的方法。
以上所述的是本发明的优选实施方式,应当指出对于本技术领域的普通人员来说,在不脱离本发明所述的原理前提下还可以作出若干改进和润饰,这些改进和润饰也在本发明的保护范围内。

Claims (79)

1.一种语音去混响的方法,其特征在于,包括:
获取麦克风阵列捕获的每帧语音信号的频谱矢量;
根据所述每帧语音信号的频谱矢量,分别获取检测结果为语音的信号帧的第一频点以及检测结果为非语音的信号帧的第二频点;
获取所述第一频点中每一频点处的频谱的去混响后的第一语音信号频谱矢量,并根据所述第一语音信号频谱矢量对每一频点的加权预测误差的预测系数矩阵进行更新;
获取第二频点中每一频点的频谱进行衰减后的非语音信号频谱矢量;
根据所述第一语音信号频谱矢量和非语音信号频谱矢量,获取去混响语音信号;
其中,所述根据所述每帧语音信号的频谱矢量,分别获取检测结果为语音的信号帧的第一频点以及检测结果为非语音的信号帧的第二频点的步骤,包括:
获取麦克风阵列捕获的每帧语音信号的频谱矢量的香农熵值和所述香农熵值的方差之比;
获取当前帧语音信号在预设频点的频谱矢量与前一帧语音信号在预设频点的频谱矢量间相干系数的幅值平方;
在所述麦克风阵列捕获的每帧语音信号的频谱矢量的香农熵值和所述香农熵值的方差之比小于第一门限参数,且所述当前帧语音信号在预设频点的频谱矢量与前一帧语音信号在预设频点的频谱矢量间相干系数的幅值平方大于第二门限参数时,将当前帧语音信号在预设频点处标记为语音;或
在所述麦克风阵列捕获的每帧语音信号的频谱矢量的香农熵值和所述香农熵值的方差之比大于或等于第一门限参数,或所述当前帧语音信号在预设频点的频谱矢量与前一帧语音信号在预设频点的频谱矢量的幅值平方相干系数小于或等于第二门限参数时,将当前帧语音信号在预设频点处标记为噪音。
2.根据权利要求1所述的语音去混响的方法,其特征在于,所述获取麦克风阵列捕获的每帧语音信号的频谱矢量的步骤,包括:
获取麦克风阵列实时捕获的语音信号;
对每一帧语音信号进行频谱计算,得到麦克风阵列捕获的每帧语音信号的频谱矢量。
3.根据权利要求1所述的语音去混响的方法,其特征在于,所述获取麦克风阵列捕获的每帧语音信号的频谱矢量的香农熵值和所述香农熵值的方差之比的步骤,包括:
获取麦克风阵列捕获的每帧语音信号的频谱矢量的香农熵值和所述麦克风阵列捕获的每帧语音信号的频谱矢量的香农熵值的方差;
根据所述香农熵值和所述香农熵值的方差,获取麦克风阵列捕获的每帧语音信号的频谱矢量的香农熵值和所述香农熵值的方差之比。
4.根据权利要求3所述的语音去混响的方法,其特征在于,所述麦克风阵列捕获的每帧语音信号的频谱矢量的香农熵值的获取方式为:
获取检测频点处的每帧语音信号的频谱矢量的幅值权重;
根据所述幅值权重,获取每一个麦克风捕获的每帧语音信号的频谱矢量的香农熵值;
根据所述每一个麦克风捕获的每帧语音信号的频谱矢量的香农熵值,获取麦克风阵列捕获的每帧语音信号的频谱矢量的香农熵值。
5.根据权利要求4所述的语音去混响的方法,其特征在于,所述获取检测频点处的每帧语音信号的频谱矢量的幅值权重的步骤,包括:
根据公式:
Figure FDA0002940143060000021
获取幅值权重;
其中,pn,m[k]为第k帧第m个频点处的语音信号的频谱矢量的幅值权重;yn,m[k]为第n个麦克风接收信号的第k帧快速傅氏变换中第m个频点的谱线;n=1,2,...,N,且N为捕获语音信号的麦克风总数;m=1,2,...,M,且M为频点总数;k为信号帧索引变量,k=1,2,...,K,且K为语音信号总帧数。
6.根据权利要求4所述的语音去混响的方法,其特征在于,所述根据所述幅值权重,获取每一个麦克风捕获的每帧语音信号的频谱矢量的香农熵值的步骤,包括:
根据公式:
Figure FDA0002940143060000031
获取每一个麦克风捕获的每帧语音信号的频谱矢量的香农熵值;
其中,Hn,Y[k]为第k帧第n个麦克风捕获的语音信号的频谱矢量的香农熵值;pn,m[k]为第k帧第m个频点处的语音信号的频谱矢量的幅值权重;n=1,2,...,N,且N为捕获语音信号的麦克风总数;m=1,2,...,M,且M为频点总数;k为信号帧索引变量,k=1,2,...,K,且K为语音信号总帧数。
7.根据权利要求4所述的语音去混响的方法,其特征在于,所述根据所述每一个麦克风捕获的每帧语音信号的频谱矢量的香农熵值,获取麦克风阵列捕获的每帧语音信号的频谱矢量的香农熵值的步骤,包括:
根据公式:
Figure FDA0002940143060000032
获取麦克风阵列捕获的每帧语音信号的频谱矢量的香农熵值;
其中,HY[k]为麦克风阵列捕获的每帧语音信号的频谱矢量的香农熵值;Hn,Y[k]为第k帧第n个麦克风捕获的语音信号的频谱矢量的香农熵值;n=1,2,...,N,且N为捕获语音信号的麦克风总数;k为信号帧索引变量,k=1,2,...,K,且K为语音信号总帧数。
8.根据权利要求3所述的语音去混响的方法,其特征在于,所述麦克风阵列捕获的每帧语音信号的频谱矢量的香农熵值的方差的获取方式为:
根据所述麦克风阵列捕获的每帧语音信号的频谱矢量的香农熵值,获取所述香农熵值的均值;
根据所述麦克风阵列捕获的每帧语音信号的频谱矢量的香农熵值以及所述香农熵值的均值,获取麦克风阵列捕获的每帧语音信号的频谱矢量的香农熵值的方差。
9.根据权利要求8所述的语音去混响的方法,其特征在于,所述根据所述麦克风阵列捕获的每帧语音信号的频谱矢量的香农熵值,获取所述香农熵值的均值的步骤,包括:
根据公式:μH[k]=λ·μH[k-1]+(1-λ)·HY[k]获取香农熵值的均值;
其中,μH[k]为第k帧语音信号的频谱矢量的香农熵值的均值;HY[k]为麦克风阵列捕获的第k帧语音信号的频谱矢量的香农熵值;μH[k-1]为第k-1帧语音信号的频谱矢量的香农熵值的均值;λ为平滑系数,且0<λ<1;k为信号帧索引变量,k=1,2,...,K,且K为语音信号总帧数。
10.根据权利要求8所述的语音去混响的方法,其特征在于,所述根据所述麦克风阵列捕获的每帧语音信号的频谱矢量的香农熵值以及所述香农熵值的均值,获取麦克风阵列捕获的每帧语音信号的频谱矢量的香农熵值的方差的步骤,包括:
根据公式:
Figure FDA0002940143060000041
获取麦克风阵列捕获的每帧语音信号的频谱矢量的香农熵值的方差;
其中,
Figure FDA0002940143060000042
为第k帧麦克风阵列信号谱矢量的香农熵值的方差;
Figure FDA0002940143060000043
为第k-1帧麦克风阵列信号谱矢量的香农熵值的方差;μH[k]为第k帧语音信号的频谱矢量的香农熵值的均值;HY[k]为麦克风阵列捕获的第k帧语音信号的频谱矢量的香农熵值;λ为平滑系数,且0<λ<1;k为信号帧索引变量,k=1,2,...,K,且K为语音信号总帧数。
11.根据权利要求3所述的语音去混响的方法,其特征在于,所述根据所述香农熵值和所述香农熵值的方差,获取麦克风阵列捕获的每帧语音信号的频谱矢量的香农熵值和所述香农熵值的方差之比的步骤,包括:
根据公式:
Figure FDA0002940143060000044
获取麦克风阵列捕获的每帧语音信号的频谱矢量的香农熵值和所述香农熵值的方差之比;
其中,C1[k]为麦克风阵列捕获的每帧语音信号的频谱矢量的香农熵值和所述香农熵值的方差之比;HY[k]为麦克风阵列捕获的每帧语音信号的频谱矢量的香农熵值;
Figure FDA0002940143060000051
为第k帧麦克风阵列信号谱矢量的香农熵值的方差;k为信号帧索引变量,k=1,2,...,K,且K为总信号帧数。
12.根据权利要求1所述的语音去混响的方法,其特征在于,所述获取当前帧语音信号在预设频点的频谱矢量与前一帧语音信号在预设频点的频谱矢量间相干系数的幅值平方的步骤,包括:
获取当前帧语音信号在预设频点的频谱矢量与前一帧语音信号在预设频点的频谱矢量之间的相干系数;
根据所述相干系数,获取当前帧语音信号在预设频点的频谱矢量与前一帧语音信号在预设频点的频谱矢量间相干系数的幅值平方。
13.根据权利要求12所述的语音去混响的方法,其特征在于,所述获取当前帧语音信号在预设频点的频谱矢量与前一帧语音信号在预设频点的频谱矢量之间的相干系数的步骤,包括:
获取麦克风阵列捕获的当前帧语音信号的频谱矢量在预设频点处的谱线的方差和及当前帧语音信号的频谱矢量与前一帧语音信号的频谱矢量之间的协方差;
根据所述方差和及所述协方差,获取当前帧语音信号在预设频点的频谱矢量与前一帧语音信号在预设频点的频谱矢量之间的相干系数。
14.根据权利要求13所述的语音去混响的方法,其特征在于,所述麦克风阵列捕获的当前帧语音信号的频谱矢量在预设频点处的谱线的方差和的获取方式为:
根据公式:
Figure FDA0002940143060000052
获取方差和;
其中,
Figure FDA0002940143060000053
为麦克风阵列捕获的语音信号的第k帧第m个频点的谱线的方差和;
Figure FDA0002940143060000054
为第n个麦克风接收信号的第k帧快速傅氏变换中第m个频点的谱线的方差;n=1,2,...,N,且N为捕获语音信号的麦克风总数;m=1,2,...,M,且M为频点总数;k为信号帧索引变量,k=1,2,...,K,且K为语音信号总帧数。
15.根据权利要求14所述的语音去混响的方法,其特征在于,所述第n个麦克风接收信号的第k帧快速傅氏变换中第m个频点的谱线的方差的获取方式为:
根据公式:
Figure FDA0002940143060000061
获取第n个麦克风接收信号的第k帧快速傅氏变换中第m个频点的谱线的方差;
其中,
Figure FDA0002940143060000062
为第n个麦克风接收信号的第k帧快速傅氏变换中第m个频点的谱线的方差;
Figure FDA0002940143060000063
为第n个麦克风接收信号的第k-1帧快速傅氏变换中第m个频点的谱线的方差;yn,m[k]*为yn,m[k]的共轭;yn,m[k]为第n个麦克风接收信号的第k帧快速傅氏变换中第m个频点的谱线;n=1,2,...,N,且N为捕获语音信号的麦克风总数;m=1,2,...,M,且M为频点总数;k为信号帧索引变量,k=1,2,...,K,且K为语音信号总帧数;λ为平滑系数,且0<λ<1。
16.根据权利要求13所述的语音去混响的方法,其特征在于,所述当前帧语音信号的频谱矢量与前一帧语音信号的频谱矢量之间的协方差的获取方式为:
根据公式:Δn,m[k]=λ·Δn,m[k-1]+(1-λ)·{yn,m[k]yn,m[k-1]*}获取协方差;
其中,Δn,m[k]为当前帧语音信号的频谱矢量与前一帧语音信号的频谱矢量之间的协方差;Δn,m[k-1]为第k-1帧语音信号的频谱矢量与前一帧语音信号的频谱矢量之间的协方差;yn,m[k-1]*为yn,m[k-1]的共轭;yn,m[k]为第n个麦克风接收信号的第k帧快速傅氏变换中第m个频点的谱线;n=1,2,...,N,且N为捕获语音信号的麦克风总数;m=1,2,...,M,且M为频点总数;k为信号帧索引变量,k=1,2,...,K,且K为语音信号总帧数;λ为平滑系数,且0<λ<1。
17.根据权利要求13所述的语音去混响的方法,其特征在于,所述根据所述方差和及所述协方差,获取当前帧语音信号在预设频点的频谱矢量与前一帧语音信号在预设频点的频谱矢量之间的相干系数的步骤,包括:
根据公式:
Figure FDA0002940143060000071
获取当前帧语音信号在预设频点的频谱矢量与前一帧语音信号在预设频点的频谱矢量之间的相干系数;
其中,ρm[k]为当前帧语音信号在频点m处的频谱矢量与前一帧语音信号在频点m处的频谱矢量之间的相干系数;Δn,m[k]为当前帧语音信号的频谱矢量与前一帧语音信号的频谱矢量之间的协方差;
Figure FDA0002940143060000072
为麦克风阵列捕获的语音信号的第k帧第m个频点的谱线的方差和;
Figure FDA0002940143060000073
为麦克风阵列捕获的语音信号的第k-1帧第m个频点的谱线的方差和;n=1,2,...,N,且N为捕获语音信号的麦克风总数;m=1,2,...,M,且M为频点总数;k为信号帧索引变量,k=1,2,...,K,且K为语音信号总帧数。
18.根据权利要求12所述的语音去混响的方法,其特征在于,所述根据所述相干系数,获取当前帧语音信号在预设频点的频谱矢量与前一帧语音信号在预设频点的频谱矢量间相干系数的幅值平方的步骤,包括:
根据公式:C2[k,m]=|ρm[k]|2获取当前帧语音信号在预设频点的频谱矢量与前一帧语音信号在预设频点的频谱矢量间相干系数的幅值平方;
其中,C2[k,m]为当前帧语音信号在频点m处的频谱矢量与前一帧语音信号在频点m处的频谱矢量间相干系数的幅值平方;ρm[k]为当前帧语音信号在频点m处的频谱矢量与前一帧语音信号在频点m处的频谱矢量之间的相干系数;m=1,2,...,M,且M为频点总数;k为信号帧索引变量,k=1,2,...,K,且K为语音信号总帧数。
19.根据权利要求1所述的语音去混响的方法,其特征在于,所述获取所述第一频点中每一频点处的频谱的去混响后的第一语音信号频谱矢量,包括:
根据公式:
Figure FDA0002940143060000074
获取去混响后的第一语音信号频谱矢量;
其中,
Figure FDA0002940143060000075
为去混响后的第一语音信号频谱矢量;
Figure FDA0002940143060000076
为麦克风阵列捕获到的语音信号的频谱矢量;
Figure FDA0002940143060000077
为Wm[k-1]的共轭转置矩阵;Wm[k-1]为第k-1帧的语音信号的频谱矢量的预测系数矩阵;
Figure FDA0002940143060000081
为麦克风阵列捕获的第k帧语音信号前的预设帧数的阵列信号;m=1,2,...,M,且M为频点总数;k为信号帧索引变量,k=1,2,...,K,且K为语音信号总帧数。
20.根据权利要求1所述的语音去混响的方法,其特征在于,所述根据所述第一语音信号频谱矢量对每一频点的加权预测误差的预测系数矩阵进行更新,包括:
获取卡尔曼增益;
根据所述卡尔曼增益以及去混响后的第一语音信号频谱矢量,进行第一频点中每一频点的加权预测误差的预测系数矩阵的更新。
21.根据权利要求20所述的语音去混响的方法,其特征在于,所述获取卡尔曼增益的步骤,包括:
根据公式:
Figure FDA0002940143060000082
获取;
其中,Km[k]为卡尔曼增益;
Figure FDA0002940143060000083
为麦克风阵列捕获的第k帧语音信号前的预设帧数的阵列信号;
Figure FDA0002940143060000084
Figure FDA0002940143060000085
的共轭转置矩阵;
Figure FDA0002940143060000086
为第K-1帧信号的相关矩阵的逆矩阵;Λm 2[k]为麦克风阵列捕获的语音信号的功率;α为遗忘因子,且0<α<1;m=1,2,...,M,且M为频点总数;k为信号帧索引变量,k=1,2,...,K,且K为语音信号总帧数。
22.根据权利要求21所述的语音去混响的方法,其特征在于,所述麦克风阵列捕获的第k帧语音信号前的预设帧数的阵列信号的获取方式为:
根据公式:
Figure FDA0002940143060000087
获取麦克风阵列捕获的第k帧语音信号前的预设帧数的阵列信号;
其中,
Figure FDA0002940143060000088
为麦克风阵列捕获的第k帧语音信号前的预设帧数的阵列信号;m=1,2,...,M,且M为频点总数;k为信号帧索引变量,k=1,2,...,K,且K为语音信号总帧数;n=1,2,...,N,且N为捕获语音信号的麦克风总数;N′>Δ且N′和Δ均为正整数;yn,m[k-Δ-(N′-1)]为第n个麦克风接收信号的第k-Δ-(N′-1)帧快速傅氏变换中第m个频点的谱线。
23.根据权利要求21所述的语音去混响的方法,其特征在于,所述麦克风阵列捕获的语音信号的功率的获取方式为:
根据公式:
Figure FDA0002940143060000091
获取麦克风阵列捕获的语音信号的功率;
其中,Λm 2[k]为麦克风阵列捕获的语音信号的功率;yn,m[k]为第n个麦克风接收信号的第k帧快速傅氏变换中第m个频点的谱线;n=1,2,...,N,且N为捕获语音信号的麦克风总数;m=1,2,...,M,且M为频点总数;k为信号帧索引变量,k=1,2,...,K,且K为语音信号总帧数。
24.根据权利要求19所述的语音去混响的方法,其特征在于,在所述根据所述第一语音信号频谱矢量对每一频点的加权预测误差的预测系数矩阵进行更新之后,还包括:
根据公式:
Figure FDA0002940143060000092
进行相关矩阵的逆矩阵的更新;
其中,
Figure FDA0002940143060000093
为第k帧相关矩阵的逆矩阵;
Figure FDA0002940143060000094
为第k-1帧相关矩阵的逆矩阵;Km[k]为卡尔曼增益;
Figure FDA0002940143060000095
Figure FDA0002940143060000096
的共轭转置矩阵;
Figure FDA0002940143060000097
为麦克风阵列捕获的第k帧语音信号前的预设帧数的阵列信号;α为遗忘因子,且0<α<1;m=1,2,...,M,且M为频点总数;k为信号帧索引变量,k=1,2,...,K,且K为语音信号总帧数。
25.根据权利要求20所述的语音去混响的方法,其特征在于,所述根据所述卡尔曼增益以及去混响后的第一语音信号频谱矢量,进行第一频点中每一频点的加权预测误差的预测系数矩阵的更新的步骤,包括:
根据公式:
Figure FDA0002940143060000098
进行第一频点中每一频点的加权预测误差的预测系数矩阵的更新;
其中,Wm[k]为更新后的预测系数矩阵;Wm[k-1]为更新前的预测系数矩阵;Km[k]为卡尔曼增益;
Figure FDA0002940143060000101
Figure FDA0002940143060000102
的共轭转置矩阵;
Figure FDA0002940143060000103
为去混响后的第一语音信号频谱矢量;m=1,2,...,M,且M为频点总数;k为信号帧索引变量,k=1,2,...,K,且K为语音信号总帧数。
26.根据权利要求1所述的语音去混响的方法,其特征在于,所述根据所述第一语音信号频谱矢量和非语音信号频谱矢量,获取去混响语音信号的步骤,包括:
根据所述第一语音信号频谱矢量和非语音信号频谱矢量,获取每帧语音信号的第二语音信号频谱矢量;
根据每帧语音信号的第二语音信号频谱矢量,获取去混响语音信号。
27.一种语音去混响的装置,包括存储器、处理器及存储在所述存储器上并可在所述处理器上运行的计算机程序;其特征在于,所述处理器执行所述计算机程序时实现以下步骤:
获取麦克风阵列捕获的每帧语音信号的频谱矢量;
根据所述每帧语音信号的频谱矢量,分别获取检测结果为语音的信号帧的第一频点以及检测结果为非语音的信号帧的第二频点;
获取所述第一频点中每一频点处的频谱的去混响后的第一语音信号频谱矢量,并根据所述第一语音信号频谱矢量对每一频点的加权预测误差的预测系数矩阵进行更新;
获取第二频点中每一频点的频谱进行衰减后的非语音信号频谱矢量;
根据所述第一语音信号频谱矢量和非语音信号频谱矢量,获取去混响语音信号;
所述计算机程序被处理器执行时还可实现如下步骤:
获取麦克风阵列捕获的每帧语音信号的频谱矢量的香农熵值和所述香农熵值的方差之比;
获取当前帧语音信号在预设频点的频谱矢量与前一帧语音信号在预设频点的频谱矢量间相干系数的幅值平方;
在所述麦克风阵列捕获的每帧语音信号的频谱矢量的香农熵值和所述香农熵值的方差之比小于第一门限参数,且所述当前帧语音信号在预设频点的频谱矢量与前一帧语音信号在预设频点的频谱矢量间相干系数的幅值平方大于第二门限参数时,将当前帧语音信号在预设频点处标记为语音;或
在所述麦克风阵列捕获的每帧语音信号的频谱矢量的香农熵值和所述香农熵值的方差之比大于或等于第一门限参数,或所述当前帧语音信号在预设频点的频谱矢量与前一帧语音信号在预设频点的频谱矢量的幅值平方相干系数小于或等于第二门限参数时,将当前帧语音信号在预设频点处标记为噪音。
28.根据权利要求27所述的语音去混响的装置,其特征在于,所述计算机程序被处理器执行时还可实现如下步骤:
获取麦克风阵列实时捕获的语音信号;
对每一帧语音信号进行频谱计算,得到麦克风阵列捕获的每帧语音信号的频谱矢量。
29.根据权利要求27所述的语音去混响的装置,其特征在于,所述计算机程序被处理器执行时还可实现如下步骤:
获取麦克风阵列捕获的每帧语音信号的频谱矢量的香农熵值和所述麦克风阵列捕获的每帧语音信号的频谱矢量的香农熵值的方差;
根据所述香农熵值和所述香农熵值的方差,获取麦克风阵列捕获的每帧语音信号的频谱矢量的香农熵值和所述香农熵值的方差之比。
30.根据权利要求29所述的语音去混响的装置,其特征在于,所述计算机程序被处理器执行时还可实现如下步骤:
获取检测频点处的每帧语音信号的频谱矢量的幅值权重;
根据所述幅值权重,获取每一个麦克风捕获的每帧语音信号的频谱矢量的香农熵值;
根据所述每一个麦克风捕获的每帧语音信号的频谱矢量的香农熵值,获取麦克风阵列捕获的每帧语音信号的频谱矢量的香农熵值。
31.根据权利要求30所述的语音去混响的装置,其特征在于,所述计算机程序被处理器执行时还可实现如下步骤:
根据公式:
Figure FDA0002940143060000121
获取幅值权重;
其中,pn,m[k]为第k帧第m个频点处的语音信号的频谱矢量的幅值权重;yn,m[k]为第n个麦克风接收信号的第k帧快速傅氏变换中第m个频点的谱线;n=1,2,...,N,且N为捕获语音信号的麦克风总数;m=1,2,...,M,且M为频点总数;k为信号帧索引变量,k=1,2,...,K,且K为语音信号总帧数。
32.根据权利要求30所述的语音去混响的装置,其特征在于,所述计算机程序被处理器执行时还可实现如下步骤:
根据公式:
Figure FDA0002940143060000122
获取每一个麦克风捕获的每帧语音信号的频谱矢量的香农熵值;
其中,Hn,Y[k]为第k帧第n个麦克风捕获的语音信号的频谱矢量的香农熵值;pn,m[k]为第k帧第m个频点处的语音信号的频谱矢量的幅值权重;n=1,2,...,N,且N为捕获语音信号的麦克风总数;m=1,2,...,M,且M为频点总数;k为信号帧索引变量,k=1,2,...,K,且K为语音信号总帧数。
33.根据权利要求30所述的语音去混响的装置,其特征在于,所述计算机程序被处理器执行时还可实现如下步骤:
根据公式:
Figure FDA0002940143060000123
获取麦克风阵列捕获的每帧语音信号的频谱矢量的香农熵值;
其中,HY[k]为麦克风阵列捕获的每帧语音信号的频谱矢量的香农熵值;Hn,Y[k]为第k帧第n个麦克风捕获的语音信号的频谱矢量的香农熵值;n=1,2,...,N,且N为捕获语音信号的麦克风总数;k为信号帧索引变量,k=1,2,...,K,且K为语音信号总帧数。
34.根据权利要求29所述的语音去混响的装置,其特征在于,所述计算机程序被处理器执行时还可实现如下步骤:
根据所述麦克风阵列捕获的每帧语音信号的频谱矢量的香农熵值,获取所述香农熵值的均值;
根据所述麦克风阵列捕获的每帧语音信号的频谱矢量的香农熵值以及所述香农熵值的均值,获取麦克风阵列捕获的每帧语音信号的频谱矢量的香农熵值的方差。
35.根据权利要求34所述的语音去混响的装置,其特征在于,所述计算机程序被处理器执行时还可实现如下步骤:
根据公式:μH[k]=λ·μH[k-1]+(1-λ)·HY[k]获取香农熵值的均值;
其中,μH[k]为第k帧语音信号的频谱矢量的香农熵值的均值;HY[k]为麦克风阵列捕获的第k帧语音信号的频谱矢量的香农熵值;μH[k-1]为第k-1帧语音信号的频谱矢量的香农熵值的均值;λ为平滑系数,且0<λ<1;k为信号帧索引变量,k=1,2,...,K,且K为语音信号总帧数。
36.根据权利要求34所述的语音去混响的装置,其特征在于,所述计算机程序被处理器执行时还可实现如下步骤:
根据公式:
Figure FDA0002940143060000131
获取麦克风阵列捕获的每帧语音信号的频谱矢量的香农熵值的方差;
其中,
Figure FDA0002940143060000132
为第k帧麦克风阵列信号谱矢量的香农熵值的方差;
Figure FDA0002940143060000133
为第k-1帧麦克风阵列信号谱矢量的香农熵值的方差;μH[k]为第k帧语音信号的频谱矢量的香农熵值的均值;HY[k]为麦克风阵列捕获的第k帧语音信号的频谱矢量的香农熵值;λ为平滑系数,且0<λ<1;k为信号帧索引变量,k=1,2,...,K,且K为语音信号总帧数。
37.根据权利要求29所述的语音去混响的装置,其特征在于,所述计算机程序被处理器执行时还可实现如下步骤:
根据公式:
Figure FDA0002940143060000134
获取麦克风阵列捕获的每帧语音信号的频谱矢量的香农熵值和所述香农熵值的方差之比;
其中,C1[k]为麦克风阵列捕获的每帧语音信号的频谱矢量的香农熵值和所述香农熵值的方差之比;HY[k]为麦克风阵列捕获的每帧语音信号的频谱矢量的香农熵值;
Figure FDA0002940143060000141
为第k帧麦克风阵列信号谱矢量的香农熵值的方差;k为信号帧索引变量,k=1,2,...,K,且K为总信号帧数。
38.根据权利要求27所述的语音去混响的装置,其特征在于,所述计算机程序被处理器执行时还可实现如下步骤:
获取当前帧语音信号在预设频点的频谱矢量与前一帧语音信号在预设频点的频谱矢量之间的相干系数;
根据所述相干系数,获取当前帧语音信号在预设频点的频谱矢量与前一帧语音信号在预设频点的频谱矢量间相干系数的幅值平方。
39.根据权利要求38所述的语音去混响的装置,其特征在于,所述计算机程序被处理器执行时还可实现如下步骤:
获取麦克风阵列捕获的当前帧语音信号的频谱矢量在预设频点处的谱线的方差和及当前帧语音信号的频谱矢量与前一帧语音信号的频谱矢量之间的协方差;
根据所述方差和及所述协方差,获取当前帧语音信号在预设频点的频谱矢量与前一帧语音信号在预设频点的频谱矢量之间的相干系数。
40.根据权利要求39所述的语音去混响的装置,其特征在于,所述计算机程序被处理器执行时还可实现如下步骤:
根据公式:
Figure FDA0002940143060000142
获取方差和;
其中,
Figure FDA0002940143060000143
为麦克风阵列捕获的语音信号的第k帧第m个频点的谱线的方差和;
Figure FDA0002940143060000144
为第n个麦克风接收信号的第k帧快速傅氏变换中第m个频点的谱线的方差;n=1,2,...,N,且N为捕获语音信号的麦克风总数;m=1,2,...,M,且M为频点总数;k为信号帧索引变量,k=1,2,...,K,且K为语音信号总帧数。
41.根据权利要求40所述的语音去混响的装置,其特征在于,所述计算机程序被处理器执行时还可实现如下步骤:
根据公式:
Figure FDA0002940143060000151
获取第n个麦克风接收信号的第k帧快速傅氏变换中第m个频点的谱线的方差;
其中,
Figure FDA0002940143060000152
为第n个麦克风接收信号的第k帧快速傅氏变换中第m个频点的谱线的方差;
Figure FDA0002940143060000153
为第n个麦克风接收信号的第k-1帧快速傅氏变换中第m个频点的谱线的方差;yn,m[k]*为yn,m[k]的共轭;yn,m[k]为第n个麦克风接收信号的第k帧快速傅氏变换中第m个频点的谱线;n=1,2,...,N,且N为捕获语音信号的麦克风总数;m=1,2,...,M,且M为频点总数;k为信号帧索引变量,k=1,2,...,K,且K为语音信号总帧数;λ为平滑系数,且0<λ<1。
42.根据权利要求39所述的语音去混响的装置,其特征在于,所述计算机程序被处理器执行时还可实现如下步骤:
根据公式:Δn,m[k]=λ·Δn,m[k-1]+(1-λ)·{yn,m[k]yn,m[k-1]*}获取协方差;
其中,Δn,m[k]为当前帧语音信号的频谱矢量与前一帧语音信号的频谱矢量之间的协方差;Δn,m[k-1]为第k-1帧语音信号的频谱矢量与前一帧语音信号的频谱矢量之间的协方差;yn,m[k-1]*为yn,m[k-1]的共轭;yn,m[k]为第n个麦克风接收信号的第k帧快速傅氏变换中第m个频点的谱线;n=1,2,...,N,且N为捕获语音信号的麦克风总数;m=1,2,...,M,且M为频点总数;k为信号帧索引变量,k=1,2,...,K,且K为语音信号总帧数;λ为平滑系数,且0<λ<1。
43.根据权利要求39所述的语音去混响的装置,其特征在于,所述计算机程序被处理器执行时还可实现如下步骤:
根据公式:
Figure FDA0002940143060000154
获取当前帧语音信号在预设频点的频谱矢量与前一帧语音信号在预设频点的频谱矢量之间的相干系数;
其中,ρm[k]为当前帧语音信号在频点m处的频谱矢量与前一帧语音信号在频点m处的频谱矢量之间的相干系数;Δn,m[k]为当前帧语音信号的频谱矢量与前一帧语音信号的频谱矢量之间的协方差;
Figure FDA0002940143060000161
为麦克风阵列捕获的语音信号的第k帧第m个频点的谱线的方差和;
Figure FDA0002940143060000162
为麦克风阵列捕获的语音信号的第k-1帧第m个频点的谱线的方差和;n=1,2,...,N,且N为捕获语音信号的麦克风总数;m=1,2,...,M,且M为频点总数;k为信号帧索引变量,k=1,2,...,K,且K为语音信号总帧数。
44.根据权利要求38所述的语音去混响的装置,其特征在于,所述计算机程序被处理器执行时还可实现如下步骤:
根据公式:C2[k,m]=|ρm[k]|2获取当前帧语音信号在预设频点的频谱矢量与前一帧语音信号在预设频点的频谱矢量间相干系数的幅值平方;
其中,C2[k,m]为当前帧语音信号在频点m处的频谱矢量与前一帧语音信号在频点m处的频谱矢量间相干系数的幅值平方;ρm[k]为当前帧语音信号在频点m处的频谱矢量与前一帧语音信号在频点m处的频谱矢量之间的相干系数;m=1,2,...,M,且M为频点总数;k为信号帧索引变量,k=1,2,...,K,且K为语音信号总帧数。
45.根据权利要求27所述的语音去混响的装置,其特征在于,所述计算机程序被处理器执行时还可实现如下步骤:
根据公式:
Figure FDA0002940143060000163
获取去混响后的第一语音信号频谱矢量;
其中,
Figure FDA0002940143060000164
为去混响后的第一语音信号频谱矢量;
Figure FDA0002940143060000165
为麦克风阵列捕获到的语音信号的频谱矢量;
Figure FDA0002940143060000166
为Wm[k-1]的共轭转置矩阵;Wm[k-1]为第k-1帧的语音信号的频谱矢量的预测系数矩阵;
Figure FDA0002940143060000167
为麦克风阵列捕获的第k帧语音信号前的预设帧数的阵列信号;m=1,2,...,M,且M为频点总数;k为信号帧索引变量,k=1,2,...,K,且K为语音信号总帧数。
46.根据权利要求27所述的语音去混响的装置,其特征在于,所述计算机程序被处理器执行时还可实现如下步骤:
获取卡尔曼增益;
根据所述卡尔曼增益以及去混响后的第一语音信号频谱矢量,进行第一频点中每一频点的加权预测误差的预测系数矩阵的更新。
47.根据权利要求46所述的语音去混响的装置,其特征在于,所述计算机程序被处理器执行时还可实现如下步骤:
根据公式:
Figure FDA0002940143060000171
获取;
其中,Km[k]为卡尔曼增益;
Figure FDA0002940143060000172
为麦克风阵列捕获的第k帧语音信号前的预设帧数的阵列信号;
Figure FDA0002940143060000173
Figure FDA0002940143060000174
的共轭转置矩阵;
Figure FDA0002940143060000175
为第K-1帧信号的相关矩阵的逆矩阵;Λm 2[k]为麦克风阵列捕获的语音信号的功率;α为遗忘因子,且0<α<1;m=1,2,...,M,且M为频点总数;k为信号帧索引变量,k=1,2,...,K,且K为语音信号总帧数。
48.根据权利要求47所述的语音去混响的装置,其特征在于,所述计算机程序被处理器执行时还可实现如下步骤:
根据公式:
Figure FDA0002940143060000176
获取麦克风阵列捕获的第k帧语音信号前的预设帧数的阵列信号;
其中,
Figure FDA0002940143060000177
为麦克风阵列捕获的第k帧语音信号前的预设帧数的阵列信号;m=1,2,...,M,且M为频点总数;k为信号帧索引变量,k=1,2,...,K,且K为语音信号总帧数;n=1,2,...,N,且N为捕获语音信号的麦克风总数;N′>Δ且N′和Δ均为正整数;yn,m[k-Δ-(N′-1)]为第n个麦克风接收信号的第k-Δ-(N′-1)帧快速傅氏变换中第m个频点的谱线。
49.根据权利要求47所述的语音去混响的装置,其特征在于,所述计算机程序被处理器执行时还可实现如下步骤:
根据公式:
Figure FDA0002940143060000178
获取麦克风阵列捕获的语音信号的功率;
其中,Λm 2[k]为麦克风阵列捕获的语音信号的功率;yn,m[k]为第n个麦克风接收信号的第k帧快速傅氏变换中第m个频点的谱线;n=1,2,...,N,且N为捕获语音信号的麦克风总数;m=1,2,...,M,且M为频点总数;k为信号帧索引变量,k=1,2,...,K,且K为语音信号总帧数。
50.根据权利要求45所述的语音去混响的装置,其特征在于,所述计算机程序被处理器执行时还可实现如下步骤:
根据公式:
Figure FDA0002940143060000181
进行相关矩阵的逆矩阵的更新;
其中,
Figure FDA0002940143060000182
为第k帧相关矩阵的逆矩阵;
Figure FDA0002940143060000183
为第k-1帧相关矩阵的逆矩阵;Km[k]为卡尔曼增益;
Figure FDA0002940143060000184
Figure FDA0002940143060000185
的共轭转置矩阵;
Figure FDA0002940143060000186
为麦克风阵列捕获的第k帧语音信号前的预设帧数的阵列信号;α为遗忘因子,且0<α<1;m=1,2,...,M,且M为频点总数;k为信号帧索引变量,k=1,2,...,K,且K为语音信号总帧数。
51.根据权利要求46所述的语音去混响的装置,其特征在于,所述计算机程序被处理器执行时还可实现如下步骤:
根据公式:
Figure FDA0002940143060000187
进行第一频点中每一频点的加权预测误差的预测系数矩阵的更新;
其中,Wm[k]为更新后的预测系数矩阵;Wm[k-1]为更新前的预测系数矩阵;Km[k]为卡尔曼增益;
Figure FDA0002940143060000188
Figure FDA0002940143060000189
的共轭转置矩阵;
Figure FDA00029401430600001810
为去混响后的第一语音信号频谱矢量;m=1,2,...,M,且M为频点总数;k为信号帧索引变量,k=1,2,...,K,且K为语音信号总帧数。
52.根据权利要求27所述的语音去混响的装置,其特征在于,所述计算机程序被处理器执行时还可实现如下步骤:
根据所述第一语音信号频谱矢量和非语音信号频谱矢量,获取每帧语音信号的第二语音信号频谱矢量;
根据每帧语音信号的第二语音信号频谱矢量,获取去混响语音信号。
53.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现如权利要求1至26任一项所述的语音去混响的方法。
54.一种语音去混响的装置,其特征在于,包括:
第一获取模块,用于获取麦克风阵列捕获的每帧语音信号的频谱矢量;
第二获取模块,用于根据所述每帧语音信号的频谱矢量,分别获取检测结果为语音的信号帧的第一频点以及检测结果为非语音的信号帧的第二频点;
获取更新模块,用于获取所述第一频点中每一频点处的频谱的去混响后的第一语音信号频谱矢量,并根据所述第一语音信号频谱矢量对每一频点的加权预测误差的预测系数矩阵进行更新;
第三获取模块,用于获取第二频点中每一频点的频谱进行衰减后的非语音信号频谱矢量;
第四获取模块,用于根据所述第一语音信号频谱矢量和非语音信号频谱矢量,获取去混响语音信号;
所述第二获取模块,包括:
第三获取子模块,用于获取麦克风阵列捕获的每帧语音信号的频谱矢量的香农熵值和所述香农熵值的方差之比;
第四获取子模块,用于获取当前帧语音信号在预设频点的频谱矢量与前一帧语音信号在预设频点的频谱矢量间相干系数的幅值平方;
标记子模块,用于在所述麦克风阵列捕获的每帧语音信号的频谱矢量的香农熵值和所述香农熵值的方差之比小于第一门限参数,且所述当前帧语音信号在预设频点的频谱矢量与前一帧语音信号在预设频点的频谱矢量间相干系数的幅值平方大于第二门限参数时,将当前帧语音信号在预设频点处标记为语音;或
在所述麦克风阵列捕获的每帧语音信号的频谱矢量的香农熵值和所述香农熵值的方差之比大于或等于第一门限参数,或所述当前帧语音信号在预设频点的频谱矢量与前一帧语音信号在预设频点的频谱矢量的幅值平方相干系数小于或等于第二门限参数时,将当前帧语音信号在预设频点处标记为噪音。
55.根据权利要求54所述的语音去混响的装置,其特征在于,所述第一获取模块,包括:
第一获取子模块,用于获取麦克风阵列实时捕获的语音信号;
第二获取子模块,用于对每一帧语音信号进行频谱计算,得到麦克风阵列捕获的每帧语音信号的频谱矢量。
56.根据权利要求55所述的语音去混响的装置,其特征在于,所述第三获取子模块,包括:
第一获取单元,用于获取麦克风阵列捕获的每帧语音信号的频谱矢量的香农熵值和所述麦克风阵列捕获的每帧语音信号的频谱矢量的香农熵值的方差;
第二获取单元,用于根据所述香农熵值和所述香农熵值的方差,获取麦克风阵列捕获的每帧语音信号的频谱矢量的香农熵值和所述香农熵值的方差之比。
57.根据权利要求56所述的语音去混响的装置,其特征在于,所述麦克风阵列捕获的每帧语音信号的频谱矢量的香农熵值的获取方式为:
获取检测频点处的每帧语音信号的频谱矢量的幅值权重;
根据所述幅值权重,获取每一个麦克风捕获的每帧语音信号的频谱矢量的香农熵值;
根据所述每一个麦克风捕获的每帧语音信号的频谱矢量的香农熵值,获取麦克风阵列捕获的每帧语音信号的频谱矢量的香农熵值。
58.根据权利要求57所述的语音去混响的装置,其特征在于,所述获取检测频点处的每帧语音信号的频谱矢量的幅值权重的方式为:
根据公式:
Figure FDA0002940143060000201
获取幅值权重;
其中,pn,m[k]为第k帧第m个频点处的语音信号的频谱矢量的幅值权重;yn,m[k]为第n个麦克风接收信号的第k帧快速傅氏变换中第m个频点的谱线;n=1,2,...,N,且N为捕获语音信号的麦克风总数;m=1,2,...,M,且M为频点总数;k为信号帧索引变量,k=1,2,...,K,且K为语音信号总帧数。
59.根据权利要求57所述的语音去混响的装置,其特征在于,所述根据所述幅值权重,获取每一个麦克风捕获的每帧语音信号的频谱矢量的香农熵值的方式为:
根据公式:
Figure FDA0002940143060000211
获取每一个麦克风捕获的每帧语音信号的频谱矢量的香农熵值;
其中,Hn,Y[k]为第k帧第n个麦克风捕获的语音信号的频谱矢量的香农熵值;pn,m[k]为第k帧第m个频点处的语音信号的频谱矢量的幅值权重;n=1,2,...,N,且N为捕获语音信号的麦克风总数;m=1,2,...,M,且M为频点总数;k为信号帧索引变量,k=1,2,...,K,且K为语音信号总帧数。
60.根据权利要求57所述的语音去混响的装置,其特征在于,所述根据所述每一个麦克风捕获的每帧语音信号的频谱矢量的香农熵值,获取麦克风阵列捕获的每帧语音信号的频谱矢量的香农熵值的方式为:
根据公式:
Figure FDA0002940143060000212
获取麦克风阵列捕获的每帧语音信号的频谱矢量的香农熵值;
其中,HY[k]为麦克风阵列捕获的每帧语音信号的频谱矢量的香农熵值;Hn,Y[k]为第k帧第n个麦克风捕获的语音信号的频谱矢量的香农熵值;n=1,2,...,N,且N为捕获语音信号的麦克风总数;k为信号帧索引变量,k=1,2,...,K,且K为语音信号总帧数。
61.根据权利要求56所述的语音去混响的装置,其特征在于,所述麦克风阵列捕获的每帧语音信号的频谱矢量的香农熵值的方差的获取方式为:
根据所述麦克风阵列捕获的每帧语音信号的频谱矢量的香农熵值,获取所述香农熵值的均值;
根据所述麦克风阵列捕获的每帧语音信号的频谱矢量的香农熵值以及所述香农熵值的均值,获取麦克风阵列捕获的每帧语音信号的频谱矢量的香农熵值的方差。
62.根据权利要求61所述的语音去混响的装置,其特征在于,所述根据所述麦克风阵列捕获的每帧语音信号的频谱矢量的香农熵值,获取所述香农熵值的均值的方式为:
根据公式:μH[k]=λ·μH[k-1]+(1-λ)·HY[k]获取香农熵值的均值;
其中,μH[k]为第k帧语音信号的频谱矢量的香农熵值的均值;HY[k]为麦克风阵列捕获的第k帧语音信号的频谱矢量的香农熵值;μH[k-1]为第k-1帧语音信号的频谱矢量的香农熵值的均值;λ为平滑系数,且0<λ<1;k为信号帧索引变量,k=1,2,...,K,且K为语音信号总帧数。
63.根据权利要求61所述的语音去混响的装置,其特征在于,所述根据所述麦克风阵列捕获的每帧语音信号的频谱矢量的香农熵值以及所述香农熵值的均值,获取麦克风阵列捕获的每帧语音信号的频谱矢量的香农熵值的方差的方式为:
根据公式:
Figure FDA0002940143060000221
获取麦克风阵列捕获的每帧语音信号的频谱矢量的香农熵值的方差;
其中,
Figure FDA0002940143060000222
为第k帧麦克风阵列信号谱矢量的香农熵值的方差;
Figure FDA0002940143060000223
为第k-1帧麦克风阵列信号谱矢量的香农熵值的方差;μH[k]为第k帧语音信号的频谱矢量的香农熵值的均值;HY[k]为麦克风阵列捕获的第k帧语音信号的频谱矢量的香农熵值;λ为平滑系数,且0<λ<1;k为信号帧索引变量,k=1,2,...,K,且K为语音信号总帧数。
64.根据权利要求56所述的语音去混响的装置,其特征在于,所述第二获取单元用于:
根据公式:
Figure FDA0002940143060000224
获取麦克风阵列捕获的每帧语音信号的频谱矢量的香农熵值和所述香农熵值的方差之比;
其中,C1[k]为麦克风阵列捕获的每帧语音信号的频谱矢量的香农熵值和所述香农熵值的方差之比;HY[k]为麦克风阵列捕获的每帧语音信号的频谱矢量的香农熵值;
Figure FDA0002940143060000231
为第k帧麦克风阵列信号谱矢量的香农熵值的方差;k为信号帧索引变量,k=1,2,...,K,且K为总信号帧数。
65.根据权利要求55所述的语音去混响的装置,其特征在于,所述第四获取子模块,包括:
第三获取单元,用于获取当前帧语音信号在预设频点的频谱矢量与前一帧语音信号在预设频点的频谱矢量之间的相干系数;
第四获取单元,用于根据所述相干系数,获取当前帧语音信号在预设频点的频谱矢量与前一帧语音信号在预设频点的频谱矢量间相干系数的幅值平方。
66.根据权利要求65所述的语音去混响的装置,其特征在于,所述第三获取单元用于:
获取麦克风阵列捕获的当前帧语音信号的频谱矢量在预设频点处的谱线的方差和及当前帧语音信号的频谱矢量与前一帧语音信号的频谱矢量之间的协方差;
根据所述方差和及所述协方差,获取当前帧语音信号在预设频点的频谱矢量与前一帧语音信号在预设频点的频谱矢量之间的相干系数。
67.根据权利要求66所述的语音去混响的装置,其特征在于,所述麦克风阵列捕获的当前帧语音信号的频谱矢量在预设频点处的谱线的方差和的获取方式为:
根据公式:
Figure FDA0002940143060000232
获取方差和;
其中,
Figure FDA0002940143060000233
为麦克风阵列捕获的语音信号的第k帧第m个频点的谱线的方差和;
Figure FDA0002940143060000234
为第n个麦克风接收信号的第k帧快速傅氏变换中第m个频点的谱线的方差;n=1,2,...,N,且N为捕获语音信号的麦克风总数;m=1,2,...,M,且M为频点总数;k为信号帧索引变量,k=1,2,...,K,且K为语音信号总帧数。
68.根据权利要求67所述的语音去混响的装置,其特征在于,所述第n个麦克风接收信号的第k帧快速傅氏变换中第m个频点的谱线的方差的获取方式为:
根据公式:
Figure FDA0002940143060000241
获取第n个麦克风接收信号的第k帧快速傅氏变换中第m个频点的谱线的方差;
其中,
Figure FDA0002940143060000242
为第n个麦克风接收信号的第k帧快速傅氏变换中第m个频点的谱线的方差;
Figure FDA0002940143060000243
为第n个麦克风接收信号的第k-1帧快速傅氏变换中第m个频点的谱线的方差;yn,m[k]*为yn,m[k]的共轭;yn,m[k]为第n个麦克风接收信号的第k帧快速傅氏变换中第m个频点的谱线;n=1,2,...,N,且N为捕获语音信号的麦克风总数;m=1,2,...,M,且M为频点总数;k为信号帧索引变量,k=1,2,...,K,且K为语音信号总帧数;λ为平滑系数,且0<λ<1。
69.根据权利要求66所述的语音去混响的装置,其特征在于,所述当前帧语音信号的频谱矢量与前一帧语音信号的频谱矢量之间的协方差的获取方式为:
根据公式:Δn,m[k]=λ·Δn,m[k-1]+(1-λ)·{yn,m[k]yn,m[k-1]*}获取协方差;
其中,Δn,m[k]为当前帧语音信号的频谱矢量与前一帧语音信号的频谱矢量之间的协方差;Δn,m[k-1]为第k-1帧语音信号的频谱矢量与前一帧语音信号的频谱矢量之间的协方差;yn,m[k-1]*为yn,m[k-1]的共轭;yn,m[k]为第n个麦克风接收信号的第k帧快速傅氏变换中第m个频点的谱线;n=1,2,...,N,且N为捕获语音信号的麦克风总数;m=1,2,...,M,且M为频点总数;k为信号帧索引变量,k=1,2,...,K,且K为语音信号总帧数;λ为平滑系数,且0<λ<1。
70.根据权利要求66所述的语音去混响的装置,其特征在于,所述根据所述方差和及所述协方差,获取当前帧语音信号在预设频点的频谱矢量与前一帧语音信号在预设频点的频谱矢量之间的相干系数的方式为:
根据公式:
Figure FDA0002940143060000251
获取当前帧语音信号在预设频点的频谱矢量与前一帧语音信号在预设频点的频谱矢量之间的相干系数;
其中,ρm[k]为当前帧语音信号在频点m处的频谱矢量与前一帧语音信号在频点m处的频谱矢量之间的相干系数;Δn,m[k]为当前帧语音信号的频谱矢量与前一帧语音信号的频谱矢量之间的协方差;
Figure FDA0002940143060000252
为麦克风阵列捕获的语音信号的第k帧第m个频点的谱线的方差和;
Figure FDA0002940143060000253
为麦克风阵列捕获的语音信号的第k-1帧第m个频点的谱线的方差和;n=1,2,...,N,且N为捕获语音信号的麦克风总数;m=1,2,...,M,且M为频点总数;k为信号帧索引变量,k=1,2,...,K,且K为语音信号总帧数。
71.根据权利要求65所述的语音去混响的装置,其特征在于,所述第四获取单元用于:
根据公式:C2[k,m]=|ρm[k]|2获取当前帧语音信号在预设频点的频谱矢量与前一帧语音信号在预设频点的频谱矢量间相干系数的幅值平方;
其中,C2[k,m]为当前帧语音信号在频点m处的频谱矢量与前一帧语音信号在频点m处的频谱矢量间相干系数的幅值平方;ρm[k]为当前帧语音信号在频点m处的频谱矢量与前一帧语音信号在频点m处的频谱矢量之间的相干系数;m=1,2,...,M,且M为频点总数;k为信号帧索引变量,k=1,2,...,K,且K为语音信号总帧数。
72.根据权利要求54所述的语音去混响的装置,其特征在于,所述获取所述第一频点中每一频点处的频谱的去混响后的第一语音信号频谱矢量的方式为:
根据公式:
Figure FDA0002940143060000254
获取去混响后的第一语音信号频谱矢量;
其中,
Figure FDA0002940143060000255
为去混响后的第一语音信号频谱矢量;
Figure FDA0002940143060000256
为麦克风阵列捕获到的语音信号的频谱矢量;
Figure FDA0002940143060000257
为Wm[k-1]的共轭转置矩阵;Wm[k-1]为第k-1帧的语音信号的频谱矢量的预测系数矩阵;
Figure FDA0002940143060000258
为麦克风阵列捕获的第k帧语音信号前的预设帧数的阵列信号;m=1,2,...,M,且M为频点总数;k为信号帧索引变量,k=1,2,...,K,且K为语音信号总帧数。
73.根据权利要求54所述的语音去混响的装置,其特征在于,所述根据所述第一语音信号频谱矢量对每一频点的加权预测误差的预测系数矩阵进行更新的方式,包括:
获取卡尔曼增益;
根据所述卡尔曼增益以及去混响后的第一语音信号频谱矢量,进行第一频点中每一频点的加权预测误差的预测系数矩阵的更新。
74.根据权利要求73所述的语音去混响的装置,其特征在于,所述获取卡尔曼增益的方式为:
根据公式:
Figure FDA0002940143060000261
获取;
其中,Km[k]为卡尔曼增益;
Figure FDA0002940143060000262
为麦克风阵列捕获的第k帧语音信号前的预设帧数的阵列信号;
Figure FDA0002940143060000263
Figure FDA0002940143060000264
的共轭转置矩阵;
Figure FDA0002940143060000265
为第K-1帧信号的相关矩阵的逆矩阵;Λm 2[k]为麦克风阵列捕获的语音信号的功率;α为遗忘因子,且0<α<1;m=1,2,...,M,且M为频点总数;k为信号帧索引变量,k=1,2,...,K,且K为语音信号总帧数。
75.根据权利要求74所述的语音去混响的装置,其特征在于,所述麦克风阵列捕获的第k帧语音信号前的预设帧数的阵列信号的获取方式为:
根据公式:
Figure FDA0002940143060000266
获取麦克风阵列捕获的第k帧语音信号前的预设帧数的阵列信号;
其中,
Figure FDA0002940143060000267
为麦克风阵列捕获的第k帧语音信号前的预设帧数的阵列信号;m=1,2,...,M,且M为频点总数;k为信号帧索引变量,k=1,2,...,K,且K为语音信号总帧数;n=1,2,...,N,且N为捕获语音信号的麦克风总数;N′>Δ且N′和Δ均为正整数;yn,m[k-Δ-(N′-1)]为第n个麦克风接收信号的第k-Δ-(N′-1)帧快速傅氏变换中第m个频点的谱线。
76.根据权利要求74所述的语音去混响的装置,其特征在于,所述麦克风阵列捕获的语音信号的功率的获取方式为:
根据公式:
Figure FDA0002940143060000271
获取麦克风阵列捕获的语音信号的功率;
其中,Λm 2[k]为麦克风阵列捕获的语音信号的功率;yn,m[k]为第n个麦克风接收信号的第k帧快速傅氏变换中第m个频点的谱线;n=1,2,...,N,且N为捕获语音信号的麦克风总数;m=1,2,...,M,且M为频点总数;k为信号帧索引变量,k=1,2,...,K,且K为语音信号总帧数。
77.根据权利要求72所述的语音去混响的装置,其特征在于,在所述根据所述第一语音信号频谱矢量对每一频点的加权预测误差的预测系数矩阵进行更新之后,还包括:
根据公式:
Figure FDA0002940143060000272
进行相关矩阵的逆矩阵的更新;
其中,
Figure FDA0002940143060000273
为第k帧相关矩阵的逆矩阵;
Figure FDA0002940143060000274
为第k-1帧相关矩阵的逆矩阵;Km[k]为卡尔曼增益;
Figure FDA0002940143060000275
Figure FDA0002940143060000276
的共轭转置矩阵;
Figure FDA0002940143060000277
为麦克风阵列捕获的第k帧语音信号前的预设帧数的阵列信号;α为遗忘因子,且0<α<1;m=1,2,...,M,且M为频点总数;k为信号帧索引变量,k=1,2,...,K,且K为语音信号总帧数。
78.根据权利要求73所述的语音去混响的装置,其特征在于,所述根据所述卡尔曼增益以及去混响后的第一语音信号频谱矢量,进行第一频点中每一频点的加权预测误差的预测系数矩阵的更新的方式为:
根据公式:
Figure FDA0002940143060000278
进行第一频点中每一频点的加权预测误差的预测系数矩阵的更新;
其中,Wm[k]为更新后的预测系数矩阵;Wm[k-1]为更新前的预测系数矩阵;Km[k]为卡尔曼增益;
Figure FDA0002940143060000279
Figure FDA00029401430600002710
的共轭转置矩阵;
Figure FDA00029401430600002711
为去混响后的第一语音信号频谱矢量;m=1,2,...,M,且M为频点总数;k为信号帧索引变量,k=1,2,...,K,且K为语音信号总帧数。
79.根据权利要求54所述的语音去混响的装置,其特征在于,所述第四获取模块,包括:
第五获取子模块,用于根据所述第一语音信号频谱矢量和非语音信号频谱矢量,获取每帧语音信号的第二语音信号频谱矢量;
第六获取子模块,用于根据每帧语音信号的第二语音信号频谱矢量,获取去混响语音信号。
CN201711460558.8A 2017-12-28 2017-12-28 一种语音去混响的方法及装置 Active CN109979476B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201711460558.8A CN109979476B (zh) 2017-12-28 2017-12-28 一种语音去混响的方法及装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201711460558.8A CN109979476B (zh) 2017-12-28 2017-12-28 一种语音去混响的方法及装置

Publications (2)

Publication Number Publication Date
CN109979476A CN109979476A (zh) 2019-07-05
CN109979476B true CN109979476B (zh) 2021-05-14

Family

ID=67074683

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201711460558.8A Active CN109979476B (zh) 2017-12-28 2017-12-28 一种语音去混响的方法及装置

Country Status (1)

Country Link
CN (1) CN109979476B (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2022269854A1 (ja) * 2021-06-24 2022-12-29 日本電信電話株式会社 フィルタ生成装置、フィルタ生成方法、プログラム

Families Citing this family (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112951264B (zh) * 2019-12-10 2022-05-17 中国科学院声学研究所 一种基于混合式概率模型的多通道声源分离方法
CN113496706B (zh) * 2020-03-19 2023-05-23 抖音视界有限公司 音频处理方法、装置、电子设备及存储介质
CN111933170B (zh) * 2020-07-20 2024-03-29 歌尔科技有限公司 语音信号的处理方法、装置、设备及存储介质
CN112201266B (zh) * 2020-08-28 2023-06-13 出门问问(苏州)信息科技有限公司 回声抑制方法及装置
WO2022192580A1 (en) * 2021-03-11 2022-09-15 Dolby Laboratories Licensing Corporation Dereverberation based on media type
CN113299301A (zh) * 2021-04-21 2021-08-24 北京搜狗科技发展有限公司 一种语音处理方法、装置和用于语音处理的装置
CN113823314B (zh) * 2021-08-12 2022-10-28 北京荣耀终端有限公司 语音处理方法和电子设备
CN114813129B (zh) * 2022-04-30 2024-03-26 北京化工大学 基于wpe与emd的滚动轴承声信号故障诊断方法

Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103229238A (zh) * 2010-11-24 2013-07-31 皇家飞利浦电子股份有限公司 用于产生音频信号的系统和方法
US9390723B1 (en) * 2014-12-11 2016-07-12 Amazon Technologies, Inc. Efficient dereverberation in networked audio systems
CN106486131A (zh) * 2016-10-14 2017-03-08 上海谦问万答吧云计算科技有限公司 一种语音去噪的方法及装置
US20170188147A1 (en) * 2013-09-26 2017-06-29 Universidade Do Porto Acoustic feedback cancellation based on cesptral analysis
CN107316649A (zh) * 2017-05-15 2017-11-03 百度在线网络技术(北京)有限公司 基于人工智能的语音识别方法及装置
CN107346658A (zh) * 2017-07-14 2017-11-14 深圳永顺智信息科技有限公司 混响抑制方法及装置
CN107360497A (zh) * 2017-07-14 2017-11-17 深圳永顺智信息科技有限公司 估算混响分量的计算方法及装置
US20170365255A1 (en) * 2016-06-15 2017-12-21 Adam Kupryjanow Far field automatic speech recognition pre-processing

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4703505A (en) * 1983-08-24 1987-10-27 Harris Corporation Speech data encoding scheme
CN101499280B (zh) * 2009-03-09 2011-11-02 武汉大学 基于空间感知熵判决的空间参数选取方法及其装置
CN101894560B (zh) * 2010-06-29 2012-08-15 上海大学 一种无参考源的mp3音频清晰度客观评价方法

Patent Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103229238A (zh) * 2010-11-24 2013-07-31 皇家飞利浦电子股份有限公司 用于产生音频信号的系统和方法
US20170188147A1 (en) * 2013-09-26 2017-06-29 Universidade Do Porto Acoustic feedback cancellation based on cesptral analysis
US9390723B1 (en) * 2014-12-11 2016-07-12 Amazon Technologies, Inc. Efficient dereverberation in networked audio systems
US20170365255A1 (en) * 2016-06-15 2017-12-21 Adam Kupryjanow Far field automatic speech recognition pre-processing
CN106486131A (zh) * 2016-10-14 2017-03-08 上海谦问万答吧云计算科技有限公司 一种语音去噪的方法及装置
CN107316649A (zh) * 2017-05-15 2017-11-03 百度在线网络技术(北京)有限公司 基于人工智能的语音识别方法及装置
CN107346658A (zh) * 2017-07-14 2017-11-14 深圳永顺智信息科技有限公司 混响抑制方法及装置
CN107360497A (zh) * 2017-07-14 2017-11-17 深圳永顺智信息科技有限公司 估算混响分量的计算方法及装置

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2022269854A1 (ja) * 2021-06-24 2022-12-29 日本電信電話株式会社 フィルタ生成装置、フィルタ生成方法、プログラム

Also Published As

Publication number Publication date
CN109979476A (zh) 2019-07-05

Similar Documents

Publication Publication Date Title
CN109979476B (zh) 一种语音去混响的方法及装置
KR101934636B1 (ko) 심화신경망 기반의 잡음 및 에코의 통합 제거 방법 및 장치
Michelsanti et al. Conditional generative adversarial networks for speech enhancement and noise-robust speaker verification
CN109841206B (zh) 一种基于深度学习的回声消除方法
Luo et al. Real-time single-channel dereverberation and separation with time-domain audio separation network.
CN108172231B (zh) 一种基于卡尔曼滤波的去混响方法及系统
US5924065A (en) Environmently compensated speech processing
CN110148420A (zh) 一种适用于噪声环境下的语音识别方法
US20040230428A1 (en) Method and apparatus for blind source separation using two sensors
US20040064307A1 (en) Noise reduction method and device
JP2009047803A (ja) 音響信号処理方法及び装置
Heymann et al. Frame-online DNN-WPE dereverberation
KR101720514B1 (ko) Dcica를 이용한 dnn 기반 특징향상을 수행하는 음성인식장치 및 방법
Fingscheidt et al. Environment-optimized speech enhancement
JP6225245B2 (ja) 信号処理装置、方法及びプログラム
CN112037809A (zh) 基于多特征流结构深度神经网络的残留回声抑制方法
Ribas et al. Deep speech enhancement for reverberated and noisy signals using wide residual networks
CN110808057A (zh) 一种基于约束朴素生成对抗网络的语音增强方法
CN110998723A (zh) 使用神经网络的信号处理装置、使用神经网络的信号处理方法以及信号处理程序
Doclo et al. Multimicrophone noise reduction using recursive GSVD-based optimal filtering with ANC postprocessing stage
KR20220022286A (ko) 잔향 제거 오토 인코더를 이용한 잔향 환경 임베딩 추출 방법 및 장치
Tu et al. DNN training based on classic gain function for single-channel speech enhancement and recognition
EP3242295B1 (en) A signal processor
CN109243476B (zh) 混响语音信号中后混响功率谱的自适应估计方法及装置
CN113160842B (zh) 一种基于mclp的语音去混响方法及系统

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant