CN111370033B - 键盘声处理方法、装置、终端设备及存储介质 - Google Patents
键盘声处理方法、装置、终端设备及存储介质 Download PDFInfo
- Publication number
- CN111370033B CN111370033B CN202010175888.8A CN202010175888A CN111370033B CN 111370033 B CN111370033 B CN 111370033B CN 202010175888 A CN202010175888 A CN 202010175888A CN 111370033 B CN111370033 B CN 111370033B
- Authority
- CN
- China
- Prior art keywords
- keyboard
- signal
- suppression
- noise
- sound signal
- 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
Links
- 238000003672 processing method Methods 0.000 title claims abstract description 28
- 230000001629 suppression Effects 0.000 claims abstract description 273
- 230000005236 sound signal Effects 0.000 claims abstract description 193
- 238000001228 spectrum Methods 0.000 claims abstract description 69
- 238000000034 method Methods 0.000 claims abstract description 57
- 230000001052 transient effect Effects 0.000 claims description 53
- 230000003595 spectral effect Effects 0.000 claims description 31
- 238000001514 detection method Methods 0.000 claims description 22
- 230000005764 inhibitory process Effects 0.000 claims description 20
- 238000004422 calculation algorithm Methods 0.000 claims description 15
- 238000000354 decomposition reaction Methods 0.000 claims description 12
- 238000004590 computer program Methods 0.000 claims description 10
- 230000000694 effects Effects 0.000 claims description 10
- 230000002401 inhibitory effect Effects 0.000 claims description 4
- 238000000527 sonication Methods 0.000 claims 1
- 230000000875 corresponding effect Effects 0.000 description 15
- 238000010586 diagram Methods 0.000 description 13
- 230000006854 communication Effects 0.000 description 9
- 230000002829 reductive effect Effects 0.000 description 9
- 230000006870 function Effects 0.000 description 8
- 238000004891 communication Methods 0.000 description 7
- 238000009499 grossing Methods 0.000 description 5
- 230000003287 optical effect Effects 0.000 description 5
- 230000004044 response Effects 0.000 description 5
- 208000012260 Accidental injury Diseases 0.000 description 3
- 238000004364 calculation method Methods 0.000 description 3
- 208000014674 injury Diseases 0.000 description 3
- 230000001960 triggered effect Effects 0.000 description 3
- 230000003044 adaptive effect Effects 0.000 description 2
- 230000009286 beneficial effect Effects 0.000 description 2
- 230000002596 correlated effect Effects 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 239000013307 optical fiber Substances 0.000 description 2
- 230000000644 propagated effect Effects 0.000 description 2
- 230000000452 restraining effect Effects 0.000 description 2
- 239000004065 semiconductor Substances 0.000 description 2
- 238000004458 analytical method Methods 0.000 description 1
- 239000000835 fiber Substances 0.000 description 1
- 230000000670 limiting effect Effects 0.000 description 1
- 239000004973 liquid crystal related substance Substances 0.000 description 1
- 230000002441 reversible effect Effects 0.000 description 1
- 238000000926 separation method Methods 0.000 description 1
- 230000035939 shock Effects 0.000 description 1
Classifications
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
- G10L25/00—Speech or voice analysis techniques not restricted to a single one of groups G10L15/00 - G10L21/00
- G10L25/78—Detection of presence or absence of voice signals
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
- G10L21/00—Speech 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/02—Speech enhancement, e.g. noise reduction or echo cancellation
- G10L21/0272—Voice signal separating
Landscapes
- Engineering & Computer Science (AREA)
- Computational Linguistics (AREA)
- Signal Processing (AREA)
- Health & Medical Sciences (AREA)
- Audiology, Speech & Language Pathology (AREA)
- Human Computer Interaction (AREA)
- Physics & Mathematics (AREA)
- Acoustics & Sound (AREA)
- Multimedia (AREA)
- Quality & Reliability (AREA)
- Telephone Function (AREA)
- Soundproofing, Sound Blocking, And Sound Damping (AREA)
Abstract
本公开公开了键盘声处理方法、装置、终端设备及介质。所述方法包括:响应于键盘声抑制触发条件,对采集到的键盘声信号进行人声区检测;若所述键盘声信号包含非人声信号,则对所述键盘声信号中符合非人声信号的频谱特征的噪声进行抑制;输出经过抑制的键盘声信号。利用该方法,能够有效抑制噪声,提高键盘声抑制的可靠性,提高远程通话质量。
Description
技术领域
本发明实施例涉及信号处理技术领域,尤其涉及一种键盘声处理方法、装置、终端设备及存储介质。
背景技术
在语音或视频办公、远程会议等场景中,参与方经常需要在说话的同时,通过敲击键盘的方式及时发布或记录相关信息,这种场景下,敲击键盘的声音会被麦克风采集到,使得通信过程中掺杂着键盘的敲击声,严重影响参与方的通话质量。键盘声与人声在频谱分量上重叠,这给键盘声的一致提出了很高的技术要求,通常需要将键盘声和人声进行盲源分离,尽量保留人声分量。
由于键盘声检测的准确度有限,可能发生误检,而为了将键盘声消除,一般会采用深度抑制的方法,容易导致人声也被抑制,出现丢字漏字等情况,声音出现明显卡顿,甚至听不清楚,最终在通信过程中丢失重要信息,键盘声抑制的可靠性低,影响远程通话的质量。
发明内容
本发明提供了一种键盘声处理方法、装置、终端设备及存储介质及系统,以提高键盘声抑制的可靠性,提高远程通话质量。
第一方面,本公开实施例提供了一种键盘声处理方法,应用于终端设备上的应用程序,包括:
响应于键盘声抑制触发条件,对采集到的键盘声信号进行人声区检测;
若所述键盘声信号包含非人声信号,则对所述键盘声信号中符合非人声信号的频谱特征的噪声进行抑制;
输出经过抑制的键盘声信号。
第二方面,本公开实施例还提供了一种键盘声处理装置,包括:
检测模块,用于响应于键盘声抑制触发条件,对采集到的键盘声信号进行人声区检测;
抑制模块,用于若所述键盘声信号包含非人声信号,则对所述键盘声信号中符合非人声信号的频谱特征的噪声进行抑制;
输出模块,用于输出经过抑制的键盘声信号。
第三方面,本公开实施例还提供了一种终端设备,包括:
一个或多个处理装置;
存储装置,用于存储一个或多个程序;
所述一个或多个程序被所述一个或多个处理装置执行,使得所述一个或多个处理装置实现本公开实施例提供的方法。
第四方面,本公开实施例还提供了一种计算机可读介质,其上存储有计算机程序,该程序被处理装置执行时实现本公开实施例提供的方法。
本公开实施例提供了键盘声处理方法、装置、终端设备及介质,首先响应于键盘声抑制触发条件,对采集到的键盘声信号进行人声区检测;然后若所述键盘声信号包含非人声信号,则对所述键盘声信号中符合非人声信号的频谱特征的噪声进行抑制;最后输出经过抑制的键盘声信号。利用上述技术方案,根据非人声信号的频谱特征对键盘声信号中的噪声进行抑制,能够有效抑制噪声,提高键盘声抑制的可靠性,提高远程通话质量。
附图说明
图1为本公开实施例一提供的一种键盘声处理方法的流程示意图;
图2为本公开实施例二提供的一种键盘声处理方法的流程示意图;
图3为本公开实施例三提供的一种键盘声处理方法的流程示意图;
图4为本公开实施例四提供的一种键盘声处理方法的流程示意图;
图5为本公开实施例四中对键盘声信号进行分级抑制的示意图;
图6为本公开实施例四中的处理前后的键盘声信号的示意图;
图7为本公开实施例五提供的一种键盘声处理装置的结构示意图;
图8为本公开实施例六提供的一种终端设备的结构示意图。
具体实施方式
下面将参照附图更详细地描述本公开的实施例。虽然附图中显示了本公开的某些实施例,然而应当理解的是,本公开可以通过各种形式来实现,而且不应该被解释为限于这里阐述的实施例,相反提供这些实施例是为了更加透彻和完整地理解本公开。应当理解的是,本公开的附图及实施例仅用于示例性作用,并非用于限制本公开的保护范围。
应当理解,本公开的方法实施方式中记载的各个步骤可以按照不同的顺序执行,和/或并行执行。此外,方法实施方式可以包括附加的步骤和/或省略执行示出的步骤。本公开的范围在此方面不受限制。
本文使用的术语“包括”及其变形是开放性包括,即“包括但不限于”。术语“基于”是“至少部分地基于”。术语“一个实施例”表示“至少一个实施例”。
需要注意,本公开中提及的“一个”、“多个”的修饰是示意性而非限制性的,本领域技术人员应当理解,除非在上下文另有明确指出,否则应该理解为“一个或多个”。
本公开实施方式中的多个装置之间所交互的消息或者信息的名称仅用于说明性的目的,而并不是用于对这些消息或信息的范围进行限制。
下述各实施例中,每个实施例中同时提供了可选特征和示例,实施例中记载的各个特征可进行组合,形成多个可选方案,不应将每个编号的实施例仅视为一个技术方案。此外,在不冲突的情况下,本公开中的实施例及实施例中的特征可以相互组合。
实施例一
图1为本公开实施例一提供的一种键盘声处理方法的流程示意图,该方法可适用于对远程通话中的键盘声进行抑制的情况,具体的,用于对键盘声信号的目标帧进行分级抑制,以提高远程通话质量的情况。该方法可以由键盘声处理装置来执行,其中该装置可由软件和/或硬件实现,并一般集成在终端设备上,在本实施例中终端设备包括但不限于:手机、电脑和个人数字助理等设备。
如图1所示,本公开实施例一提供的一种键盘声处理方法,包括如下步骤:
S110、响应于键盘声抑制触发条件,对采集到的键盘声信号进行人声区检测。
在本实施例中,键盘声抑制触发条件可以认为是触发进行键盘声抑制的条件。此处不对键盘声抑制条件的触发进行限定,本领域技术人员可以根据具体业务场景确定。
在一个实施例中,键盘声抑制触发条件可以为终端设备通过麦克风采集到符合键盘敲击声特点的音频信号,也可以为终端设备检测到键盘输入设备响应用户的敲击所生成的输入信号,也可以为接收到用户向终端设备发出的开始执行抑制键盘声的指令,或者终端设备中设定键盘声抑制功能为开启状态,或者通过终端设备与键盘输入设备进行通信的接口获知键盘敲击事件等。
键盘声信号是一种包含键盘敲击噪声的音频信号。假设键盘声信号的帧长为L,其中的每一帧都是目标帧,对每个目标帧的噪声都需要进行抑制。为便于描述,将键盘声信号时域上的第m帧(也是第m个目标帧)记为x(m),对应的频域记为X(m,k),X(m,k)表示第m帧的第k个频点对应的频谱分量,为复数形式,由频谱分量的幅度和相位组成。
对采集到的键盘声信号进行人声区检测,是指利用语音识别算法对键盘声信号中的人声区和非人声区进行检测,以识别键盘声信号中包含人声信号的部分和包含非人声信号的部分,其中,非人声信号可包括由键盘产生的噪声信号。包含人声信号的部分即为人声区;包含非人声信号的即为非人声区。对于人声信号无需进行抑制,还可以利用语音信号处理技术在一定程度上进行加强;而对于非人声信号,需要对其进行抑制。
S120、若所述键盘声信号包含非人声信号,则对所述键盘声信号中符合非人声信号的频谱特征的噪声进行抑制。
在本实施例中,键盘声信号可以是单纯的键盘噪声信号,也可以是键盘噪声信号和人声信号的混合信号。符合非人声信号的频谱特征的噪声是指频谱分量符合键盘声的冲击跳变规律,和/或频谱分量有别于人声信号的频谱特征的噪声。符合非人声信号的频谱特征的噪声例如为瞬时噪声,瞬时噪声是由于键盘声信号的瞬时冲击跳变产生的,冲击跳变在键盘声信号的频谱上表现为幅度突出的竖状条纹,对瞬时噪声进行抑制的目的是降低键盘声信号频谱的瞬时分量。
除了瞬时冲击跳变导致的瞬时噪声,键盘声信号中还存在一类由持续的敲击动作带来的噪声,其冲击程度不会在瞬时达到很大、不存在幅度明显的跳变,具有微弱的节奏性,即在低频区域的“鼓点”噪声,“鼓点”噪声在键盘声信号的频谱上表现为在一定区域内持续出现的幅度较小的竖状条纹。本实施例中,符合非人声信号的频谱特征的噪声还可以包括这类低频区域噪声,除了对键盘声信号的瞬时噪声进行抑制,还对低频区域噪声进行抑制,从而减弱“鼓点”噪声对人声信号听觉效果的影响。
需要说明的是,本实施例对低频区域和非低频区域的划分不做限定,可以是根据预设的频率阈值划分,低于该频率阈值的即为低频区域,否则为非低频区域;也可以是根据键盘声信号实际的频率范围划分,例如,键盘声信号中包含的非人声信号的最低频率为f1、最高频率为f2,则在实际的频率范围[f1,f2]中,将低于频率变化范围(f2-f1)的一定比例(例如k(f2-f1),其中,k的取值范围为0~1)的频率值的作为低频区域,否则为非低频区域;或者根据键盘声信号频谱的特点,将频谱中存在“鼓点”噪声的区域识别为低频区域。
在经过瞬时噪声和低频区域噪声抑制之后,键盘声信号中还存在一定的残余冲击噪声,这类噪声无法在瞬时噪声和低频区域噪声的抑制过程中完全消除,还存一定的小幅度的频谱分量的冲击或波动,这部分噪声有别与人声信号的频谱特征,从而可以被识别和抑制,也属于符合非人声信号的频谱特征的噪声。本实施例还针对这类残余冲击噪声进行抑制,从而提高键盘声信号噪声抑制的可靠性和全面性,得到高质量的输出信号,具有更高的信噪比和舒适性。
S130、输出经过抑制的键盘声信号。
通过对键盘声信号中符合非人声信号的频谱特征的噪声进行全面的抑制,降低了噪声的冲击,得到的键盘声信号具有更高的信噪比和舒适性,改善听觉效果,提高了远程通话的质量。
在一实施例中,对键盘声信号的噪声采取分级抑制的方式,即,首先根据键盘声信号的瞬时冲击程度进行瞬时噪声抑制,然后对经过瞬时噪声抑制的信号的低频区域噪声进行抑制,最后对经过低频区域噪声抑制的信号再进行残余冲击噪声的抑制。采用这种分级抑制的方式,可以先大幅度降低瞬时噪声的频谱分量,以去除明显的冲击跳变,使噪声不再刺耳或引起听觉的不适,在消除大幅度的冲击跳变的基础上,可以更加准确地辨别幅度较小的低频区域的“鼓点”噪声,减少对人声信号的误伤,并且针对两种噪声抑制后的残余噪声进行最后一级抑制,层层递进,能够确保噪声被全面地抑制或消除,提高抑制噪声的精度和有效性。
本实施例提供的一种键盘声处理方法,首先响应于键盘声抑制触发条件,对采集到的键盘声信号进行人声区检测;然后若键盘声信号包含非人声信号,则对键盘声信号中符合非人声信号的频谱特征的噪声进行抑制;最后输出经过抑制的键盘声信号。利用上述技术方案,根据非人声信号的频谱特征对噪声进行抑制,能够有效抑制噪声,提高键盘声抑制的可靠性,提高远程通话质量。
实施例二
图2为本公开实施例二提供的一种键盘声处理方法的流程示意图,本实施例二在实施例一中各个可选方案为基础进行具体化。在本实施例中,将对所述键盘声信号中符合非人声信号的频谱特征的噪声进行抑制具体化为:检测所述键盘声信号的瞬时冲击程度,并根据所述瞬时冲击程度对所述键盘声信号的瞬时噪声进行抑制,得到第一抑制信号;对所述第一抑制信号的低频区域噪声进行抑制,得到第二抑制信号;对所述第二抑制信号的残余冲击噪声进行抑制,得到经过抑制的键盘声信号。
本实施例尚未详尽的内容请参考实施例一。
如图2所示,本公开实施例二提供的一种键盘声处理方法,包括如下步骤:
S210、响应于键盘声抑制触发条件,对采集到的键盘声信号进行人声区检测。
S220、若键盘声信号包含非人声信号,则检测键盘声信号的瞬时冲击程度。
S230、根据瞬时冲击程度对键盘声信号的瞬时噪声进行抑制,得到第一抑制信号。
根据瞬时冲击程度对键盘声信号进行抑制,可以理解为根据键盘声信号目标帧的冲击跳变程度对X(m,k)进行瞬时分量抑制,抑制过程可以通过将X(m,k)乘以一个与冲击跳变程度相关的抑制因子实现,从而减小目标帧频谱的瞬时分量,减弱目标帧的冲击,此处对抑制因子的形式不做限定。除了将X(m,k)乘以抑制因子以外,还可进一步加上一个与目标帧平滑谱相关的平滑增量,使键盘声信号变得相对更平滑舒适,此处对平滑增量的形式不做限定。
需要注意的是,根据键盘声信号的瞬时冲击程度对目标帧进行抑制,是键盘声信号处理过程中的第一级抑制,经过第一级抑制后得到的第一抑制信号记为X1(m,k),该第一抑制信号作为第二级抑制的输入。
S240、对第一抑制信号的低频区域噪声进行抑制,得到第二抑制信号。
在经过根据瞬时冲击程度进行的第一级抑制之后,已经减弱了键盘声信号中较为明显的冲击跳变,使键盘声信号相对更为平缓,但由于键盘声信号中还存在低频区域的“鼓点”噪声,“鼓点”噪声在第一级抑制中的抑制效果不明显,本实施例在得到第一抑制信号的基础上,根据低频区域噪声强度对第一抑制信号进行第二级抑制,以减弱“鼓点”噪声对听觉感受的影响。
根据第一抑制信号的低频区域噪声强度对第一抑制信号进行抑制,可以理解为根据第一抑制信号的“鼓点”噪声强度对第一级抑制所输出的X1(m,k)进行抑制。抑制过程可以包括将X1(m,k)乘以一个与“鼓点”噪声强度相关的抑制因子,从而减弱“鼓点”噪声对远程通话的影响,此处对抑制因子的形式不做限定。
需要注意的是,根据第一抑制信号的低频区域噪声强度对第一抑制信号进行抑制,是键盘声信号处理过程中的第二级抑制,经过第二级抑制后得到的第二抑制信号记为X2(m,k),该第二抑制信号作为第三级抑制的输入。
S250、对第二抑制信号的残余冲击噪声进行抑制,得到经过抑制的键盘声信号。
在本实施例中,经过根据瞬时冲击程度进行的第一级抑制以及根据低频区域噪声强度进行的第二级抑制之后,第二抑制信号中还存在一定的残余冲击,本实施例根据残余冲击强度对第二抑制信号进行第三级抑制。抑制过程可以包括将X2(m,k)乘以一个与残余冲击强度相关的抑制因子,从而进一步掩盖较为微弱的键盘声,此处对抑制因子的形式不做限定。需要注意的是,根据第二抑制信号的残余冲击强度对第二抑制信号进行抑制,是键盘声信号处理过程中的第三级抑制,经过第三级抑制后得到的信号记为Xo(m,k),该信号中键盘敲击造成的噪声已经得到了全面有效的抑制,具有更高的信噪比和舒适性,保证了远程通话质量。
S260、输出经过抑制的键盘声信号。
在一实施例中,将根据瞬时冲击程度对键盘声信号的瞬时噪声进行抑制,具体优化为:若键盘声信号满足时域跳变条件,则根据瞬时冲击程度对键盘声信号的瞬时噪声进行抑制。
在本实施例中,在满足一定条件的情况下才触发第一级抑制,即,在键盘声信号的瞬时冲击程度满足时域跳变条件的情况下,触发第一级抑制,进一步保证对瞬时噪声抑制的可靠性,不会因为误处理而影响人声信号。在另外的实施例中,也可以在判定键盘声信号包含非人声信号的情况下就可以触发第一级抑制。进一步地,在目标帧的频谱分量的幅值大于目标帧的平滑谱幅度均值的情况下,可以利用上述与冲击跳变程度相关的抑制因子和/或平滑增量抑制目标帧的频谱分量。
本实施例通过对键盘声信号的瞬时噪声、低频区域噪声和残余冲击噪声进行分级抑制,可以先消除明显冲击跳变、使噪声不再刺耳或引起听觉的不适,在此基础上可以更加准确地辨别低频区域噪声,减少对人声信号的误伤,并且针对两种噪声抑制后的残余噪声进行最后一级抑制,确保噪声被全面地抑制或消除,提高抑制噪声的精度和有效性。
本公开实施例二提供的一种键盘声处理方法,具体化了对键盘声信号的瞬时噪声、低频区域噪声以及残余冲击噪声的抑制过程,根据键盘声的冲击程度、低频区域噪声强度和残余冲击强度进行分级抑制,能够有效抑制噪声,提高键盘声抑制的可靠性,提高远程通话质量。
实施例三
图3为本公开实施例三提供的一种键盘声处理方法的流程示意图。在本实施例中,将键盘声抑制触发条件具体化为:检测到键盘敲击事件且采集到键盘声信号。
进一步地,本实施例还将根据瞬时冲击程度对键盘声信号的瞬时噪声进行抑制具体化为:根据瞬时冲击程度计算键盘声信号的目标帧的瞬时冲击程度值;基于瞬时冲击程度值对目标帧进行瞬时噪声抑制。通过将瞬时冲击程度量化,明确瞬时冲击程度的大小,为目标帧瞬时噪声抑制提供可靠的依据,确保对瞬时噪声抑制的精确性。
可选地,本实施例还将根据瞬时冲击程度计算键盘声信号的目标帧的瞬时冲击程度值,具体化为:对目标帧进行小波包分解(Wavelet Packet Decomposition,WPD);计算分解后的每个叶子节点的一阶跳变统计量和二阶跳变统计量;根据各一阶跳变统计量和二阶跳变统计量计算平均跳变统计量;将平均跳变统计量转换为目标帧的瞬时冲击程度值,瞬时冲击程度值的取值范围为[0,1]。
可选地,本实施例还将基于瞬时冲击程度值对目标帧进行瞬时噪声抑制,具体化为:若目标帧的频谱分量的幅值大于目标帧的平滑谱幅度均值,则根据瞬时冲击程度值调整目标帧的频谱分量;将调整后的频谱分量与平滑增量的和作为第一抑制信号的频谱分量,平滑增量为瞬时冲击程度值与平滑谱幅度均值的乘积。
可选地,在得到第一抑制信号之后,还包括:根据第一抑制信号的频谱分量更新目标帧的下一帧的平滑谱幅度均值。
本实施例尚未详尽的内容请参考上述实施例。
如图3所示,本公开实施例三提供的一种键盘声处理方法,包括如下步骤:
S310、检测键盘敲击事件并采集键盘声信号。
在本实施例中,键盘声抑制触发条件优化为:检测到键盘敲击事件并且采集到键盘声信号,在满足该键盘声抑制触发条件的情况下对键盘声信号进行分级抑制。键盘敲击事件表现为终端设备检测到键盘输入设备生成的输入信号,在检测到键盘敲击事件后可能经过一定的时延才能采集到键盘声信号,不同终端设备的时延可能不同。通过将键盘敲击事件的检测和键盘声信号的采集结合起来作为键盘声抑制的触发条件,准确地保证被抑制的对象为键盘声信号,而不会在未敲击键盘的情况下对人声信号进行误处理。响应于键盘声抑制触发条件,检测键盘声信号的人声区。
S320、键盘声信号包含非人声信号且键盘声信号满足时域跳变条件,若是,则执行S330;若否,则执行S310。
在本实施例中,在键盘声信号满足时域跳变条件的情况下才开始执行第一级抑制。键盘声信号满足时域跳变条件是指,相邻两个目标帧的最大绝对幅度差达到跳变阈值时,认为发生时域跳变,此时瞬时冲击程度较大,开始执行第一级抑制。将x(m)作为目标帧,计算x(m)与其前一帧x(m-1)的最大绝对幅度差,跳变阈值假设为0.4,则时域跳变条件可以表示为:abs(max(abs(x(m)))-max(abs(x(m-1))))≥0.4。如果目标帧是键盘声信号的第一帧,则可以将其与下一帧作比较。在满足时域跳变条件的情况下,开始执行第一级抑制,根据冲击跳变程度计算瞬时冲击程度值,并基于瞬时冲击程度值对目标帧进行抑制。
在另外的实施例中,无需判定键盘声信号是否满足时域跳变条件。对于键盘声信号,可以通过语音活动检测(Voice Activity Detection,VAD)算法算法判定人声区和非人声区;为进一步确保人声区判定的准确性,可以在VAD算法的基础上进行平滑计算做出进一步的判定。键盘声抑制触发条件等同于键盘声信号包含非人声信号,如果检测到键盘声信号处于非人声区,即可开始执行第一级抑制,根据冲击跳变程度计算瞬时冲击程度值,并基于瞬时冲击程度值对目标帧进行抑制。在这种情况下,S320为可选的步骤。
需要说明的是,如果不满足上述条件,说明采集到的信号为人声区信号,或者被认为没有发生时域跳变,则不需要进行分级抑制,可以直接输出采集到的音频信号,然后返回S310,继续采集键盘声信号,直到采集到的满足条件的键盘声信号,再进行分级抑制。
S330、对目标帧进行小波包分解,计算分解后的每个叶子节点的一阶跳变统计量和二阶跳变统计量。
小波包分解利用分析树来表示小波包,即利用多次叠代的小波转换分析信号的细节部分,将目标帧通过一系列中心频率不同但带宽相同的滤波器,形成最佳子带树结构(Optimal Subband Tree Structuring)。在一实施例中,对x(m)使用多贝西(Daubechies)的小波基做3层小波包分解,即Tm=Wpdec(x(m),3,'db10'),其中,第level层第n个叶子节点对应的第i个小波包系数记为Tm(level,n,i),然后计算分解后的每个叶子节点的一阶跳变统计量jump1m和二阶跳变统计量jump2m,具体的:
S340、根据各一阶跳变统计量和二阶跳变统计量计算平均跳变统计量,将平均跳变统计量转换为目标帧的瞬时冲击程度值。
在本实施例中,根据各个叶子结点的一阶跳变统计量和二阶跳变统计量,计算目标帧第level层各个叶子节点的平均跳变统计量jumm(level):
将此平均跳变统计量转换为瞬时冲击程度值factor(m):
其中,factor(m)的取值范围为[0,1]。
通过对目标帧进行小波包分解并基于各统计量计算瞬时冲击程度值,准确反映了目标帧频谱分量的瞬时冲击程度,将瞬时冲击程度量化和标准化,为目标帧瞬时噪声抑制提供可靠的依据,确保对瞬时噪声抑制的精确性。
S350、目标帧的频谱分量的幅值大于目标帧的平滑谱幅度均值,若是,则执行S360;若否,则执行S310。
本实施例中,根据冲击跳变程度计算瞬时冲击程度值后,如果目标帧的频谱分量的幅值大于目标帧的平滑谱幅度均值,即满足:则相对于平缓慢变的输入强度出现了跳变频点,则开始执行第一级抑制。
需要说明的是,如果不满足上述条件,说明采集到的信号冲击跳变程度较弱,不需要进行分级抑制,可以直接输出,然后返回S310,继续采集键盘声信号,直到采集到的满足条件的键盘声信号,则进行第一级抑制。
S360、根据瞬时冲击程度值调整目标帧的频谱分量,将调整后的频谱分量与平滑增量的和作为第一抑制信号的频谱分量,得到第一抑制信号。
在本实施例中,根据瞬时冲击程度值调整目标帧的频谱分量X(m,k),并加上一个平滑增量,平滑增量的大小与冲击程度值正相关,即冲击程度越强,需要增加的平滑增量越大,从而得到更加舒适平缓的信号。具体的,第一抑制信号的频谱分量记为X1(m,k),则
S370、根据第一抑制信号的频谱分量更新目标帧的下一帧的平滑谱幅度均值。
本实施例中,在得到目标帧的第一抑制信号之后,还根据X1(m,k)更新下一帧的缓慢平滑谱幅度均值具体的:
在对下一帧进行分级抑制时,其对应的平滑谱幅度均值即为此处的
S380、对第一抑制信号的低频区域噪声进行抑制,得到第二抑制信号。
S390、对第二抑制信号的残余冲击噪声进行抑制,得到经过抑制的键盘声信号。
S391、输出经过抑制的键盘声信号。
本公开实施例三提供的一种键盘声处理方法,在分级抑制的基础上,具体化了键盘声抑制条件、根据键盘声信号的瞬时冲击程度对目标帧进行抑制的具体操作。利用该方法,能够提高抑制对象检测的准确性,避免误处理;对于键盘声信号,首先根据瞬时冲击程度对目标帧进行不同程度的抑制,明显抑制了冲击跳变的频谱分量,生成平缓的输出信号,提高了抑制处理的可靠性。
实施例四
图4为本公开实施例四提供的一种键盘声处理方法的流程示意图,本实施例在上述实施例的基础上进行具体化,在本实施例中,将对第一抑制信号的低频区域噪声进行抑制,得到第二抑制信号,具体化为:根据第一抑制信号的低频区域噪声强度计算低频抑制因子;将第一抑制信号的频谱分量与低频抑制因子相乘,得到第二抑制信号。
进一步地,本实施例还将对第二抑制信号的残余冲击噪声进行抑制,得到经过抑制的键盘声信号,具体优化为:根据第二抑制信号的时域幅度计算对应的残余冲击阈值,并根据残余冲击阈值和人声区的能量计算残余冲击抑制因子;将第二抑制信号的频谱分量与所述残余冲击抑制因子相乘,得到经过抑制的键盘声信号。
进一步地,本实施例还包括:通过VAD算法确定键盘声信号的初始人声区和初始非人声区;按照设定帧长度划分目标帧组,并基于所述初始人声区和初始非人声区计算所述目标帧组的平滑值;将平滑值大于或等于设定阈值的目标帧组判定为人声区。
进一步的,本实施例还将输出经过抑制的键盘声信号,具体优化为:在经过抑制的键盘声信号的基础上叠加舒适噪声,并输出叠加舒适噪声后的键盘声信号。
本实施例尚未详尽的内容参见上述实施例。
如图4所示,本公开实施例四提供的一种键盘声处理方法,包括如下步骤:
S410、在满足键盘声抑制触发条件时,通过语音活动检测VAD算法确定键盘声信号的初始人声区和初始非人声区。
在本实施例中,通过VAD算法对人声区和非人声区进行初步判定。VAD算法能够从音频信号流中识别和消除静音期,有利于减少用户感觉到的端到端的时延。在远程通话过程中,人声的信号能量低于一定门限值时认为是静默状态,这种状态下减少或者不发送语音分组,从而降低语音比特率;在采集到人声信号时才生成音频信号并加以传输。但VAD算法存在一定的误差,如果人声被判定为键盘声,则会导致信号失真、数据丢失等。
通过VAD算法确定初始人声区和初始非人声区,假设对于目标帧的VAD判决结果表示为VAD(m),VAD(m)的值为1表示为人声区,为0表示为非人声区。
S420、按照设定帧长度划分目标帧组,并基于初始人声区和初始非人声区计算目标帧组的平滑值,将平滑值大于或等于设定阈值的目标帧组判定为人声区。
在一实施例中,利用VAD算法对人声区和非人声区进行初步检测,VAD算法存在一定的误差,尤其是在用户一边讲话一边敲键盘时,如果误判会造成有用的人声信号被误伤。通过将相邻的目标帧作为一个整体进行平滑计算,考虑了帧与帧之间的关联性,降低对每一帧独立判定造成的误差;并设定合适的设定阈值,根据平滑值和设定阈值重新划分人声区和非人声区,能够允许在一定程度上将键盘噪声判定为人声信号,但必须避免将人声区的信号判定为键盘噪声,从而只对非人声区的键盘声信号进行分级抑制,充分保护人声区的信号质量。
在本实施例中,将目标帧对应的平滑值记为VADsmooth(m),则:即,以L帧为一个目标帧组,求解该目标帧组的判决结果的平均值,作为该目标帧组对应的平滑值。例如,L=5,这5帧的判决结果分别为0、0、0、1、0,如果不计算平滑值,则会将这5帧中的第4帧判定为非人声区并进行噪声抑制,这种情况下,该判定结果没有考虑前后几帧之间的关联性可能存在误判。而通过计算这5帧对应的平滑值为(0+0+0+1+0)/5=0.2,将这5帧关联在一起,降低对每一帧独立判定造成的误差。
本公开不对设定阈值进行限定,设定阈值可以根据实际情况确定。示例性的,设定阈值小于0.5,以倾向于将可能的键盘噪声判定为人声区。例如,当VADsmooth(m)≥0.2时,即判定为人声区,则对于上述的5帧,其平滑值等于0.2,则这5帧都被判定为人声区,不会进行噪声抑制。由于阈值小于0.5,能够允许将非人声区判定为人声区而尽可能地保护人声信号,避免在远程通话过程中丢失重要的有效信息。
通过将平滑值与设定阈值比较,重新划分人声区和非人声区,能够降低对每一帧独立判定造成的误差,允许在一定程度上将键盘噪声判定为人声信号,但避免将人声区的信号判定为键盘噪声,从而只对非人声区的键盘声信号进行分级抑制,充分保护人声区的信号质量。
S430、若键盘声信号包含非人声信号,则根据键盘声信号的瞬时冲击程度对目标帧的瞬时噪声进行抑制,得到第一抑制信号。
在本实施例中,可以通过小波包分解计算瞬时冲击程度值,基于瞬时冲击程度值对键盘声信号的目标帧进行抑制,得到第一抑制信号X1(m,k)。
S440、根据第一抑制信号的低频区域噪声强度计算低频抑制因子。
在本实施例中,经过第一级抑制后,第一抑制信号的低频区域还存在“鼓点”噪声,针对“鼓点”噪声进行第二级抑制。根据第一抑制信号X1(m,k)的低频区域噪声强度计算出目标帧对应的低频抑制因子low_factor(m),low_factor(m)与低频抑制因子均值low_factor有关,具体的:
low_factor(m)=(1-0.02)*low_factor(m-1)+0.02*low_factor。
其中,“鼓点”噪声区域的起始位置为drump_st,结束位置为drump_en,例如,drump_st对应0HZ的频点位置,drump_en对应300Hz频点位置;非“鼓点”噪声区域的起始位置为undrump_st,结束位置为undrump_en,例如,undrump_st对应300Hz的频点位置,undrump_en对应800Hz的频点位置。
S450、将第一抑制信号的频谱分量与低频抑制因子相乘,得到第二抑制信号。
在本实施例中,第二抑制信号X2(m,k)满足:
X2(m,k)=X1(m,k)*low_factor(m)。
S460、根据第二抑制信号的时域幅度计算对应的残余冲击阈值,并根据残余冲击阈值和人声区的能量计算残余冲击抑制因子。
在本实施例中,经过第二级抑制后,第二抑制信号X2(m,k)还存在残余冲击,针对残余冲击进行第三级抑制。首先根据目标帧的时域幅度x(m)计算对应的残余冲击阈值,其中,人声区的能量表示为ratio(m):据此可以设定与目标帧相对应的自适应阈值threshold(m):需要注意的是,不同帧的残余冲击强度也可能不同,此处的自适应阈值可以根据目标帧的残余冲击强度自动设置为可变值,能够提高键盘声抑制的灵活性,对目标帧做出有针对性的抑制,残余冲击强度越大,自适应阈值也越大。在此基础上根据残余冲击阈值计算残余冲击抑制因子res(m):
其中,γ为常量,此处设置为15。
S470、将第二抑制信号的频谱分量与残余冲击抑制因子相乘,得到经过抑制的键盘声信号。
在本实施例中,经过抑制的键盘声信号Xo(m,k)=X2(m,k)*res(m),从而完成第三级抑制,得到舒适的输出信号。
需要注意的是,如果键盘声信号为键盘噪声信号与人声信号的混合信号,则残余冲击与人声信号混合在一起,对残余冲击的过分抑制易对人声信号造成误伤。而本实施例中的残余冲击抑制因子,可以根据残余冲击强度自适应调整,这种情况下,残余冲击抑制因子趋向于1,即使是残余冲击与人声信号混合在一起、抑制的难度较大的情况,也可以实现优先保护人声信号。
S480、在经过抑制的键盘声信号的基础上叠加舒适噪声,并输出叠加舒适噪声后的键盘声信号。
在本实施例中,最终的输出信号是在Xo(m,k)的基础上叠加了舒适噪声的信号。舒适噪声是一种特殊的噪声,被调整到与输入信号的背景噪声相匹配的状态,生成的舒适噪声能量接近于背景噪声的能量。舒适噪声一般用于替换由非线性处理引入的杂音或是断续,采用生成的舒适背景噪声来代替这一部分,用以增强主观感受,掩盖微弱的键盘声,使输出信号更加舒适。
以下对本公开提供的方法进行示例性描述,本公开提供的键盘声处理方法可以认为是一种对键盘声信号进行分级抑制的方案。为解决现有技术中对人声区进行误处理、对键盘声无法有效抑制而导致键盘声噪声较多、影响正常远程通话质量的技术问题。该方法根据瞬时冲击程度进行第一级抑制,根据低频区域噪声强度进行第二级抑制,根据残余冲击强度进行第三级抑制,从而得到低噪声、高质量的输出信号。
图5为本公开实施例四中对键盘声信号进行分级抑制的示意图,如图5所示,键盘声信号的处理过程具体如下:
S1.采集键盘声信号。
S2.是否同时检测到键盘敲击事件,若是,则执行S3,若否,则执行S9。
在本步骤中,同时采集到键盘声信号且检测到键盘敲击事件后,才会判定人声区和非人声区,进一步对非人声区的键盘声信号进行分级抑制。
S3.通过VAD算法和平滑计算判定键盘声信号是否包含非人声信号,若是,则执行S4,若否,则执行S9。
在本步骤中,对于人声区信号可以直接输出,对非人声区的信号进行分级抑制。
S4.检测键盘声信号的目标帧的瞬时冲击程度。
在本步骤中,检测目标帧x(m)的瞬时冲击程度并转换为瞬时冲击程度值factor(m),factor(m)的取值范围为[0,1]。
S5.根据瞬时冲击程度对目标帧进行第一级抑制。
在本步骤中,根据factor(m)得到第一抑制信号X1(m,k),具体为
S6.根据低频区域噪声强度对第一抑制信号进行第二级抑制。
在本步骤中,根据低频区域噪声强度计算低频抑制因子low_factor(m),根据low_factor(m)得到第二抑制信号X2(m,k),具体为X2(m,k)=X1(m,k)*low_factor(m)。
S7.根据残余冲击程度对第二抑制信号进行第三级抑制。
在本步骤中,根据残余冲击程度计算残余冲击抑制因子res(m),根据res(m)得到经过抑制的键盘声信号Xo(m,k)=X2(m,k)*res(m)。
S8.输出经过抑制的键盘声信号。
S9.输出键盘声信号。
在一实施例中,当键盘敲击事件消失,即检测不到键盘输入设备生成的信号时,等待预设时长(例如10秒),则退出键盘声信号处理流程。如果后续再次检测到键盘敲击事件,则重新启动该流程。
图6为本公开实施例四中的处理前后的键盘声信号的示意图。如图6所示,上方为采集到的原始键盘声信号,其中,间隔出现的幅度突出的、具有明显的瞬时冲击跳变的竖线表示瞬时噪声10,成段出现的幅度较小的、较为密集的短小竖线表示低频区域噪声20,此外,在瞬时噪声10和低频区域噪声20经过一定程度的抑制之后,还存在残留冲击噪声(图未示)。经过本公开的方法处理后,得到下方经过抑制处理后的信号,可以看出键盘噪声得到了显著的抑制,频谱中已经不存在瞬时的冲击跳变或成段的“鼓点”噪声,瞬时噪声10和低频区域噪声20已全部消失,剩余的极少量的幅度很小的噪声是由于保护人声信号而保留的微弱噪声,不会对听觉感观造成实质的影响,可以忽略不计,可见,各类噪声得到了全面可靠的抑制。
本公开提供的键盘声处理方法,将键盘声信号的冲击跳变程度转化成不同程度的抑制因子,对目标帧进行瞬时分量抑制;并且针对对听感有明显影响低频“鼓点”噪声,进行低频鼓点抑制;由于冲击跳变程度估计存在一定的误差,还进一步针对残余的瞬时冲击再做最后一级自适应强度的非线性处理,充分保护人声信号,并叠加舒适噪声后输出,从而提高键盘声抑制的灵活性,有效抑制键盘噪声,提高远程通话质量。
实施例五
图7为本公开实施例五提供的一种键盘声处理装置的结构示意图,该装置可适用于对远程通话中的键盘声进行抑制的情况,具体的,用于对键盘声的目标帧进行分级抑制,以提高远程通话质量的情况,其中该装置可由软件和/或硬件实现,并一般集成在终端设备上。
如图7所示,该装置包括:检测模块51、抑制模块52以及输出模块53;
其中,检测模块51,用于响应于键盘声抑制触发条件,对采集到的键盘声信号进行人声区检测;
抑制模块52,用于若所述键盘声信号包含非人声信号,则对所述键盘声信号中符合非人声信号的频谱特征的噪声进行抑制;
输出模块53,用于输出经过抑制的键盘声信号。
在本实施例中,该装置首先通过检测模块51瞬时噪声抑制模块响应于键盘声抑制触发条件,对采集到的键盘声信号进行人声区检测;然后通过抑制模块若所述键盘声信号包含非人声信号,则对所述键盘声信号中符合非人声信号的频谱特征的噪声进行抑制;最后通过输出模块53,用于输出经过抑制的键盘声信号。
本实施例提供了一种键盘声处理装置,根据键盘声的冲击程度、低频区域噪声强度和残余冲击进行分级抑制,能够有效抑制噪声,提高键盘声抑制的可靠性,提高远程通话质量。
在上述具体化的基础上,抑制模块52,具体包括:
瞬时噪声抑制模块,用于检测所述键盘声信号的瞬时冲击程度,并根据所述瞬时冲击程度对所述键盘声信号的瞬时噪声进行抑制,得到第一抑制信号;
低频噪声抑制模块,用于对所述第一抑制信号的低频区域噪声进行抑制,得到第二抑制信号;
残余冲击抑制模块,用于对所述第二抑制信号的残余冲击噪声进行抑制,得到经过抑制的键盘声信号。
在上述具体化的基础上,所述根据所述瞬时冲击程度对所述键盘声信号的瞬时噪声进行抑制,具体优化为:
若所述键盘声信号满足时域跳变条件,则根据所述瞬时冲击程度对所述键盘声信号的瞬时噪声进行抑制。
在上述具体化的基础上,所述根据所述瞬时冲击程度对所述键盘声信号的瞬时噪声进行抑制,具体优化为:
根据所述瞬时冲击程度计算所述键盘声信号的目标帧的瞬时冲击程度值;
基于所述瞬时冲击程度值对所述目标帧进行瞬时噪声抑制。
在上述具体化的基础上,所述根据所述瞬时冲击程度计算所述键盘声信号的目标帧的瞬时冲击程度值,具体优化为:
对所述目标帧进行小波包分解;
计算分解后的每个叶子节点的一阶跳变统计量和二阶跳变统计量;
根据各所述一阶跳变统计量和二阶跳变统计量计算平均跳变统计量;
将所述平均跳变统计量转换为所述目标帧的瞬时冲击程度值,所述瞬时冲击程度值的取值范围为[0,1]。
在上述具体化的基础上,所述基于所述瞬时冲击程度值对所述目标帧进行瞬时噪声抑制,具体优化为:
若所述目标帧的频谱分量的幅值大于所述目标帧的平滑谱幅度均值,则根据所述瞬时冲击程度值调整所述目标帧的频谱分量;
将调整后的频谱分量与平滑增量的和作为所述第一抑制信号的频谱分量,所述平滑增量为所述瞬时冲击程度值与所述平滑谱幅度均值的乘积
在上述具体化的基础上,该装置还包括更新模块,用于:
在得到第一抑制信号之后,根据所述第一抑制信号的频谱分量更新所述目标帧的下一帧的平滑谱幅度均值。
在上述具体化的基础上,低频噪声抑制模块,具体用于:
根据所述第一抑制信号的低频区域噪声强度计算低频抑制因子;
将所述第一抑制信号的频谱分量与所述低频抑制因子相乘,得到所述第二抑制信号。
在上述具体化的基础上,残余冲击抑制模块,具体用于:
根据所述第二抑制信号的时域幅度计算对应的残余冲击阈值,并根据所述残余冲击阈值和人声区的能量计算残余冲击抑制因子;
将所述第二抑制信号的频谱分量与所述残余冲击抑制因子相乘,得到所述经过分级抑制后的键盘声信号。
在上述具体化的基础上,该装置还包括:检测模块51,具体用于:
通过语音活动检测VAD算法确定所述键盘声信号的初始人声区和初始非人声区,
按照设定帧长度划分目标帧组,并基于所述初始人声区和初始非人声区计算所述目标帧组的平滑值;
将平滑值大于或等于设定阈值的目标帧组判定为人声区。
在上述具体化的基础上,所述键盘声抑制触发条件,包括:
检测到键盘敲击事件且采集到键盘声信号。
在上述具体化的基础上,所述输出模块53,具体用于:
在所述经过抑制的键盘声信号的基础上叠加舒适噪声,并输出叠加舒适噪声后的键盘声信号。
上述键盘声处理装置可执行本公开任意实施例所提供的键盘声处理方法,具备执行方法相应的功能模块和有益效果。
实施例六
图8为本公开实施例六提供的一种终端设备的结构示意图。图8示出了适于用来实现本公开实施例的终端设备600的结构示意图。本公开实施例中的终端设备600可以包括但不限于诸如移动电话、笔记本电脑、数字广播接收器、个人数字助理(Personal DigitalAssistant,PDA)、平板电脑(Portable Android Device,PAD)、便携式多媒体播放器(Portable Media Player,PMP)、车载终端(例如车载导航终端)等等的移动终端以及诸如数字TV、台式计算机等等的固定终端。图8示出的终端设备600仅仅是一个示例,不应对本公开实施例的功能和使用范围带来任何限制。
如图8所示,终端设备600可以包括一个或多个处理装置(例如中央处理器、图形处理器等)601,其可以根据存储在只读存储器(ROM)602中的程序或者从存储装置608加载到随机访问存储器(RAM)603中的程序而执行各种适当的动作和处理。一个或多个处理装置601实现如本公开提供的方法。在RAM603中,还存储有终端设备600操作所需的各种程序和数据。处理装置601、ROM 602以及RAM603通过总线605彼此相连。输入/输出(I/O)接口604也连接至总线605。
通常,以下装置可以连接至I/O接口604:包括例如触摸屏、触摸板、键盘、鼠标、摄像头、麦克风、加速度计、陀螺仪等的输入装置606;包括例如液晶显示器(LCD)、扬声器、振动器等的输出装置607;包括例如磁带、硬盘等的存储装置608,存储装置608用于存储一个或多个程序;以及通信装置609。通信装置609可以允许终端设备600与其他设备进行无线或有线通信以交换数据。虽然图8示出了具有各种装置的终端设备600,但是应理解的是,并不要求实施或具备所有示出的装置。可以替代地实施或具备更多或更少的装置。
特别地,根据本公开的实施例,上文参考流程图描述的过程可以被实现为计算机软件程序。例如,本公开的实施例包括一种计算机程序产品,其包括承载在计算机可读介质上的计算机程序,该计算机程序包含用于执行流程图所示的方法的程序代码。在这样的实施例中,该计算机程序可以通过通信装置609从网络上被下载和安装,或者从存储装置608被安装,或者从ROM602被安装。在该计算机程序被处理装置601执行时,执行本公开实施例的方法中限定的上述功能。
需要说明的是,本公开上述的计算机可读介质可以是计算机可读信号介质或者计算机可读存储介质或者是上述两者的任意组合。计算机可读存储介质例如可以是——但不限于——电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。计算机可读存储介质的更具体的例子可以包括但不限于:具有一个或多个导线的电连接、便携式计算机磁盘、硬盘、随机访问存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、光纤、便携式紧凑磁盘只读存储器(CD-ROM)、光存储器件、磁存储器件、或者上述的任意合适的组合。在本公开中,计算机可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。而在本公开中,计算机可读信号介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了计算机可读的程序代码。这种传播的数据信号可以采用多种形式,包括但不限于电磁信号、光信号或上述的任意合适的组合。计算机可读信号介质还可以是计算机可读存储介质以外的任何计算机可读介质,该计算机可读信号介质可以发送、传播或者传输用于由指令执行系统、装置或者器件使用或者与其结合使用的程序。计算机可读介质上包含的程序代码可以用任何适当的介质传输,包括但不限于:电线、光缆、RF(射频)等等,或者上述的任意合适的组合。
上述计算机可读介质可以是上述终端设备600中所包含的;也可以是单独存在,而未装配入该终端设备600中。
上述计算机可读介质承载有一个或者多个程序,当上述一个或者多个程序被该终端设备执行时,使得该终端设备600:
响应于键盘声抑制触发条件,对采集到的键盘声信号进行人声区检测;
若所述键盘声信号包含非人声信号,则对所述键盘声信号中符合非人声信号的频谱特征的噪声进行抑制;
输出经过抑制的键盘声信号。
可以以一种或多种程序设计语言或其组合来编写用于执行本公开的操作的计算机程序代码,上述程序设计语言包括面向对象的程序设计语言—诸如Java、Smalltalk、C++,还包括常规的过程式程序设计语言—诸如“C”语言或类似的程序设计语言。程序代码可以完全地在用户计算机上执行、部分地在用户计算机上执行、作为一个独立的软件包执行、部分在用户计算机上部分在远程计算机上执行、或者完全在远程计算机或服务器上执行。在涉及远程计算机的情形中,远程计算机可以通过任意种类的网络——包括局域网(LAN)或广域网(WAN)—连接到用户计算机,或者,可以连接到外部计算机(例如利用因特网服务提供商来通过因特网连接)。
附图中的流程图和框图,图示了按照本公开各种实施例的系统、方法和计算机程序产品的可能实现的体系架构、功能和操作。流程图或框图中的每个方框可以代表一个模块、程序段、或代码的一部分,该模块、程序段、或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个接连地表示的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或操作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。
描述于本公开实施例中所涉及到的模块可以通过软件的方式实现,也可以通过硬件的方式来实现。其中,模块的名称在某种情况下并不构成对该模块本身的限定。
本文中以上描述的功能可以至少部分地由一个或多个硬件逻辑部件来执行。例如,非限制性地,可以使用的示范类型的硬件逻辑部件包括:现场可编程门阵列(FPGA)、专用集成电路(ASIC)、专用标准产品(ASSP)、片上系统(SOC)、复杂可编程逻辑设备(CPLD)等等。
在本公开的上下文中,机器可读介质可以是有形的介质,其可以包含或存储以供指令执行系统、装置或设备使用或与指令执行系统、装置或设备结合地使用的程序。机器可读介质可以是机器可读信号介质或机器可读储存介质。机器可读介质可以包括但不限于电子的、磁性的、光学的、电磁的、红外的、或半导体系统、装置或设备,或者上述内容的任何合适组合。机器可读存储介质的更具体示例会包括基于一个或多个线的电气连接、便携式计算机盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦除可编程只读存储器(EPROM或快闪存储器)、光纤、便捷式紧凑盘只读存储器(CD-ROM)、光学储存设备、磁储存设备、或上述内容的任何合适组合。
根据本公开的一个或多个实施例,示例1提供了一种键盘声处理方法,包括:
响应于键盘声抑制触发条件,对采集到的键盘声信号进行人声区检测;
若所述键盘声信号包含非人声信号,则对所述键盘声信号中符合非人声信号的频谱特征的噪声进行抑制;
输出经过抑制的键盘声信号。
根据本公开的一个或多个实施例,示例2根据示例1所述的方法,
所述对所述键盘声信号中符合非人声信号的频谱特征的噪声进行抑制,包括:
检测所述键盘声信号的瞬时冲击程度,并根据所述瞬时冲击程度对所述键盘声信号的瞬时噪声进行抑制,得到第一抑制信号;
对所述第一抑制信号的低频区域噪声进行抑制,得到第二抑制信号;
对所述第二抑制信号的残余冲击噪声进行抑制,得到经过抑制的键盘声信号。
根据本公开的一个或多个实施例,示例3根据示例2所述的方法,
所述根据所述瞬时冲击程度对所述键盘声信号的瞬时噪声进行抑制,包括:
若所述键盘声信号满足时域跳变条件,则根据所述瞬时冲击程度对所述键盘声信号的瞬时噪声进行抑制。
根据本公开的一个或多个实施例,示例4根据示例2所述的方法,
所述根据所述瞬时冲击程度对所述键盘声信号的瞬时噪声进行抑制,包括:
根据所述瞬时冲击程度计算所述键盘声信号的目标帧的瞬时冲击程度值;
基于所述瞬时冲击程度值对所述目标帧进行瞬时噪声抑制。
根据本公开的一个或多个实施例,示例5根据示例4所述的方法,
所述根据所述瞬时冲击程度计算所述键盘声信号的目标帧的瞬时冲击程度值,包括:
对所述目标帧进行小波包分解;
计算分解后的每个叶子节点的一阶跳变统计量和二阶跳变统计量;
根据各所述一阶跳变统计量和二阶跳变统计量计算平均跳变统计量;
将所述平均跳变统计量转换为所述目标帧的瞬时冲击程度值,所述瞬时冲击程度值的取值范围为[0,1]。
根据本公开的一个或多个实施例,示例6根据示例4所述的方法,
所述基于所述瞬时冲击程度值对所述目标帧进行瞬时噪声抑制,包括:
若所述目标帧的频谱分量的幅值大于所述目标帧的平滑谱幅度均值,则根据所述瞬时冲击程度值调整所述目标帧的频谱分量;
将调整后的频谱分量与平滑增量的和作为所述第一抑制信号的频谱分量,所述平滑增量为所述瞬时冲击程度值与所述平滑谱幅度均值的乘积。
根据本公开的一个或多个实施例,示例7根据示例6所述的方法,
在得到第一抑制信号之后,还包括:
根据所述第一抑制信号的频谱分量更新所述目标帧的下一帧的平滑谱幅度均值。
根据本公开的一个或多个实施例,示例8根据示例2所述的方法,
所述对所述第一抑制信号的低频区域噪声进行抑制,得到第二抑制信号,包括:
根据所述第一抑制信号的低频区域噪声强度计算低频抑制因子;
将所述第一抑制信号的频谱分量与所述低频抑制因子相乘,得到所述第二抑制信号。
根据本公开的一个或多个实施例,示例9根据示例2所述的方法,
所述对所述第二抑制信号的残余冲击噪声进行抑制,得到经过抑制的键盘声信号,包括:
根据所述第二抑制信号的时域幅度和人声区的能量计算对应的残余冲击阈值,并根据所述残余冲击阈值和人声区的能量计算残余冲击抑制因子;
将所述第二抑制信号的频谱分量与所述残余冲击抑制因子相乘,得到所述输出信号。
根据本公开的一个或多个实施例,示例10根据示例1所述的方法,
所述对采集到的键盘声信号进行人声区检测,包括:
通过语音活动检测VAD算法确定所述键盘声信号的初始人声区和初始非人声区,
按照设定帧长度划分目标帧组,并基于所述初始人声区和初始非人声区计算所述目标帧组的平滑值;
将平滑值大于或等于设定阈值的目标帧组判定为人声区。
根据本公开的一个或多个实施例,示例11根据示例1-10任一所述的方法,所述键盘声抑制触发条件,包括:
检测到键盘敲击事件且采集到键盘声信号。
根据本公开的一个或多个实施例,示例12根据示例1-10任一所述的方法,所述输出经过抑制的键盘声信号,包括:
在所述经过抑制的键盘声信号的基础上叠加舒适噪声,并输出叠加舒适噪声后的键盘声信号。
根据本公开的一个或多个实施例,示例13提供了一种键盘声处理装置,包括:
检测模块,用于响应于键盘声抑制触发条件,对采集到的键盘声信号进行人声区检测;
抑制模块,用于若所述键盘声信号包含非人声信号,则对所述键盘声信号中符合非人声信号的频谱特征的噪声进行抑制;
输出模块,用于输出经过抑制的键盘声信号。
根据本公开的一个或多个实施例,示例14提供了一种终端设备,包括:
一个或多个处理装置;
存储装置,用于存储一个或多个程序;
当所述一个或多个程序被所述一个或多个处理装置执行,使得所述一个或多个处理装置实现如示例1-12中任一所述的方法。
根据本公开的一个或多个实施例,示例15提供了一种计算机可读介质,其上存储有计算机程序,该程序被处理装置执行时实现如示例1-12中任一所述的方法。
以上描述仅为本公开的较佳实施例以及对所运用技术原理的说明。本领域技术人员应当理解,本公开中所涉及的公开范围,并不限于上述技术特征的特定组合而成的技术方案,同时也应涵盖在不脱离上述公开构思的情况下,由上述技术特征或其等同特征进行任意组合而形成的其它技术方案。例如上述特征与本公开中公开的(但不限于)具有类似功能的技术特征进行互相替换而形成的技术方案。
Claims (14)
1.一种键盘声处理方法,其特征在于,包括:
响应于键盘声抑制触发条件,对采集到的键盘声信号进行人声区检测;
若所述键盘声信号包含非人声信号,则对所述键盘声信号中符合非人声信号的频谱特征的噪声进行抑制;
输出经过抑制的键盘声信号;
所述对所述键盘声信号中符合非人声信号的频谱特征的噪声进行抑制,包括:
检测所述键盘声信号的瞬时冲击程度,并根据所述瞬时冲击程度对所述键盘声信号的瞬时噪声进行抑制,得到第一抑制信号;
对所述第一抑制信号的低频区域噪声进行抑制,得到第二抑制信号;
对所述第二抑制信号的残余冲击噪声进行抑制,得到经过抑制的键盘声信号。
2.根据权利要求1所述的方法,其特征在于,所述根据所述瞬时冲击程度对所述键盘声信号的瞬时噪声进行抑制,包括:
若所述键盘声信号满足时域跳变条件,则根据所述瞬时冲击程度对所述键盘声信号的瞬时噪声进行抑制。
3.根据权利要求1所述的方法,其特征在于,所述根据所述瞬时冲击程度对所述键盘声信号的瞬时噪声进行抑制,包括:
根据所述瞬时冲击程度计算所述键盘声信号的目标帧的瞬时冲击程度值;
基于所述瞬时冲击程度值对所述目标帧进行瞬时噪声抑制。
4.根据权利要求3所述的方法,其特征在于,所述根据所述瞬时冲击程度计算所述键盘声信号的目标帧的瞬时冲击程度值,包括:
对所述目标帧进行小波包分解;
计算分解后的每个叶子节点的一阶跳变统计量和二阶跳变统计量;
根据各所述一阶跳变统计量和二阶跳变统计量计算平均跳变统计量;
将所述平均跳变统计量转换为所述目标帧的瞬时冲击程度值,所述瞬时冲击程度值的取值范围为[0,1]。
5.根据权利要求3所述的方法,其特征在于,所述基于所述瞬时冲击程度值对所述目标帧进行瞬时噪声抑制,包括:
若所述目标帧的频谱分量的幅值大于所述目标帧的平滑谱幅度均值,则根据所述瞬时冲击程度值调整所述目标帧的频谱分量;
将调整后的频谱分量与平滑增量的和作为所述第一抑制信号的频谱分量,所述平滑增量为所述瞬时冲击程度值与所述平滑谱幅度均值的乘积。
6.根据权利要求5所述的方法,其特征在于,在得到第一抑制信号之后,还包括:
根据所述第一抑制信号的频谱分量更新所述目标帧的下一帧的平滑谱幅度均值。
7.根据权利要求1所述的方法,其特征在于,所述对所述第一抑制信号的低频区域噪声进行抑制,得到第二抑制信号,包括:
根据所述第一抑制信号的低频区域噪声强度计算低频抑制因子;
将所述第一抑制信号的频谱分量与所述低频抑制因子相乘,得到所述第二抑制信号。
8.根据权利要求1所述的方法,其特征在于,所述对所述第二抑制信号的残余冲击噪声进行抑制,得到经过抑制的键盘声信号,包括:
根据所述第二抑制信号的时域幅度计算对应的残余冲击阈值,并根据所述残余冲击阈值和人声区的能量计算残余冲击抑制因子;
将所述第二抑制信号的频谱分量与所述残余冲击抑制因子相乘,得到经过分级抑制后的键盘声信号。
9.根据权利要求1所述的方法,其特征在于,所述对采集到的键盘声信号进行人声区检测,包括:
通过语音活动检测VAD算法确定所述键盘声信号的初始人声区和初始非人声区;
按照设定帧长度划分目标帧组,并基于所述初始人声区和初始非人声区计算所述目标帧组的平滑值;
将平滑值大于或等于设定阈值的目标帧组判定为人声区。
10.根据权利要求1-9任一项所述的方法,其特征在于,所述键盘声抑制触发条件,包括:
检测到键盘敲击事件且采集到键盘声信号。
11.根据权利要求1-9任一项所述的方法,其特征在于,所述输出经过抑制的键盘声信号,包括:
在所述经过抑制的键盘声信号的基础上叠加舒适噪声,并输出叠加舒适噪声后的键盘声信号。
12.一种键盘声处理装置,其特征在于,包括:
检测模块,用于响应于键盘声抑制触发条件,对采集到的键盘声信号进行人声区检测;
抑制模块,用于若所述键盘声信号包含非人声信号,则对所述键盘声信号中符合非人声信号的频谱特征的噪声进行抑制;
输出模块,用于输出经过抑制的键盘声信号;
所述抑制模块包括:
瞬时噪声抑制模块,用于检测所述键盘声信号的瞬时冲击程度,并根据所述瞬时冲击程度对所述键盘声信号的瞬时噪声进行抑制,得到第一抑制信号;
低频噪声抑制模块,用于对所述第一抑制信号的低频区域噪声进行抑制,得到第二抑制信号;
残余冲击抑制模块,用于对所述第二抑制信号的残余冲击噪声进行抑制,得到经过抑制的键盘声信号。
13.一种终端设备,其特征在于,包括:
一个或多个处理器;
存储装置,用于存储一个或多个程序;
当所述一个或多个程序被所述一个或多个处理器执行,使得所述一个或多个处理器实现如权利要求1-11中任一所述的键盘声处理方法。
14.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,该程序被处理器执行时实现如权利要求1-11中任一所述的键盘声处理方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010175888.8A CN111370033B (zh) | 2020-03-13 | 2020-03-13 | 键盘声处理方法、装置、终端设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010175888.8A CN111370033B (zh) | 2020-03-13 | 2020-03-13 | 键盘声处理方法、装置、终端设备及存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111370033A CN111370033A (zh) | 2020-07-03 |
CN111370033B true CN111370033B (zh) | 2023-09-22 |
Family
ID=71206728
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010175888.8A Active CN111370033B (zh) | 2020-03-13 | 2020-03-13 | 键盘声处理方法、装置、终端设备及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111370033B (zh) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112951259B (zh) * | 2021-03-01 | 2024-07-16 | 杭州网易云音乐科技有限公司 | 音频降噪方法、装置、电子设备及计算机可读存储介质 |
US11875811B2 (en) * | 2021-12-09 | 2024-01-16 | Lenovo (United States) Inc. | Input device activation noise suppression |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1201547A (zh) * | 1995-09-14 | 1998-12-09 | 艾利森公司 | 自适应滤波音频信号以增强噪声环境条件下语音清晰度的系统 |
CN103971698A (zh) * | 2013-01-25 | 2014-08-06 | 北京千橡网景科技发展有限公司 | 用于语音实时降噪的方法和设备 |
CN105190751A (zh) * | 2013-02-28 | 2015-12-23 | 谷歌公司 | 键盘输入检测和抑制 |
CN105513605A (zh) * | 2015-12-01 | 2016-04-20 | 南京师范大学 | 手机麦克风的语音增强系统和语音增强方法 |
CN109215676A (zh) * | 2017-07-07 | 2019-01-15 | 骅讯电子企业股份有限公司 | 具有噪音消除的语音装置及双麦克风语音系统 |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8213635B2 (en) * | 2008-12-05 | 2012-07-03 | Microsoft Corporation | Keystroke sound suppression |
US10504501B2 (en) * | 2016-02-02 | 2019-12-10 | Dolby Laboratories Licensing Corporation | Adaptive suppression for removing nuisance audio |
-
2020
- 2020-03-13 CN CN202010175888.8A patent/CN111370033B/zh active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1201547A (zh) * | 1995-09-14 | 1998-12-09 | 艾利森公司 | 自适应滤波音频信号以增强噪声环境条件下语音清晰度的系统 |
CN103971698A (zh) * | 2013-01-25 | 2014-08-06 | 北京千橡网景科技发展有限公司 | 用于语音实时降噪的方法和设备 |
CN105190751A (zh) * | 2013-02-28 | 2015-12-23 | 谷歌公司 | 键盘输入检测和抑制 |
CN105513605A (zh) * | 2015-12-01 | 2016-04-20 | 南京师范大学 | 手机麦克风的语音增强系统和语音增强方法 |
CN109215676A (zh) * | 2017-07-07 | 2019-01-15 | 骅讯电子企业股份有限公司 | 具有噪音消除的语音装置及双麦克风语音系统 |
Also Published As
Publication number | Publication date |
---|---|
CN111370033A (zh) | 2020-07-03 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111341336B (zh) | 一种回声消除方法、装置、终端设备及介质 | |
US9721580B2 (en) | Situation dependent transient suppression | |
EP2405634B1 (en) | Method of indicating presence of transient noise in a call and apparatus thereof | |
CN105118522B (zh) | 噪声检测方法及装置 | |
CN109644192B (zh) | 具有语音检测周期持续时间补偿的音频传送方法和设备 | |
US20100246804A1 (en) | Mitigation of echo in voice communication using echo detection and adaptive non-linear processor | |
CN111370033B (zh) | 键盘声处理方法、装置、终端设备及存储介质 | |
US10540983B2 (en) | Detecting and reducing feedback | |
US10504538B2 (en) | Noise reduction by application of two thresholds in each frequency band in audio signals | |
CN114333912B (zh) | 语音激活检测方法、装置、电子设备和存储介质 | |
EP3796629A1 (en) | Double talk detection method, double talk detection device and echo cancellation system | |
WO2020252629A1 (zh) | 残余回声检测方法、残余回声检测装置、语音处理芯片及电子设备 | |
CN113270107A (zh) | 音频信号中噪声响度的获取方法、装置和电子设备 | |
CN112289336A (zh) | 音频信号处理方法和装置 | |
TW201637003A (zh) | 音訊處理系統 | |
CN113113038B (zh) | 回声消除方法、装置及电子设备 | |
CN108605191B (zh) | 异音检测方法和装置 | |
JP2005258158A (ja) | ノイズ除去装置 | |
CN110992975B (zh) | 一种语音信号处理方法、装置及终端 | |
CN112969130A (zh) | 音频信号处理方法、装置和电子设备 | |
US10388298B1 (en) | Methods for detecting double talk | |
CN110827845B (zh) | 录音方法、装置、设备及存储介质 | |
CN114743571A (zh) | 一种音频处理方法、装置、存储介质及电子设备 | |
CN115273880A (zh) | 语音降噪方法、模型训练方法、装置、设备、介质及产品 | |
WO2023040322A1 (zh) | 回声消除方法、终端设备及存储介质 |
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 |