一种音频修复方法、设备及可读存储介质与流程

文档序号:18457957发布日期:2019-08-17 01:46阅读:211来源:国知局
一种音频修复方法、设备及可读存储介质与流程

本申请涉及信号处理领域,尤其涉及一种音频修复方法、设备及可读存储介质。



背景技术:

由于干扰信号的影响,音频中时常会产生出一种听感上为“咔哒”声的噪声,这种噪声实际上是一种存在于音频中的短时高能量脉冲,有着能量大和持续时间小的特点。

现目前针对音频中的这种表现为高能量短时脉冲的噪声,还没有比较好的检测以及修复的方法。



技术实现要素:

本申请实施例提供一种音频修复方法,可以检测并修复音频中表现为短时高能量脉冲的噪声点。

第一方面,本申请实施例提供了一种音频修复方法,该方法包括:

将多个音频帧依次输入到缓存模块中,所述缓存模块由多个处理单元顺序组成,位于所述多个处理单元的中心位置的处理单元为中心处理单元;

将所述中心处理单元中所包含的至少一个音频帧作为目标帧;

根据所述缓存模块中的多个音频帧的音频特征,检测所述目标帧中表现为短时高能量脉冲的噪声点;

修复所述目标帧,所述修复用于去除所述目标帧中的噪声点。

第二方面,本申请实施例提供了一种音频修复设备,该音频修复设备包括用于执行上述第一方面的音频修复方法的单元,该音频修复设备包括:

输入单元,用于将多个音频帧依次输入到缓存模块中,所述缓存模块由多个处理单元顺序组成,位于所述多个处理单元的中心位置的处理单元为中心处理单元;

获取单元,用于将所述中心处理单元中所包含的至少一个音频帧作为目标帧;

检测单元,用于根据所述缓存模块中的多个音频帧的音频特征,检测所述目标帧中表现为短时高能量脉冲的噪声点;

修复单元,用于修复所述目标帧,所述修复用于去除所述目标帧中的噪声点。

第三方面,本申请实施例提供了一种音频修复设备,包括处理器、通信接口、输入设备、输出设备和存储器,所述处理器、通信接口、输出设备、输出设备和存储器相互连接,其中,所述存储器用于存储计算机程序,所述计算机程序包括程序指令,所述处理器被配置用于调用所述程序指令,用以执行如第一方面所述的方法

第四方面,本申请实施例提供了一种计算机可读存储介质,其特征在于,所述计算机存储介质存储有计算机程序,所述计算机程序包括程序指令,所述程序指令被处理器执行,用以执行如第一方面所述的方法。

本申请将多个音频帧依次输入到缓存模块中,然后把缓存模块中的中心处理单元中的音频帧作为目标帧,并根据缓存模块中的多个音频帧的音频特征,来确定目标帧中的噪声点,最后修复该目标帧。可见,本申请至少包含以下几个发明点,首先本申请通过将多个音频帧连续的输入到缓存模块中,并依次对缓存模块中的中心处理单元中的音频帧进行处理,来毫不遗漏且准确的检测和修复到每个音频帧中的噪声点,其次本申请通过将目标帧的音频特征,与目标帧相邻的音频帧的音频特征进行比较,可以准确的检测出目标帧中的噪声点,最后本申请除了可以检测出上述噪声点,还可以去除上述噪声点。因此,本申请可以自动地对大量音频信号进行修复,提供了一种高效、准确以及快速的音频修复方法。

附图说明

为了更清楚地说明本申请实施例技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍。

图1是本申请实施例提供的一种音频修复方法的应用场景示意图;

图2是本申请实施例提供的一种音频修复方法的示意流程图;

图3是本申请另一实施例提供的一种音频修复方法的示意流程图;

图4是本申请实施例提供的一种将多个音频帧输入缓存模块的示意图;

图5是本申请实施例提供的一种缓存重定位和修复的示意图;

图6是本申请实施例提供的一种音频修复设备的示意性框图;

图7是本申请实施例提供的一种音频修复设备的结构性框图。

具体实施方式

下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。

本申请主要应用于音频修复设备,该音频修复设备可以是传统音频修复设备或者本申请第三实施例和第四实施例所描述的音频修复设备,本申请对此不做限制。当音频修复设备发送数据的时候,按照预设格式进行对数据的特性进行记录并传送,其中,数据的特性包括时间、地点、类型等。

音频信号因为受到噪声的干扰,而产生一种表现为短时高能量脉冲的噪声点,使得音频信号在播放的时候,产生一种听感上类似于“咔哒”的噪声。为了解决这个问题,本申请提出了一种用于检测并修复音频信号中噪声点的方法。

为了能够更好地理解本发明实施例,下面将结合图1,对应用本发明实施例的方法进行介绍,本发明实施例可以应用于音频修复设备对音频信号进行检测和修复的场景中。

请参见图1,音频修复设备(例如图中的手机)通过麦克风录音获得音频信号,或者从互联网接收到音频信号,然后对音频信号中表现为短时高能量脉冲的噪声点进行检测和修复。如图1所示,虚线圈出了未经处理的音频信号中的噪声点,该噪声点表现为短时高能量脉冲,在该音频信号经过音频修复设备的处理之后,虚线所圈出的噪声点被很好的修复了。具体的,本音频修复方法可以大致分为五个阶段来执行,包括信号输入,缓存重定位,噪声点检测,噪声点修复,以及信号输出。接下来本申请对该五个阶段依次进行介绍。

本申请首先对获得的任意格式的音频信号进行分帧,得到多个音频帧,然后将该多个音频帧依次且连续的输入到缓存模块中。缓存模块如图4所示,该缓存模块由5个处理单元顺序连接而成,位于首位的处理单元为头部处理单元,而位于该5个处理单元的中心位置的信号处理单位为中心处理单元,并且每个处理单元中可容纳两个音频帧,音频帧由缓存模块的头部处理单元输入,按照处理单元连接的顺序,传输到其他处理单元中。一般来说,缓存单元可以包含三个及三个以上任意奇数个的处理单元,而且缓存模块中的处理单元的长度可以被设置为任意长度值,一般来说,可以设置为至少两个音频帧以上的长度。例如当处理单元的长度为两个音频帧的长度的时候,在对音频帧处理的过程中相邻音频帧之间有50%的信号重叠,从而避免了截断效应,使得信号处理的结果更加平滑。

在音频帧输入到缓存模块,并每个处理单元都充满了音频帧之后,对缓存模块中的多个音频帧进行缓存重定位,即以音频帧中为噪声点的可能性最大的点为中心,重新获取需要进行检测的音频信号段。具体的,如图5所示,将中心处理单元中的音频帧作为目标帧,确定目标帧的峰值点(幅度值的绝对值为最大值的点),并基于该峰值点在缓存模块中获取长度为4个处理单元的音频信号段,最后将该音频信号段重新划分为多段区间,该多个区间包括第一处理区间、第二处理区间,以及位于第一处理区间和第二处理区间之间的中间处理区间,中间处理区间包括第一子区间、第二子区间,以及位于第一子区间和第二子区间的之间的中心子区间。需要说明的是,由于本申请用于修复的噪声点表现为短时高能量脉冲,于是噪声点最可能为音频帧中的峰值点,且音频信号分帧之后得到帧信号的长度已经很短了,一个音频帧中存在两个噪声点的可能性极小,因此本申请只需要检测是否为噪声点即可。

提取上述音频信号段中的多段区间的音频特征,包括括峰值、信号能量、平均功率、局部峰值占比、自相关系数的滚降速率、声强和峰值持续时间中的至少一种。然后根据该多段区间的音频特征,判断目标帧的峰值点是否为噪声点。

在确定出目标帧中的峰值点为噪声点之后,对该目标帧进行修复。修复目标帧主要包括三个步骤,第一步是去除噪声点,利用线性预测或者相邻采样点叠加的方法来估计目标帧在受到噪声干扰之前的正常值(即正常幅度值),然后将噪声点的幅度值替换为上述正常值,第二步是采取时域平滑的方法,将替换了幅度值的目标帧在时域上变得平滑,第三步是采取了频率滤波的方法,将替换了幅度值的目标帧在频域上变得平滑。经过这三个步骤之后,目标帧的修复完成。

在完成对目标帧的修复之后,以预设格式输出修复之后的目标帧,该预设格式为音频格式wav、音频格式mp3、音频格式flac中的任意一种。

可见,本申请通过将音频信号分帧得到的多个很短的音频帧之后输入到缓存模块中,然后将缓存模块的中心处理单元中的音频帧作为目标帧,并对该目标帧中进行处理,从而本申请可以毫无遗留的处理到每个音频帧,然后以中心处理单元中的音频帧中的峰值点为中心,在缓存模块中获取预设长度的音频信号段,并对该音频信号段进行划分得到多段区间。再然后,提取该多段区间中的音频特征,然后根据该多段区间的音频特征,判断中心处理单元的音频帧的峰值点是否为噪声点,若是则通过幅度值替换,时域平滑和频域平滑来修复目标帧,修复完成后以任意格式输出该目标帧。于是,本申请最大的好处是,可以对音频信号中的噪声点进行高效的、毫无遗漏的以及准确的自动检测和修复,能适应于对海量音频的快速处理需求,省去了大量的人工成本和时间成本,具有很高的经济价值和技术优势。

需要说明的是,图1、图4和图5中所示内容为一种举例,并不构成对本发明实施例的限定,因为本申请不对缓存单元包含的处理单元的个数,处理单元的长度,缓存重定位中获取的音频信号段的长度,划分的多个区间的长度,音频信号的来源,音频修复设备等进行限定。例如缓存单元除了可以包含5个处理单元,还可以包含7个处理单元,音频信号段的长度可以是4个处理单元的长度,也可是6个处理单元的长度,对音频信号段划分得到多段区间中的第一子区间的长度可以是1/4个处理单元,也可以是1/2个处理单元的长度,音频信号除了可以是直接录音得到的,也可以是通过互联网接收等任意方式得到的,而且对音频信号进行处理的音频修复设备除了可以是手机,还可以是电脑,服务器等任意终端设备。

参见图2,是本申请实施例提供一种音频修复方法的示意流程图,如图2所示音频修复方法可包括:

201:将多个音频帧依次输入到缓存模块中,缓存模块由多个处理单元顺序组成,位于该多个处理单元的中心位置的处理单元为中心处理单元。

在本申请实施例中,首先将多个音频帧依次且连续的输入到缓存模块中,该多个音频帧是将一个音频信号分帧之后得到的全部音频帧或者部分音频帧,于是该多个音频帧之间是连续的,并按照在分帧之前在音频信号中的顺序来连续输入到缓存模块的头部处理单元,然后顺序传输到与该头部处理单元相连接的处理单元,需要说明的是,缓存模块包含多个处理单元,且该多个处理单元是顺序连接的,位于首位的处理单元为头部处理单元,位于中心位置的处理单元为中心处理单元。其中,上述音频信号和上述多个音频帧都是时域信号。

需要说明的是,缓存模块中的处理单元的长度可以被设置为任意长度值,一般来说,可以设置为至少两个音频帧以上的长度。例如当处理单元的长度为两个音频帧的长度的时候,在对音频帧处理的过程中相邻音频帧之间有50%的信号重叠,从而避免了截断效应,使得信号处理的结果更加平滑。

举例来说,如图4所示的是一种缓存模块的结构示意图,以缓存模块包含5块处理单元为例,位于中间位置的处理单元为中心处理单元,音频帧输入的处理单元为头部处理单元,每块处理单元包含两个音频帧,整个缓存模块共包括10个音频帧。如图4所示,单个处理单元为一块包含虚线的黑色加粗实线矩形框,框中的两个数字分别代表着对应输入的音频帧的编号。在初始状态,缓存模块各个处理单元都没有音频帧输入,因此缓存模块中的信号都为0,当缓存模块的右端处的头部处理单元输入第1个音频帧之后,头部处理单元包括了0和第1个音频帧;当连续输入到第10帧信号时,缓存中心的处理单元是包括第5帧和第6帧的音频帧。

可见,音频信号分帧之后,后续步骤就可以以音频帧为单位对音频信号进行处理,这样做的好处是可以满足音频实时处理的需要,能一边对音频信号进行修复,一边输出音频信号已经修复好了的音频帧。

在另一种可实现的实施方式中,在上述将多个音频帧依次输入到缓存模块中之前,获取待修复的音频信号,然后对该音频信号进行分帧得到上述输入到缓存模块中多个音频帧。其中,音频信号包括录音信号和电子音合成信号。

本实施方式中,在将上述多个音频帧输入到缓存模块之前,先获取需要修复的音频信号,然后对该音频信号进行分帧之后才得到上述多个音频帧,该音频信号可以是本音频修复设备录制的音频信号,也可以是通过互联网从其他终端设备处获取的音频信号,该音频信号包括录音信号和电子音合成信号。其中,录音信号包括本端的音频修复设备或者其他终端设备通过外设设备(例如麦克风)等录制的外界声音(例如电话录音),电子音合成信号为本端的音频修复设备或者其他终端设备通过音频合成软件合成的电子音(例如机器人唱歌)。

需要说明的是,上述音频信号的格式、大小、声道数不限,格式为音频格式wav、音频格式mp3、音频格式flac中的任意一种,声道为单声道、双声道和多声道中的任意一种。

202:将上述中心处理单元中所包含的至少一个音频帧作为目标帧。

在本申请实施例中,在上述缓存模块中每个处理单元都充满了音频帧之后,将缓存模块中的中心处理单元中包含的所有音频帧作为目标帧,其中,一个处理单元中可以包含至少一个音频帧。

可见,由于本申请实施例在将上述多个音频帧输入到缓存模块中之后,音频帧是由头部处理单元依次顺序输入到其他处理单元,于是当音频帧输入到中心处理单元之后,就被作为目标帧进行后续的噪声点检测和修复等处理,于是本申请实施例可以毫无遗漏地对每个音频帧进行处理,而每个音频帧是非常短的,一般音频帧的长度为20毫秒至50毫秒,即小于一个音素的长度,又包含足够多的振动周期,能满足信号处理的需求,音频帧的长度可以设置为20毫秒、25毫秒、30毫秒、32毫秒、40毫秒和50毫秒不等的长度,于是本申请通过以音频帧为单位来对音频信号进行处理,可以以几乎是地毯式搜索的方式来大大提高检测的效率。

203:根据上述缓存模块中的多个音频帧的音频特征,检测上述目标帧中表现为短时高能量脉冲的噪声点。

在本申请实施例中,提取上述缓存模块中的多个音频帧的音频特征,然后进行对比,然后根据对比情况判断目标帧中是否含有表现为短时高能量脉冲的噪声点。具体的,首先确定目标帧的峰值点,即幅度值为最大值的点,并以该峰值点为中心,在缓存模块中获取预设长度的音频信号段,然后将音频信号段划分为多段区间,最后分别提取该目标帧和该多段区间的音频特征,并根据目标帧和多段区间的音频特征在目标帧中确定噪声点。

需要说明的是,音频特征包括峰值、信号能量、平均功率、局部峰值占比、自相关系数的滚降速率、声强和峰值持续时间中的至少一种。其中。峰值指的是区间内最大的幅度值;信号能量指的是信号的幅度值的平方的积分;平均功率指的是信号在有限区间或者一个周期内的功率的平均值;局部峰值比指的是信号的峰值在所有各个信号的峰值之和的占比;自相关系数的滚降速率指的是信号的自相关系数的下降的速率;声强指的是单位时间内通过垂直于声波传播方向的单位面积的能量,与声波振幅的平方成正比;峰值持续时间指的是信号的峰值的能量大于等于预设值所维持的时间。

还需要说明的是,多段区间包含第一处理区间、第二处理区间,以及位于第一处理区间和第二处理区间之间的中间处理区间,中间处理区间包括第一子区间、第二子区间,以及位于所述第一子区间和所述第二子区间的之间的中心子区间。

举例来说,缓存重定位如图5所示,假设缓存模块包含5个处理单元,确定中心处理单元中的目标帧中的峰值点为a点,以该峰值点为中心在缓存模块中获取预设长度为四个处理单元的音频信号段,然后对该音频信号段进行划分,得到多段区间,包含第一处理区间、中间处理区间和第二处理区间,其中,第一处理区间和第二处理区间的长度为一个音频帧,中间处理区间的长度为两个音频帧,而中间处理包含第一子区间、中心子区间和第二子区间,第一子区间和第二子区间的长度为1/4个处理单元长度,中心子区间的长度为3/2个处理单元长度。在划分得到该多段区间之后,提取该多段区间和目标帧的音频特征,并根据该多段区间和目标帧的音频特征来确定目标帧中的峰值点是否为噪声点,判定的标准如下:

第一个判断,判断目标帧的峰值点的幅度值是否同时大于中心子区间的峰值点的幅度值以及中间处理区间的峰值点的幅度值,该判断用于判断目标帧的峰值点的幅度值是否在相邻信号中唯一且最大;

第二个判断,判断目标帧的峰值点的幅度值是否同时大于第一子区间的峰值点的幅度值和第二子区间的峰值点的幅度值,且大于的部分超过第一阈值,该判断用于判断目标帧的峰值点的幅度值是否比相邻信号明显凸起;

第三个判断,判断中间处理区间的信号能量是否大于第二阈值,该判断用于判断目标帧的峰值点的能量是否过大;

第四个判断,判断中间处理区间的平均功率与音频信号段的平均功率的比值是否大于第三阈值,判断用于判断目标帧的峰值点所占信噪比是否过大;

第五个判断,判断目标帧的峰值点的幅度值与音频信号段的峰值点的总幅度值的比值是否大于第四阈值,该判断用于判断目标帧的峰值点的幅度值在音频信号段的各个区间的峰值点的幅度值之和的占比是否过大;

第六个判断,判断音频信号段的自相关系数的滚降速率是否大于第四阈值,该判断用于判断目标帧的峰值点是否表现为一段尖锐脉冲信号,反之则是一段连续脉冲信号;

第七个判断,判断中心处理区间的声强是否大于第一处理区间的声强和第二处理区间的声强,该判断用于判断目标帧的峰值点是否表现为高能量脉冲;

第八个判断,判断目标帧的峰值持续时间是否小于第五阈值,该判断用于判断目标帧的峰值点是否表现为短时脉冲;

需要注意的是,本申请实施例通过串行进行上述八个判断来判断目标帧中的峰值点是否为噪声点,若上述八个判断的结果都是肯定结果,则确定目标帧的峰值点为噪声点,但只要上述任意一个判断的结果是否定结果的话,目标帧的峰值点就不为噪声点。

可见,本申请实施例主要是判断目标帧的峰值点是否为噪声点,因为前述已经证明了音频帧的长度已经很短,因此即使目标帧包含多个音频帧,在目标帧中包含两个及以上的噪声点的可能性极小,于是结合需要检测的噪声点的短时高能量的特性,本申请只需要确定目标帧中的峰值点是否为噪声点,于是本申请既可以毫无遗漏,又可以非常快速的定位到噪声点,从而提高了检测的效率和精确度。

204:修复上述目标帧,该修复用于去除目标帧中的噪声点。

本申请实施例中,在确定上述目标帧的峰值点为噪声点之后,对上述目标帧进行修复,修复的过程包括去除噪声点,以及将去除了噪声点的目标帧在时域上和频域上都变得平滑。具体的,在去除噪声点的时候,先采用线性预测算法及相邻采样点叠加算法中的任意一种估计算法,来估计目标帧在未受到噪声干扰之前,该目标帧的噪声点处的正常值,并将该噪声点的幅度值替换为估计得到的正常值,然后对目标帧进行时域平滑,使得目标帧在时域上连续,以及再对目标帧进行频率滤波,使得目标帧在频域上连续。

需要说明的是,上述时域平滑指的是在目标帧去替换了幅度值的噪声点的两侧的端点进行平滑,采用的方法是均值滤波,即利用两侧的端点分别临近的均值代替该两个端点的值,通过这个方法可以使得峰值替换后的目标帧随着时间的变化更加平滑。

还需要说明的是,上述频域滤波指的是使得目标帧在频域上的变得平滑。由于目标帧在噪声点的能量比相邻的音频帧的能量偏大,甚至会出现破音的情况,特别是在较高频段更加明显,并且经过上面峰值替换和时域平滑的步骤之后,可能使得目标帧在高频段(如16khz以上)更加突兀,因此需要在对目标帧进行时域平滑之后再进行频域平滑。本申请实施例中采用的频域平滑的方法是采用零相移数字滤波器对目标帧进行低通滤波,并且低通滤波器的截止频率等于在分帧之前的音频信号的平均频谱高度。这样做的优势在于,相比于分帧之前的音频信号能量很弱、或者无能量的高频段区间,噪声点修复之后的目标帧不会增加新的修复痕迹,即处理前后录音信号在频域上有很好的一致性。

在另一种可实现的实施方式中,虽然上述提到的线性预测算法和相邻采样点叠加算法中的任意一种算法都可以用于估算噪声点的正常值,但是两种方法各有优点,前者的特点是将信号过去的采样点基于最小均方误差准则获得预测值,计算量大、处理效果平滑,适用于离线非实时系统的应用场景;后者的特点是对相邻采样点进行幂指数下降获得预测值,计算量小、处理效果适中,适用于在线实时系统的应用场景。基于两种方法不同的优点,本申请实施例的设备可以根据应用场景来在该两种方法中进行选择,在终端实时系统里,由于对实时性要求较高,可以选择基于相邻采样点叠加的方法进行峰值替换;在本地离线系统里,由于对实时性无过高要求,保证处理性能,可以选择基于线性预测的方法进行峰值替换。

在另一种可实现的实施方式中,上述目标帧被修复之后,以预设格式输出修复之后的目标帧,预设格式为音频格式wav、音频格式mp3、音频格式flac中的任意一种。用户可以对该预设格式进行设置,本申请不对该预设格式进行限定。

本申请实施例将多个音频帧依次输入到缓存模块中,然后把缓存模块中的中心处理单元中的音频帧作为目标帧,并根据缓存模块中的多个音频帧的音频特征,来确定目标帧中的噪声点,最后修复该目标帧。可见,本申请实施例至少包含以下几个发明点,首先本申请实施例通过将多个音频帧连续的输入到缓存模块中,并依次对缓存模块中的中心处理单元中的音频帧进行处理,来毫不遗漏且准确的检测和修复到每个音频帧中的噪声点,其次本申请实施例通过将目标帧的音频特征,与目标帧相邻的音频帧的音频特征进行比较,可以准确的检测出目标帧中的噪声点,最后本申请实施例除了可以检测出上述噪声点,还可以去除上述噪声点。因此,本申请实施例可以自动地对大量音频信号进行修复,提供了一种高效、准确以及快速的音频修复方法。

参见图3,是本申请实施例提供另一种音频修复方法的示意流程图,如图3所示音频修复方法可包括:

301:获取待修复的音频信号,该音频信号包括录音信号。

本申请实施例中,获取待修复的音频信号。其中,音频信号包括录音信号和电子音合成信号。该音频信号可以是本音频修复设备录制的音频信号,也可以是通过互联网从其他终端设备处获取的音频信号,该音频信号包括录音信号和电子音合成信号。其中,录音信号包括本端的音频修复设备或者其他终端设备通过外设设备(例如麦克风)等录制的外界声音(例如电话录音),电子音合成信号为本端的音频修复设备或者其他终端设备通过音频合成软件合成的电子音(例如机器人唱歌)。

需要说明的是,上述音频信号的格式、大小、声道数不限,格式为音频格式wav、音频格式mp3、音频格式flac中的任意一种,声道为单声道、双声道和多声道中的任意一种。

302:对上述音频信号进行分帧得到多个音频帧。

本实施方式中,在获取到需要修复的音频信号之后,对该音频信号进行分帧之后才得到上述多个音频帧,

303:将多个音频帧依次输入到缓存模块中,缓存模块由多个处理单元顺序组成,位于该多个处理单元的中心位置的处理单元为中心处理单元。

在本申请实施例中,首先将多个音频帧依次且连续的输入到缓存模块中,该多个音频帧是将一个音频信号分帧之后得到的全部音频帧或者部分音频帧,于是该多个音频帧之间是连续的,并按照在分帧之前在音频信号中的顺序来连续输入到缓存模块的头部处理单元,然后顺序传输到与该头部处理单元相连接的处理单元,需要说明的是,缓存模块包含多个处理单元,且该多个处理单元是顺序连接的,位于首位的处理单元为头部处理单元,位于中心位置的处理单元为中心处理单元。其中,上述音频信号和上述多个音频帧都是时域信号。

需要说明的是,缓存模块中的处理单元的长度可以被设置为任意长度值,一般来说,可以设置为至少两个音频帧以上的长度。例如当处理单元的长度为两个音频帧的长度的时候,在对音频帧处理的过程中相邻音频帧之间有50%的信号重叠,从而避免了截断效应,使得信号处理的结果更加平滑。

举例来说,如图4所示的是一种缓存模块的结构示意图,以缓存模块包含5块处理单元为例,位于中间位置的处理单元为中心处理单元,音频帧输入的处理单元为头部处理单元,每块处理单元包含两个音频帧,整个缓存模块共包括10个音频帧。如图4所示,单个处理单元为一块包含虚线的黑色加粗实线矩形框,框中的两个数字分别代表着对应输入的音频帧的编号。在初始状态,缓存模块各个处理单元都没有音频帧输入,因此缓存模块中的信号都为0,当缓存模块的右端处的头部处理单元输入第1个音频帧之后,头部处理单元包括了0和第1个音频帧;当连续输入到第10帧信号时,缓存中心的处理单元是包括第5帧和第6帧的音频帧。

可见,音频信号分帧之后,后续步骤就可以以音频帧为单位对音频信号进行处理,这样做的好处是可以满足音频实时处理的需要,能一边对音频信号进行修复,一边输出音频信号已经修复好了的音频帧。

304:将上述中心处理单元中所包含的至少一个音频帧作为目标帧。

在本申请实施例中,在上述缓存模块中每个处理单元都充满了音频帧之后,将缓存模块中的中心处理单元中包含的所有音频帧作为目标帧,其中,一个处理单元中可以包含至少一个音频帧。

可见,由于本申请实施例在将上述多个音频帧输入到缓存模块中之后,音频帧是由头部处理单元依次顺序输入到其他处理单元,于是当音频帧输入到中心处理单元之后,就被作为目标帧进行后续的噪声点检测和修复等处理,于是本申请实施例可以毫无遗漏地对每个音频帧进行处理,而每个音频帧是非常短的,一般音频帧的长度为20毫秒至50毫秒,即小于一个音素的长度,又包含足够多的振动周期,能满足信号处理的需求,音频帧的长度可以设置为20毫秒、25毫秒、30毫秒、32毫秒、40毫秒和50毫秒不等的长度,于是本申请通过以音频帧为单位来对音频信号进行处理,可以以几乎是地毯式搜索的方式来大大提高检测的效率。

305:确定上述目标帧的峰值点。

在本申请实施例中,确定目标帧的峰值点,即幅度值为最大值的点。

举例来说,如图5所示的缓存模块包含5个处理单元,确定中心处理单元中的目标帧中的峰值点为a点。

306:以上述目标帧的峰值点为中心,在缓存模块中获取预设长度的音频信号段。

在本申请实施例中,以目标帧的峰值点为中心,在缓存模块中获取预设长度的音频信号段。该音频信号段可以是任意预设值。

举例来说,如图5所示,以目标帧的峰值点为中心在缓存模块中获取预设长度为四个处理单元的音频信号段。

307:将上述音频信号段划分为多段区间。

然后将音频信号段划分为多段区间,最后

多段区间包含第一处理区间、第二处理区间,以及位于第一处理区间和第二处理区间之间的中间处理区间,中间处理区间包括第一子区间、第二子区间,以及位于所述第一子区间和所述第二子区间的之间的中心子区间。

举例来说,如图5所示,在得到获取到预设长度为四个处理单元的音频信号段之后,对该音频信号段进行划分,得到多段区间,包含第一处理区间、中间处理区间和第二处理区间,其中,第一处理区间和第二处理区间的长度为一个音频帧,中间处理区间的长度为两个音频帧,而中间处理包含第一子区间、中心子区间和第二子区间,第一子区间和第二子区间的长度为1/4个处理单元长度,中心子区间的长度为3/2处理单元长度。

308:分别提取上述目标帧和上述多段区间的音频特征。

本申请实施例中,在将音频信号段重新划分为多段区间之后,分别提取目标帧和该多段区间的音频特征,音频特征包括峰值、信号能量、平均功率、局部峰值占比、自相关系数的滚降速率、声强和峰值持续时间中的至少一种。其中。峰值指的是区间内最大的幅度值;信号能量指的是信号的幅度值的平方的积分;平均功率指的是信号在有限区间或者一个周期内的功率的平均值;局部峰值比指的是信号的峰值在所有各个信号的峰值之和的占比;自相关系数的滚降速率指的是信号的自相关系数的下降的速率;声强指的是单位时间内通过垂直于声波传播方向的单位面积的能量,与声波振幅的平方成正比;峰值持续时间指的是信号的峰值的能量大于等于预设值所维持的时间。

309:根据上述目标帧和上述多段区间的音频特征在上述目标帧中确定噪声点。

在本申请实施例中,根据该多段区间和目标帧的音频特征来确定目标帧中的峰值点是否为噪声点,判定的标准如下:

第一个判断,判断目标帧的峰值点的幅度值是否同时大于中心子区间的峰值点的幅度值以及中间处理区间的峰值点的幅度值,该判断用于判断目标帧的峰值点的幅度值是否在相邻信号中唯一且最大;

第二个判断,判断目标帧的峰值点的幅度值是否同时大于第一子区间的峰值点的幅度值和第二子区间的峰值点的幅度值,且大于的部分超过第一阈值,该判断用于判断目标帧的峰值点的幅度值是否比相邻信号明显凸起;

第三个判断,判断中间处理区间的信号能量是否大于第二阈值,该判断用于判断目标帧的峰值点的能量是否过大;

第四个判断,判断中间处理区间的平均功率与音频信号段的平均功率的比值是否大于第三阈值,判断用于判断目标帧的峰值点所占信噪比是否过大;

第五个判断,判断目标帧的峰值点的幅度值与音频信号段的峰值点的总幅度值的比值是否大于第四阈值,该判断用于判断目标帧的峰值点的幅度值在音频信号段的各个区间的峰值点的幅度值之和的占比是否过大;

第六个判断,判断音频信号段的自相关系数的滚降速率是否大于第四阈值,该判断用于判断目标帧的峰值点是否表现为一段尖锐脉冲信号,反之则是一段连续脉冲信号;

第七个判断,判断中心处理区间的声强是否大于第一处理区间的声强和第二处理区间的声强,该判断用于判断目标帧的峰值点是否表现为高能量脉冲;

第八个判断,判断目标帧的峰值持续时间是否小于第五阈值,该判断用于判断目标帧的峰值点是否表现为短时脉冲;

需要注意的是,本申请实施例通过串行进行上述八个判断来判断目标帧中的峰值点是否为噪声点,若上述八个判断的结果都是肯定结果,则确定目标帧的峰值点为噪声点,但只要上述任意一个判断的结果是否定结果的话,目标帧的峰值点就不为噪声点。

可见,本申请实施例主要是判断目标帧的峰值点是否为噪声点,因为前述已经证明了音频帧的长度已经很短,因此即使目标帧包含多个音频帧,在目标帧中包含两个及以上的噪声点的可能性极小,于是结合需要检测的噪声点的短时高能量的特性,本申请只需要确定目标帧中的峰值点是否为噪声点,于是本申请既可以毫无遗漏,又可以非常快速的定位到噪声点,从而提高了检测的效率和精确度。

310:修复上述目标帧,该修复用于去除目标帧中的噪声点。

本申请实施例中,在确定上述目标帧的峰值点为噪声点之后,对上述目标帧进行修复,修复的过程包括去除噪声点,以及将去除了噪声点的目标帧在时域上和频域上都变得平滑。具体的,在去除噪声点的时候,先采用线性预测算法及相邻采样点叠加算法中的任意一种估计算法,来估计目标帧在未受到噪声干扰之前,该目标帧的噪声点处的正常值,并将该噪声点的幅度值替换为估计得到的正常值,然后对目标帧进行时域平滑,使得目标帧在时域上连续,以及再对目标帧进行频率滤波,使得目标帧在频域上连续。

需要说明的是,上述时域平滑指的是在目标帧去替换了幅度值的噪声点的两侧的端点进行平滑,采用的方法是均值滤波,即利用两侧的端点分别临近的均值代替该两个端点的值,通过这个方法可以使得峰值替换后的目标帧随着时间的变化更加平滑。

还需要说明的是,上述频域滤波指的是使得目标帧在频域上的变得平滑。由于目标帧在噪声点的能量比相邻的音频帧的能量偏大,甚至会出现破音的情况,特别是在较高频段更加明显,并且经过上面峰值替换和时域平滑的步骤之后,可能使得目标帧在高频段(如16khz以上)更加突兀,因此需要在对目标帧进行时域平滑之后再进行频域平滑。本申请实施例中采用的频域平滑的方法是采用零相移数字滤波器对目标帧进行低通滤波,并且低通滤波器的截止频率等于在分帧之前的音频信号的平均频谱高度。这样做的优势在于,相比于分帧之前的音频信号能量很弱、或者无能量的高频段区间,噪声点修复之后的目标帧不会增加新的修复痕迹,即处理前后录音信号在频域上有很好的一致性。

在另一种可实现的实施方式中,虽然上述提到的线性预测算法和相邻采样点叠加算法中的任意一种算法都可以用于估算噪声点的正常值,但是两种方法各有优点,前者的特点是将信号过去的采样点基于最小均方误差准则获得预测值,计算量大、处理效果平滑,适用于离线非实时系统的应用场景;后者的特点是对相邻采样点进行幂指数下降获得预测值,计算量小、处理效果适中,适用于在线实时系统的应用场景。基于两种方法不同的优点,本申请实施例的设备可以根据应用场景来在该两种方法中进行选择,在终端实时系统里,由于对实时性要求较高,可以选择基于相邻采样点叠加的方法进行峰值替换;在本地离线系统里,由于对实时性无过高要求,保证处理性能,可以选择基于线性预测的方法进行峰值替换。

311:以预设格式输出修复之后的目标帧。

本申请实施例中,上述目标帧被修复之后,以预设格式输出修复之后的目标帧,预设格式为音频格式wav、音频格式mp3、音频格式flac中的任意一种。用户可以对该预设格式进行设置,本申请不对该预设格式进行限定。

相比于上一申请实施例,本申请实施例更加详细的描述了本音频修复方法的过程,先获取音频信号,将音频信号分帧之后得到的多个音频帧输入到缓存模块中,然后将缓存模块中的中心处理单元中的音频帧作为目标帧,并确定目标帧中的峰值点,并以该峰值点为中心,在缓存单元中获取预设长度的音频信号段,再然后对该音频信号段重新进行划分,得到多段区间,根据缓存模块中其他音频帧的音频特征,来确定目标帧中的噪声点,最后修复并输出该目标帧。因此,本申请实施例可以自动地对大量音频信号进行修复,并提供了一种高效、准确以及快速的音频修复方法。

需要说明的是,上文对各个实施例的描述倾向于强调各个实施例之间的不同之处,其相同或相似之处可以互相参考,为了简洁,本文不再赘述。

本申请实施例还提供一种音频修复设备,该音频修复设备用于执行前述任一项的音频修复方法的单元。具体地,参见图6,是本申请实施例提供的一种音频修复设备的示意框图。本实施例的音频修复设备包括:输入单元601、获取单元602、检测单元603以及修复单元604。具体的:

输入单元601,用于将多个音频帧依次输入到缓存模块中,所述缓存模块由多个处理单元顺序组成,位于所述多个处理单元的中心位置的处理单元为中心处理单元;

获取单元602,用于将所述中心处理单元中所包含的至少一个音频帧作为目标帧;

检测单元603,用于根据所述缓存模块中的多个音频帧的音频特征,检测所述目标帧中表现为短时高能量脉冲的噪声点;

修复单元604,用于修复所述目标帧,所述修复用于去除所述目标帧中的噪声点。

在另一种可实现的实施方式中,所述音频修复设备还包括确定单元605,用于确定所述目标帧的峰值点;所述获取单元602,还用于以所述峰值点为中心,在所述缓存模块中获取预设长度的音频信号段;所述音频修复设备还包括分段单元606,用于将所述音频信号段划分为多段区间,包括第一处理区间、第二处理区间,以及位于所述第一处理区间和所述第二处理区间之间的中间处理区间,所述中间处理区间包括第一子区间、第二子区间,以及位于所述第一子区间和所述第二子区间的之间的中心子区间;所述音频修复设备还包括提取单元607,用于分别提取所述目标帧和所述多段区间的音频特征,所述音频特征包括峰值、信号能量、平均功率、局部峰值占比、自相关系数的滚降速率、声强和峰值持续时间中的至少一种;所述确定单元605,还用于根据所述目标帧和所述多段区间的音频特征在所述目标帧中确定所述噪声点。

具体的,上述确定单元605,具体用于判断所述目标帧的峰值点的幅度值是否同时大于所述中心子区间的峰值点的幅度值以及所述中间处理区间的峰值点的幅度值;且,判断所述目标帧的峰值点的幅度值是否同时大于所述第一子区间的峰值点的幅度值和所述第二子区间的峰值点的幅度值,且大于的部分超过第一阈值;且,判断所述中间处理区间的信号能量是否大于第二阈值;且,判断所述中间处理区间的平均功率与所述音频信号段的平均功率的比值是否大于第三阈值;且,判断所述目标帧的峰值点的幅度值与所述音频信号段的峰值点的总幅度值的比值是否大于第四阈值;且,判断所述音频信号段的自相关系数的滚降速率是否大于第四阈值;且,判断所述中心处理区间的声强是否大于所述第一处理区间的声强和所述第二处理区间的声强;且,判断所述目标帧的峰值持续时间是否小于第五阈值;若是,则确定所述目标帧的峰值点为所述噪声点。

在另一种可实现的实施方式中,所述音频修复设备还包括估计单元608,用于采用估计算法估计所述目标帧在未受到噪声干扰之前,所述目标帧的噪声点的正常值;所述音频修复设备还包括替换单元609,用于将所述噪声点的幅度值替换为所述正常值;所述音频修复设备还包括平滑单元610,用于对所述目标帧进行时域平滑,使得所述目标帧在时域上连续;所述平滑单元610,还用于对所述目标帧进行频率滤波,使得所述目标帧在频域上连续。

需要说明的是,所述估计算法包括线性预测算法及相邻采样点叠加算法中的任意一种。

在另一种可实现的实施方式中,上述获取单元602,用于获取待修复的音频信号,所述音频信号包括录音信号;所述音频修复设备还包括分帧单元611,用于对所述音频信号进行分帧得到所述多个音频帧。

在另一种可实现的实施方式中,所述音频设备还包括输出单元612,还用于以预设格式输出修复之后的目标帧,所述预设格式为音频格式wav、音频格式mp3、音频格式flac中的任意一种。

本申请实施例通过输入单元将多个音频帧依次输入到缓存模块中,获取单元将缓存模块中的中心处理单元中的音频帧作为目标帧,检测单元根据缓存模块中其他音频帧的音频特征,来确定目标帧中的噪声点,最后修复单元修复该目标帧。可见,本申请实施例至少包含以下几个发明点,首先本申请通过将音频信号分帧为长度很短的多个音频帧,并依次连续的输入到缓存模块中,来毫不遗漏且准确的定位到音频中各个噪声点,其次本申请通过将目标帧的音频特征,与目标帧相邻的音频信号进行比较,可以准确的检测出目标帧中的噪声点,最后本申请除了可以检测出上述噪声点,还可以去除上述噪声点。因此,本申请实施例可以自动地对大量音频信号进行修复,并提供了一种高效、准确以及快速的音频修复方法。

参见图7,是本申请另一实施例提供的一种音频修复设备示意框图。如图所示的本实施例中的音频修复设备可以包括:处理器710、通信接口720、输入设备730、输出设备740和存储器750。上述处理器710、通信接口720、输入设备730、输出设备740和存储器750通过总线760连接。具体的:

处理器710,用于执行输入单元601的功能,用于将多个音频帧依次输入到缓存模块中,所述缓存模块由多个处理单元顺序组成,位于所述多个处理单元的中心位置的处理单元为中心处理单元;还用于执行获取单元602的功能,用于将所述中心处理单元中所包含的至少一个音频帧作为目标帧;还用于执行检测单元603的功能,用于根据所述缓存模块中的多个音频帧的音频特征,检测所述目标帧中表现为短时高能量脉冲的噪声点;还用于执行修复单元604的功能,用于修复所述目标帧,所述修复用于去除所述目标帧中的噪声点。

在另一种可实现的实施方式中,上述处理单元还用于执行确定单元605的功能,用于确定所述目标帧的峰值点;还用于以所述峰值点为中心,在所述缓存模块中获取预设长度的音频信号段;还用于执行分段单元606的功能,用于将所述音频信号段划分为多段区间,包括第一处理区间、第二处理区间,以及位于所述第一处理区间和所述第二处理区间之间的中间处理区间,所述中间处理区间包括第一子区间、第二子区间,以及位于所述第一子区间和所述第二子区间的之间的中心子区间;还用于执行提取单元607的功能,用于分别提取所述目标帧和所述多段区间的音频特征,所述音频特征包括峰值、信号能量、平均功率、局部峰值占比、自相关系数的滚降速率、声强和峰值持续时间中的至少一种;还用于根据所述目标帧和所述多段区间的音频特征在所述目标帧中确定所述噪声点。

具体的,上述处理器710,具体用于判断所述目标帧的峰值点的幅度值是否同时大于所述中心子区间的峰值点的幅度值以及所述中间处理区间的峰值点的幅度值;且,判断所述目标帧的峰值点的幅度值是否同时大于所述第一子区间的峰值点的幅度值和所述第二子区间的峰值点的幅度值,且大于的部分超过第一阈值;且,判断所述中间处理区间的信号能量是否大于第二阈值;且,判断所述中间处理区间的平均功率与所述音频信号段的平均功率的比值是否大于第三阈值;且,判断所述目标帧的峰值点的幅度值与所述音频信号段的峰值点的总幅度值的比值是否大于第四阈值;且,判断所述音频信号段的自相关系数的滚降速率是否大于第四阈值;且,判断所述中心处理区间的声强是否大于所述第一处理区间的声强和所述第二处理区间的声强;且,判断所述目标帧的峰值持续时间是否小于第五阈值;若是,则确定所述目标帧的峰值点为所述噪声点。

在另一种可实现的实施方式中,上述处理器710还用于执行估计单元608的功能,用于采用估计算法估计所述目标帧在未受到噪声干扰之前,所述目标帧的噪声点的正常值;上述处理器710还用于执行替换单元609的功能,用于将所述噪声点的幅度值替换为所述正常值;上述处理器710还用于执行平滑单元610的功能,对所述目标帧进行时域平滑,使得所述目标帧在时域上连续,还用于对所述目标帧进行频率滤波,使得所述目标帧在频域上连续。

需要说明的是,所述估计算法包括线性预测算法及相邻采样点叠加算法中的任意一种。

在另一种可实现的实施方式中,输入设备730或者通信接口720用于获取单元602,用于获取待修复的音频信号,所述音频信号包括录音信号;上述处理器710还用于执行分帧单元611的功能,用于对所述音频信号进行分帧得到所述多个音频帧。

在另一种可实现的实施方式中,输出设备740用于执行输出单元612的功能,还用于以预设格式输出修复之后的目标帧,所述预设格式为音频格式wav、音频格式mp3、音频格式flac中的任意一种。

应当理解,在本申请实施例中,所称处理器710可以是中央处理单元(centralprocessingunit,cpu),该处理器710还可以是其他通用处理器、数字信号处理器(digitalsignalprocessor,dsp)、专用集成电路(applicationspecificintegratedcircuit,asic)、现成可编程门阵列(field-programmablegatearray,fpga)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。

该存储器750可以包括只读存储器和随机存取存储器,并向处理器710提供指令和数据。存储器750的一部分还可以包括非易失性随机存取存储器。例如,存储器750还可以存储设备类型的信息。

计算机可读存储介质可以是前述任一实施例的音频修复设备的内部存储单元,例如音频修复设备的硬盘或内存。计算机可读存储介质也可以是音频修复设备的外部存储设备,例如音频修复设备上配备的插接式硬盘,智能存储卡(smartmediacard,smc),安全数字(securedigital,sd)卡,闪存卡(flashcard)等。进一步地,计算机可读存储介质还可以既包括音频修复设备的内部存储单元也包括外部存储设备。计算机可读存储介质用于存储计算机程序以及音频修复设备所需的其他程序和数据。计算机可读存储介质还可以用于暂时地存储已经输出或者将要输出的数据。

具体实现中,本申请实施例中所描述的处理器710可执行本申请实施例提供的音频修复方法的第二实施例和第三实施例中所描述的实现方式,也可执行本申请实施例所描述的音频修复设备的实现方式,在此不再赘述。

本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、计算机软件或者二者的结合来实现,为了清楚地说明硬件和软件的可互换性,在上述说明中已经按照功能一般性地描述了各示例的组成及步骤。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同音频修复方法来实现所描述的功能,但是这种实现不应认为超出本申请的范围。

所属领域的技术人员可以清楚地了解到,为了描述的方便和简洁,上述描述的音频修复设备和单元的具体工作过程,可以参考前述音频修复方法实施例中的对应过程,在此不再赘述。

在本申请所提供的几个实施例中,应该理解到,所揭露的音频修复设备和音频修复方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另外,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口、装置或单元的间接耦合或通信连接,也可以是电的,机械的或其它的形式连接。

作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本申请实施例方案的目的。

另外,在本申请各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以是两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。

集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分,或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,音频修复设备,或者网络设备等)执行本申请各个实施例方法的全部或部分步骤。而前述的存储介质包括:u盘、移动硬盘、只读存储器(rom,read-onlymemory)、随机存取存储器(ram,randomaccessmemory)、磁碟或者光盘等各种可以存储程序代码的介质。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1