音频处理方法、装置、设备、存储介质及计算机程序产品与流程
1.本技术涉及数据处理技术,尤其涉及一种音频处理方法、装置、电子设备、计算机可读存储介质及计算机程序产品。
背景技术:
2.音频编解码技术是包括远程音视频通话在内的通信服务中的一项核心技术。语音编码技术,简单讲,就是使用较少的网络带宽资源去尽量多的传递语音信息。从香农信息论的角度来讲,语音编码是一种信源编码,信源编码的目的是在编码端尽可能的压缩我们想要传递信息的数据量,去掉信息中的冗余,同时在解码端还能够无损(或接近无损)的恢复出来。
3.然而,对于如何在保证音频质量的情况下,有效提高音频编码的效率,相关技术尚无有效的解决方案。
技术实现要素:
4.本技术实施例提供一种音频处理方法、装置、电子设备、计算机可读存储介质及计算机程序产品,能够在保证音频质量的情况下,提高音频编码效率。
5.本技术实施例的技术方案是这样实现的:
6.本技术实施例提供一种音频处理方法,包括:
7.对音频信号进行子带分解处理,得到所述音频信号的低频子带信号以及高频子带信号;
8.对所述低频子带信号进行特征提取处理,得到所述低频子带信号的低频特征;
9.对所述高频子带信号进行高频分析处理,得到所述高频子带信号的高频特征;
10.其中,所述高频特征的特征维度低于所述低频特征的特征维度;
11.对所述低频特征进行量化编码处理,得到所述音频信号的低频码流,并对所述高频特征进行量化编码处理,得到所述音频信号的高频码流。
12.本技术实施例提供一种音频处理方法,包括:
13.对低频码流进行量化解码处理,得到所述低频码流对应的低频特征,并对高频码流进行量化解码处理,得到所述高频码流对应的高频特征;
14.其中,所述低频码流以及所述高频码流是对音频信号经过子带分解处理后得到的子带信号分别进行编码得到的,所述高频特征的特征维度低于所述低频特征的特征维度;
15.对所述低频特征进行特征重建处理,得到所述低频特征对应的低频子带信号;
16.对所述高频特征进行高频重建处理,得到所述高频特征对应的高频子带信号;
17.对所述低频子带信号以及所述高频子带信号进行子带合成处理,得到所述低频码流和所述高频码流对应的合成音频信号。
18.本技术实施例提供一种音频处理装置,包括:
19.分解模块,用于对音频信号进行子带分解处理,得到所述音频信号的低频子带信
号以及高频子带信号;
20.特征提取模块,用于对所述低频子带信号进行特征提取处理,得到所述低频子带信号的低频特征;
21.高频分析模块,用于对所述高频子带信号进行高频分析处理,得到所述高频子带信号的高频特征;
22.其中,所述高频特征的特征维度低于所述低频特征的特征维度;
23.编码模块,用于对所述低频特征进行量化编码处理,得到所述音频信号的低频码流,并对所述高频特征进行量化编码处理,得到所述音频信号的高频码流。
24.本技术实施例提供一种音频处理装置,包括:
25.解码模块,用于对低频码流进行量化解码处理,得到所述低频码流对应的低频特征,并对高频码流进行量化解码处理,得到所述高频码流对应的高频特征;
26.其中,所述低频码流以及所述高频码流是对音频信号经过子带分解处理后得到的子带信号分别进行编码得到的,所述高频特征的特征维度低于所述低频特征的特征维度;
27.特征重建模块,用于对所述低频特征进行特征重建处理,得到所述低频特征对应的低频子带信号;
28.高频重建模块,用于对所述高频特征进行高频重建处理,得到所述高频特征对应的高频子带信号;
29.合成模块,用于对所述低频子带信号以及所述高频子带信号进行子带合成处理,得到所述低频码流和所述高频码流对应的合成音频信号。
30.本技术实施例提供一种用于音频处理的电子设备,所述电子设备包括:
31.存储器,用于存储可执行指令;
32.处理器,用于执行所述存储器中存储的可执行指令时,实现本技术实施例提供的音频处理方法。
33.本技术实施例提供一种计算机可读存储介质,存储有可执行指令,用于引起处理器执行时,实现本技术实施例提供的音频处理方法。
34.本技术实施例提供一种计算机程序产品,包括计算机程序或指令,所述计算机程序或指令被处理器执行时实现本技术实施例提供的音频处理方法。
35.本技术实施例具有以下有益效果:
36.通过将音频信号分解为低频子带信号以及高频子带信号,由于低频子带信号相对于高频子带信号对音频编码的影响更大,因此对低频子带信号以及高频子带信号进行差异化的信号处理,使得高频特征的特征维度低于低频特征的特征维度,对减小了特征维度的低频特征以及高频特征分别进行量化编码,从而在保证音频质量的情况下,提高音频编码效率。
附图说明
37.图1是本技术实施例提供的不同码率下的频谱比较示意图;
38.图2是本技术实施例提供的音频编解码系统的架构示意图;
39.图3是本技术实施例提供的电子设备的结构示意图;
40.图4是本技术实施例提供的音频处理方法的流程示意图;
41.图5是本技术实施例提供的音频处理方法的流程示意图;
42.图6是本技术实施例提供的端到端的语音通信链路示意图;
43.图7是本技术实施例提供的基于子带分解和神经网络的语音编解码方法的流程示意图;
44.图8是本技术实施例提供的滤波器组示意图;
45.图9a是本技术实施例提供的普通卷积网络的示意图;
46.图9b是本技术实施例提供的空洞卷积网络的示意图;
47.图10是本技术实施例提供的频带扩展的示意图;
48.图11是本技术实施例提供的第一神经网络的示意图;
49.图12是本技术实施例提供的针对高频子带信号的神经网络结构的示意图;
50.图13是本技术实施例提供的第二神经网络的示意图。
具体实施方式
51.为了使本技术的目的、技术方案和优点更加清楚,下面将结合附图对本技术作进一步地详细描述,所描述的实施例不应视为对本技术的限制,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其它实施例,都属于本技术保护的范围。
52.在以下的描述中,所涉及的术语“第一\第二”仅仅是是区别类似的对象,不代表针对对象的特定排序,可以理解地,“第一\第二”在允许的情况下可以互换特定的顺序或先后次序,以使这里描述的本技术实施例能够以除了在这里图示或描述的以外的顺序实施。
53.除非另有定义,本文所使用的所有的技术和科学术语与属于本技术的技术领域的技术人员通常理解的含义相同。本文中所使用的术语只是为了描述本技术实施例的目的,不是旨在限制本技术。
54.对本技术实施例进行进一步详细说明之前,对本技术实施例中涉及的名词和术语进行说明,本技术实施例中涉及的名词和术语适用于如下的解释。
55.1)神经网络(nn,neural network):是一种模仿动物神经网络行为特征,进行分布式并行信息处理的算法数学模型。这种网络依靠系统的复杂程度,通过调整内部大量节点之间相互连接的关系,从而达到处理信息的目的。
56.2)深度学习(dl,deep learning):是机器学习(ml,machine learning)领域中一个新的研究方向,深度学习是学习样本数据的内在规律和表示层次,这些学习过程中获得的信息对诸如文字,图像和声音等数据的解释有很大的帮助。它的最终目标是让机器能够像人一样具有分析学习能力,能够识别文字、图像和声音等数据。
57.3)量化:是指将信号的连续取值(或者大量离散取值)近似为有限多个(或较少的)离散值的过程。其中,量化包括矢量量化(vq,vector quantization)以及标量量化。
58.其中,矢量量化是一种有效的有损压缩技术,其理论基础是香农的速率失真理论。矢量量化的基本原理是用码书中与输入矢量最匹配的码字的索引代替输入矢量进行传输与存储,而解码时仅需要简单地查表操作。例如,将若干个标量数据组成一个矢量空间,将矢量空间划分为若干个小区域,量化时将落入小区域的矢量,使用对应的索引代替输入矢量。
59.标量量化是对标量进行量化,即一维的矢量量化,将动态范围分成若干个小区间,
每个小区间有一个代表值(即索引)。当输入信号落入某区间时,将输入信号量化成该代表值。
60.4)熵编码:编码过程中按熵原理不丢失任何信息的无损编码方式,也是有损编码中的一个关键模块,处于编码器的末端。熵编码包括香农(shannon)编码、哈夫曼(huffman)编码、指数哥伦布编码(exp-golomb)和算术编码(arithmetic coding)。
61.5)正交镜像滤波器组(qmf,quadrature mirror filters):是一个包含分析-合成的滤波器对,其中,qmf分析滤波器用于子带信号分解,以降低信号带宽,使各个子带信号可顺利通过各自通道进行处理;qmf合成滤波器用于将解码端恢复出的各子带信号进行合成处理,例如通过零值内插和带通滤波等方式重建出原始的音频信号。
62.语音编码技术就是使用较少的网络带宽资源去尽量多的传递语音信息。语音编解码器的压缩率可以达到10倍以上,也就是原本10mb的语音数据经过编码器的压缩后,只需要1mb来传输,大大降低了传递信息所需消耗的带宽资源。例如,对于采样率为16000hz的宽带语音信号,如果采用16-bit采样深度(取样中对语音强度记录的精细程度),无压缩版本的码率(单位时间内传送数据量)为256kbps;如果使用语音编码技术,即使是有损编码,在10-20kbps的码率范围内,重建的语音信号的质量可以接近无压缩版本,甚至听感上认为无差别。如果需要更高采样率的服务,比如32000hz的超宽带语音,码率范围至少要达到30kbps以上。
63.在通信系统中,为了保证通信的顺利,行业内部部署标准的语音编解码协议,例如来自itu-t、3gpp、ietf、avs、ccsa等国际国内标准组织的标准,g.711、g.722、amr系列、evs、opus等标准。图1给出一个不同码率下的频谱比较示意图,以示范压缩码率与质量的关系。曲线101为原始语音的频谱曲线,即没有压缩的信号;曲线102为opus编码器在20kbps码率下的频谱曲线;曲线103为opus编码在6kbps码率下的频谱曲线。由图1可知,随着编码码率的提升,压缩后的信号更为接近原始信号。
64.相关技术中,语音编码原理大致如下:语音编码可以直接对语音波形样本,逐样本地进行编码;或者,基于人的发声原理,提取相关低维度特征,编码端对特征进行编码,解码端基于这些参数重建语音信号。
65.上述编码原理均来自语音信号建模,即基于信号处理的压缩方法。为了相对于基于信号处理的压缩方法,在保证语音质量的情况下,提高编码效率。本技术实施例提供一种音频处理方法、装置、电子设备、计算机可读存储介质及计算机程序产品,能够提高编码效率。下面说明本技术实施例提供的电子设备的示例性应用,本技术实施例提供的电子设备可以实施为终端设备,也可以实施为服务器,或者由终端设备和服务器协同实施。下面以电子设备实施为终端设备为例进行说明。
66.示例的,参见图2,图2是本技术实施例提供的音频编解码系统100的架构示意图,音频解码系统100包括:服务器200、网络300、终端设备400(即编码端)和终端设备500(即解码端),其中,网络300可以是局域网,或者是广域网,又或者是二者的组合。
67.在一些实施例中,在终端设备400上运行有客户端410,客户端410可以是各种类型的客户端,例如即时通信客户端、网络会议客户端、直播客户端、浏览器等。客户端410响应于发送方(例如网络会议的发起者、主播、语音通话的发起者等)触发的音频采集指令,调用终端设备400自带的麦克风进行音频信号的采集,并对采集得到的音频信号进行编码处理,
得到码流。
68.例如,客户端410调用本技术实施例提供的音频处理方法对采集得到的音频信号进行编码,即对音频信号进行子带分解处理,得到音频信号的低频子带信号以及高频子带信号,对低频子带信号进行特征提取处理,得到低频子带信号的低频特征,对高频子带信号进行高频分析处理,得到高频子带信号的高频特征,其中,高频特征的特征维度低于低频特征的特征维度,对低频特征进行量化编码处理,得到音频信号的低频码流,并对高频特征进行量化编码处理,得到音频信号的高频码流。编码端(即终端设备400)对低频子带信号以及高频子带信号进行差异化的信号处理,使得高频特征的特征维度低于低频特征的特征维度,对减小了特征维度的低频特征以及高频特征分别进行量化编码,从而在保证音频质量的情况下,提高音频编码效率。
69.客户端410可以将码流(即低频码流以及高频码流)通过网络300发送至服务器200,以使服务器200将码流发送至接收方(例如网络会议的参会对象、观众、语音通话的接收者等)关联的终端设备500。
70.客户端510(例如即时通信客户端、网络会议客户端、直播客户端、浏览器等)在接收到服务器200发送的码流后,可以对码流进行解码处理,以得到音频信号,从而实现音频通信。
71.例如,客户端510调用本技术实施例提供的音频处理方法对接收到的码流进行解码,即对低频码流进行量化解码处理,得到低频码流对应的低频特征,并对高频码流进行量化解码处理,得到高频码流对应的高频特征,对低频特征进行特征重建处理,得到低频特征对应的低频子带信号,对高频特征进行高频重建处理,得到高频特征对应的高频子带信号,对低频子带信号以及高频子带信号进行子带合成处理,得到解码出的音频信号。
72.在一些实施例中,本技术实施例可以借助云技术(cloud technology)实现,云技术是指在广域网或局域网内将硬件、软件、网络等系列资源统一起来,实现数据的计算、存储、处理和共享的一种托管技术。
73.云技术是基于云计算商业模式应用的网络技术、信息技术、整合技术、管理平台技术、以及应用技术等的总称,可以组成资源池,按需所用,灵活便利。云计算技术将变成重要支撑。上述服务器200之间的服务交互功能可以通过云技术实现。
74.示例的,图2中示出的服务器200可以是独立的物理服务器,也可以是多个物理服务器构成的服务器集或者分布式系统,还可以是提供云服务、云数据库、云计算、云函数、云存储、网络服务、云通信、中间件服务、域名服务、安全服务、cdn、以及大数据和人工智能平台等基础云计算服务的云服务器。图2中示出的终端设备400和终端设备500可以是智能手机、平板电脑、笔记本电脑、台式计算机、智能音箱、智能手表、车载终端等,但并不局限于此。终端设备(例如终端设备400和终端设备500)以及服务器200可以通过有线或无线通信方式进行直接或间接地连接,本技术实施例中不做限制。
75.在一些实施例中,终端设备或服务器200还可以通过运行计算机程序来实现本技术实施例提供的音频处理方法。举例来说,计算机程序可以是操作系统中的原生程序或软件模块;可以是本地(native)应用程序(app,application),即需要在操作系统中安装才能运行的程序,如直播app、网络会议app、或者即时通信app等;也可以是小程序,即只需要下载到浏览器环境中就可以运行的程序;还可以是能够嵌入至任意app中的小程序。总而言
之,上述计算机程序可以是任意形式的应用程序、模块或插件。
76.在一些实施例中,多个服务器可组成为一区块链,而服务器200为区块链上的节点,区块链中的每个节点之间可以存在信息连接,节点之间可以通过上述信息连接进行信息传输。其中,本技术实施例提供的音频处理方法所相关的数据(例如音频处理的逻辑、码流)可保存于区块链上。
77.参见图3,图3是本技术实施例提供的电子设备500的结构示意图,以电子设备500是终端设备为例说明,图3所示的电子设备500包括:至少一个处理器520、存储器550、至少一个网络接口530和用户接口540。电子设备500中的各个组件通过总线系统550耦合在一起。可理解,总线系统550用于实现这些组件之间的连接通信。总线系统550除包括数据总线之外,还包括电源总线、控制总线和状态信号总线。但是为了清楚说明起见,在图3中将各种总线都标为总线系统550。
78.处理器520可以是一种集成电路芯片,具有信号的处理能力,例如通用处理器、数字信号处理器(dsp,digital signal processor),或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等,其中,通用处理器可以是微处理器或者任何常规的处理器等。
79.用户接口540包括使得能够呈现媒体内容的一个或多个输出装置541,包括一个或多个扬声器和/或一个或多个视觉显示屏。用户接口540还包括一个或多个输入装置542,包括有助于用户输入的用户接口部件,比如键盘、鼠标、麦克风、触屏显示屏、摄像头、其他输入按钮和控件。
80.存储器550可以是可移除的,不可移除的或其组合。示例性的硬件设备包括固态存储器,硬盘驱动器,光盘驱动器等。存储器550可选地包括在物理位置上远离处理器520的一个或多个存储设备。
81.存储器550包括易失性存储器或非易失性存储器,也可包括易失性和非易失性存储器两者。非易失性存储器可以是只读存储器(rom,read only memory),易失性存储器可以是随机存取存储器(ram,random access memory)。本技术实施例描述的存储器550旨在包括任意适合类型的存储器。
82.在一些实施例中,存储器550能够存储数据以支持各种操作,这些数据的示例包括程序、模块和数据结构或者其子集或超集,下面示例性说明。
83.操作系统551,包括用于处理各种基本系统服务和执行硬件相关任务的系统程序,例如框架层、核心库层、驱动层等,用于实现各种基础业务以及处理基于硬件的任务;
84.网络通信模块552,用于经由一个或多个(有线或无线)网络接口530到达其他计算设备,示例性的网络接口530包括:蓝牙、无线相容性认证(wifi)、和通用串行总线(usb,universal serial bus)等;
85.呈现模块553,用于经由一个或多个与用户接口540相关联的输出装置541(例如,显示屏、扬声器等)使得能够呈现信息(例如,用于操作外围设备和显示内容和信息的用户接口);
86.输入处理模块554,用于对一个或多个来自一个或多个输入装置542之一的一个或多个用户输入或互动进行检测以及翻译所检测的输入或互动。
87.在一些实施例中,本技术实施例提供的音频处理装置可以采用软件方式实现,图3
示出了存储在存储器550中的音频处理装置555,其可以是程序和插件等形式的软件,包括以下软件模块:分解模块5551、特征提取模块5552、高频分析模块5553、编码模块5554,或解码模块5555、特征重建模块5556、高频重建模块5557以及合成模块5558,其中,分解模块5551、特征提取模块5552、高频分析模块5553、编码模块5554用于实现音频编码功能,解码模块5555、特征重建模块5556、高频重建模块5557以及合成模块5558用于实现音频解码功能,这些模块是逻辑上的,因此根据所实现的功能可以进行任意的组合或进一步拆分。
88.如前所述,本技术实施例提供的音频处理方法可以由各种类型的电子设备实施。参见图4,图4是本技术实施例提供的音频处理方法的流程示意图,通过音频处理方式实现音频编码功能,下面结合图4示出的步骤进行说明。
89.在步骤101中,对音频信号进行子带分解处理,得到音频信号的低频子带信号以及高频子带信号。
90.作为获取音频信号的示例,编码端响应于发送方(例如网络会议的发起者、主播、语音通话的发起者等)触发的音频采集指令,调用编码端的终端设备自带的麦克风进行音频信号的采集,以获取音频信号(又称输入信号)。
91.在获取音频信号后,通过qmf分析滤波器将音频信号分解成低频子带信号x
lb
(n)和高频子带信号x
hb
(n),由于低频子带信号相对于高频子带信号对音频编码的影响更大,以便后续对低频子带信号以及高频子带信号进行差异化的信号处理。
92.在一些实施例中,对音频信号进行子带分解处理,得到音频信号的低频子带信号以及高频子带信号,包括:对音频信号进行采样处理,得到采样信号,其中,采样信号包括采样得到的多个样本点;对采样信号进行低通滤波处理,得到低通滤波信号;对低通滤波信号进行下采样处理,得到音频信号的低频子带信号;对采样信号进行高通滤波处理,得到高通滤波信号;对高通滤波信号进行下采样处理,得到音频信号的高频子带信号。
93.需要说明的是音频信号为连续的模拟信号,采样信号为离散的数字信号,采样点为从音频信号中采样得到的采样值。
94.作为示例,以音频信号为采样率fs=32000hz的输入信号为例,对音频信号进行采样,得到包括640个样本点的采样信号x(n)。调用qmf滤波器组中的分析滤波器(2通道),对采样信号进行低通滤波处理,得到低通滤波信号,对采样信号进行高通滤波处理,得到高通滤波信号,对低通滤波信号进行下采样处理,得到音频信号的低频子带信号x
lb
(n),对高通滤波信号进行下采样处理,得到音频信号的高频子带信号x
hb
(n)。低频子带信号x
lb
(n)和高频子带信号x
hb
(n)的有效带宽分别是0-8khz和8-16khz,低频子带信号x
lb
(n)和高频子带信号x
hb
(n)的样本点数为320。
95.需要说明的是,qmf滤波器组是一个包含分析-合成的滤波器对。对于qmf分析滤波器,可以将输入的采样率为fs的信号分解成两路采样率为fs/2的信号,分别表示qmf低通信号和qmf高通信号。解码端恢复出的低通信号和高通信号后,经过qmf合成滤波器进行合成处理,即可以恢复出输入信号对应的采样率fs的重建信号。
96.在步骤102中,对低频子带信号进行特征提取处理,得到低频子带信号的低频特征。
97.例如,由于低频子带信号相对于高频子带信号对音频编码的影响更大,因此可以通过神经网络模型对低频子带信号进行特征提取处理,得到低频子带信号的低频特征,以
在保证低频特征的完备性的情况下,尽量减小低频特征的特征维度。本技术实施例并不局限于神经网络模型的结构。其中,低频子带信号的低频特征的维度小于低频子带信号的维度。
98.在一些实施例中,对低频子带信号进行特征提取处理,得到低频子带信号的低频特征,包括:对低频子带信号进行卷积处理,得到低频子带信号的卷积特征;对卷积特征进行池化处理,得到低频子带信号的池化特征;对池化特征进行下采样处理,得到低频子带信号的下采样特征;对下采样特征进行卷积处理,得到低频子带信号的低频特征。
99.如图11所示,基于低频子带信号x
lb
(n)调用神经网络模型,生成更低维度的特征向量f
lb
(n),即低频特征。首先,通过因果卷积对输入的低频子带信号x
lb
(n)进行卷积处理,得到24
×
320的卷积特征。然后,对24
×
320的卷积特征进行因子为2的池化处理(即预处理),得到24
×
160的池化特征。接下来,对24
×
160的池化特征进行下采样处理,得到192
×
1的下采样特征。最后,对192
×
1的下采样特征,再经过因果卷积进行卷积处理,可以得到一个56维的特征向量f
lb
(n)。
100.在一些实施例中,下采样处理是通过多个级联的编码层实现的;对池化特征进行下采样处理,得到低频子带信号的下采样特征,包括:通过多个级联的编码层中的第一个编码层,对池化特征进行下采样处理;将第一个编码层的下采样结果输出到后续级联的编码层,通过后续级联的编码层继续进行下采样处理和下采样结果输出,直至输出到最后一个编码层;将最后一个编码层输出的下采样结果作为低频子带信号的下采样特征。
101.如图11所示,级联3个不同下采样因子(down_factor)的编码块(即编码层)对池化特征进行下采样处理,即先通过下采样因子(down_factor=4)的编码块对24
×
160的池化特征进行下采样处理,得到48
×
40的下采样结果,然后通过下采样因子(down_factor=5)的编码块对48
×
40的下采样结果进行下采样处理,得到96
×
8的下采样结果,最后通过下采样因子(down_factor=8)的编码块对96
×
8的下采样结果进行下采样处理,得到192
×
1的下采样特征。以编码块(down_factor=4)为例,可以先执行1个或者多个空洞卷积,并基于down_factor进行池化,以实现下采样的作用。
102.需要说明的是,通过一层编码层的处理后,对下采样特征的理解就加深一步,通过多层编码层的学习后,就能够逐步准确学习到低频子带信号的下采样特征。通过级联形式的编码层,能够获取精度渐进的低频子带信号的下采样特征。
103.在步骤103中,对高频子带信号进行高频分析处理,得到高频子带信号的高频特征。
104.其中,高频特征的特征维度低于低频特征的特征维度。由于低频子带信号相对于高频子带信号对音频编码的影响更大,因此对低频子带信号以及高频子带信号进行差异化的信号处理,使得高频特征的特征维度低于低频特征的特征维度。其中,高频子带信号的低频特征的维度小于高频子带信号的维度,高频分析处理用于对高频子带信号进行降维,实现数据压缩的功能。
105.在一些实施例中,对高频子带信号进行高频分析处理,得到高频子带信号的高频特征,包括:调用第一神经网络模型,通过第一神经网络模型对高频子带信号进行特征提取处理,得到高频子带信号的高频特征。
106.例如,对高频子带信号可以调用与针对低频子带信号的神经网络模型类似的第一
神经网络模型(如图12所示),通过第一神经网络模型对高频子带信号进行卷积处理,得到高频子带信号的卷积特征;对卷积特征进行池化处理,得到高频子带信号的池化特征;对池化特征进行下采样处理,得到高频子带信号的下采样特征;对下采样特征进行卷积处理,得到高频子带信号的低频特征。
107.需要说明的是,相对低频子带信号,高频子带信号对质量的重要程度相对低,因此,针对高频子带信号的第一神经网络模型(图12)的结构也无需像图11所示的模型结构那么复杂。相比图11所示的模型结构,图12所示的模型结构大幅度减少通道数。
108.在一些实施例中,对高频子带信号进行高频分析处理,得到高频子带信号的高频特征,包括:对高频子带信号进行频带扩展处理,得到高频子带信号的高频特征。
109.例如,由于相对低频子带信号,高频子带信号对质量的重要程度相对低,因此可以通过另一种方法压缩高频子带信号,即频带扩展(从频带受限的窄带语音信号中恢复宽带语音信号),以快速压缩高频子带信号,提取高频子带信号的高频特征。
110.在一些实施例中,对高频子带信号进行频带扩展处理,得到高频子带信号的高频特征,包括:基于高频子带信号包括的多个样本点进行频域变换处理,得到多个样本点分别对应的变换系数;将多个样本点分别对应的变换系数划分为多个子带;对每个子带包括的变换系数进行均值处理,得到每个子带对应的平均能量,并将平均能量作为每个子带对应的子带谱包络;将多个子带分别对应的子带谱包络确定为高频子带信号的高频特征。
111.需要说明的是,本技术实施例的频域变换方法包括改进型离散余弦变换(mdct,modified discrete cosine transform)、离散余弦变换(dct,discrete cosine transform)、快速傅立叶变换(fft,fast fourier transform)等,本技术实施例并不局限于频域变换的方式。本技术实施例的均值处理包括算术平均、几何平均,本技术实施例并不局限于均值处理的方式。
112.在一些实施例中,基于高频子带信号包括的多个样本点进行频域变换处理,得到多个样本点分别对应的变换系数,包括:获取参考音频信号的参考高频子带信号,其中,参考音频信号是与音频信号相邻的音频信号;基于参考高频子带信号包括的多个样本点以及高频子带信号包括的多个样本点,对高频子带信号包括的多个样本点进行离散余弦变换处理,得到高频子带信号包括的多个样本点分别对应的变换系数。
113.在一些实施例中,对每个子带包括的变换系数进行几何均值处理的过程如下:确定每个子带包括的样本点对应的变换系数的平方和;将平方和与子带包括的样本点的数量的比值,确定为得到每个子带对应的平均能量。
114.作为示例,对于包括320点的高频子带信号x
hb
(n),调用改进型离散余弦变换(mdct,modified discrete cosine transform),生成320个点的mdct系数(即高频子带信号包括的多个样本点分别对应的变换系数)。具体地,如果是50%交叠,可以将第n+1帧高频数据(即参考音频信号)与第n帧高频数据(即音频信号)合并(拼接),计算640个点的mdct,获得320个点的mdct系数。
115.将320个点的mdct系数分成n个子带(即将多个样本点分别对应的变换系数划分为多个子带),这里的子带就是将相邻的多个mdct系数组成一组,320个点的mdct系数可以分成8个子带。例如,可以均匀分配320个点,即每个子带包括的点的数量一致。当然,本技术实施例不可以对320个点进行非均匀划分,比如偏低频的子带包括的mdct系数更少(频率分辨
率更高),偏高频的子带包括的mdct系数更多(频率分辨率更低)。
116.根据奈奎斯特(nyquist)采样定律(要从抽样信号中无失真地恢复原信号,抽样频率应大于2倍原信号最高频率,抽样频率小于2倍频谱最高频率时,信号的频谱有混叠,抽样频率大于2倍频谱最高频率时,信号的频谱无混叠),上述320个点的mdct系数表示了8-16khz的频谱。但超宽带语音通信,不一定要求频谱到16khz,比如,如果设置频谱到14khz,只需要考虑前240个点的mdct系数,对应地,子带数可以控制为6。
117.对于每一个子带,计算当前子带中所有mdct系数的平均能量(即对每个子带包括的变换系数进行均值处理)作为子带谱包络(频谱包络是经过频谱各主峰值点的平滑曲线),比如,当前子带中包括的mdct系数为x(n),n=1,2,
…
,40,则通过几何均值计算平均能量y=((x(1)2+x(2)2+
…
+x(40)2)/40)。对于320个点的mdct系数分成8个子带的情况,可以获得8个子带谱包络,这8个子带谱包络就是生成的高频子带信号的特征向量f
hb
(n),即高频特征。
118.在步骤104中,对低频特征进行量化编码处理,得到音频信号的低频码流,并对高频特征进行量化编码处理,得到音频信号的高频码流。
119.例如,对低频子带信号以及高频子带信号进行差异化的信号处理,使得高频特征的特征维度低于低频特征的特征维度,对减小了特征维度的低频特征以及高频特征分别进行量化编码,并传输高频码流以及低频码流至解码端,通过解码端对高频码流以及低频码流进行解码,以恢复出音频信号,从而在保证音频质量的情况下,提高音频编码效率。
120.在一些实施例中,对低频特征进行量化编码处理,得到音频信号的低频码流,包括:对低频特征进行量化处理,得到低频特征的索引值;对低频特征的索引值进行熵编码处理,得到音频信号的低频码流;对高频特征进行量化编码处理,得到音频信号的高频码流,包括:对高频特征进行量化处理,得到高频特征的索引值;对高频特征的索引值进行熵编码处理,得到音频信号的高频码流。
121.例如,对于低频子带信号的特征向量f
lb
(n)和高频子带信号的特征向量f
hb
(n),均可以进行标量量化(各分量单独量化)和熵编码的方法。另外,本技术实施例也不限制矢量量化(相邻多个分量组合成一个矢量进行联合量化)和熵编码的技术组合,将编码得到的高频码流以及低频码流传输至解码端,通过解码端对高频码流以及低频码流进行解码。
122.如前所述,本技术实施例提供的音频处理方法可以由各种类型的电子设备实施。参见图5,图5是本技术实施例提供的音频处理方法的流程示意图,通过音频处理方式实现音频解码功能,下面结合图5示出的步骤进行说明。
123.在步骤201中,对低频码流进行量化解码处理,得到低频码流对应的低频特征,并对高频码流进行量化解码处理,得到高频码流对应的高频特征。
124.其中,低频码流以及高频码流是对音频信号经过子带分解处理后得到的子带信号分别进行编码得到的,高频特征的特征维度低于低频特征的特征维度。
125.例如,通过如图4所示的音频处理方法编码得到高频码流以及低频码流后,将编码得到的高频码流以及低频码流传输至解码端,解码端接收到高频码流以及低频码流后,对低频码流进行量化解码处理,得到低频码流对应的低频特征,并对高频码流进行量化解码处理,得到高频码流对应的高频特征。
126.需要说明的是,量化解码是量化编码的逆过程。对于收到码流,先进行熵解码,并
通过查量化表(即逆量化,量化表为编码过程中量化所产生的映射表),获得低频的特征向量的估计值f
′
lb
(n),即低频码流对应的低频特征,获得高频的特征向量的估计值f
′
hb
(n),即高频码流对应的高频特征。需要说明的是,解码端对接收到的码流进行解码的过程是编码端进行编码的过程的逆过程,因此,解码过程中产生的值是相对于编码过程中的值的估计值,例如解码过程中产生的高频特征相对于编码过程中的高频特征是一种估计值。
127.例如,对低频码流进行量化解码处理,得到低频码流对应的低频特征,包括:对低频码流进行熵解码处理,得到低频码流对应的索引值;对低频码流对应的索引值进行逆量化处理,得到低频码流对应的低频特征;对高频码流进行量化解码处理,得到高频码流对应的高频特征,包括:对高频码流进行熵解码处理,得到高频码流对应的索引值;对高频码流对应的索引值进行逆量化处理,得到高频码流对应的高频特征。
128.在步骤202中,对低频特征进行特征重建处理,得到低频特征对应的低频子带信号。
129.例如,特征重建是特征提取的逆过程,对低频特征进行特征重建处理,得到低频特征对应的低频子带信号(一种估计值)。
130.在一些实施例中,对低频特征进行特征重建处理,得到低频特征对应的低频子带信号,包括:对低频特征进行卷积处理,得到低频特征的卷积特征;对卷积特征进行上采样处理,得到低频特征的上采样特征;对上采样特征进行池化处理,得到低频特征的池化特征;对池化特征进行卷积处理,得到低频特征对应的低频子带信号。
131.如图13所示,基于低频特征向量f
′
lb
(n),调用如图13所示的神经网络模型,生成低频子带信号x
′
lb
(n)。其中,如图13所示的神经网络模型与如图11所示的神经网络模型类似,比如因果卷积、后处理结构与预处理类似。解码块的结构与编码端的编码块是对称地:编码端的编码块是先做空洞卷积再池化完成下采样,解码端的解码块是先进行池化完成上采样,再做空洞卷积。
132.首先,通过因果卷积对输入的低频特征向量f
′
lb
(n)进行卷积处理,得到192
×
1的卷积特征。然后,对192
×
1的卷积特征进行上采样处理,得到24
×
160的上采样特征。接下来,对24
×
160的上采样特征进行池化处理(即后处理),得到24
×
320的池化特征。最后,对池化特征,再经过因果卷积进行卷积处理,可以得到一个320维的低频子带信号x
′
lb
(n)。
133.在一些实施例中,上采样处理是通过多个级联的解码层实现的;对卷积特征进行上采样处理,得到低频特征的上采样特征,包括:通过多个级联的解码层中的第一个解码层,对卷积特征进行上采样处理;将第一个解码层的上采样结果输出到后续级联的解码层,通过后续级联的解码层继续进行上采样处理和上采样结果输出,直至输出到最后一个解码层;将最后一个解码层输出的上采样结果作为低频特征的上采样特征。
134.如图13所示,级联3个不同上采样因子(up_factor)的解码块(即解码层)对卷积特征进行上采样处理,即先通过上采样因子(up_factor=8)的解码块对192
×
1的卷积特征进行上采样处理,得到96
×
8的上采样结果,然后通过上采样因子(up_factor=5)的解码块对96
×
8的上采样结果进行上采样处理,得到48
×
40的上采样结果,最后通过上采样因子(up_factor=4)的解码块对48
×
40的上采样结果进行上采样处理,得到24
×
160的上采样特征。以解码块(up_factor=4)为例,可以先并基于up_factor进行池化,然后执行1个或者多个空洞卷积,以实现上采样的作用。
135.需要说明的是,通过一层解码层的处理后,对上采样特征的理解就加深一步,通过多层解码层的学习后,就能够逐步准确学习到低频特征的上采样特征。通过级联形式的解码层,能够获取精度渐进的低频特征的上采样特征。
136.在步骤203中,对高频特征进行高频重建处理,得到高频特征对应的高频子带信号。
137.例如,高频重建是高频分析的逆过程,通过高频重建处理对高频特征进行升维,实现数据解压的功能。
138.在一些实施例中,对高频特征进行高频重建处理,得到高频特征对应的高频子带信号,包括:调用第二神经网络模型,通过第二神经网络模型对高频特征进行特征重建处理,得到高频特征对应的高频子带信号。
139.例如,当编码端是对高频子带信号进行特征提取,获得高频特征时,则解码端对高频特征进行特征重建处理,得到高频特征对应的高频子带信号。
140.在一些实施例中,对高频特征进行高频重建处理,得到高频特征对应的高频子带信号,包括:对高频特征进行频带扩展的逆处理,得到高频特征对应的高频子带信号。
141.例如,当编码端是对高频子带信号进行频带扩展,获得高频特征时,则解码端对高频特征进行频带扩展的逆处理,得到高频特征对应的高频子带信号。
142.在一些实施例中,对高频特征进行频带扩展的逆处理,得到高频特征对应的高频子带信号,包括:基于低频子带信号包括的多个样本点进行频域变换处理,得到多个样本点分别对应的变换系数;对多个样本点分别对应的变换系数中的后半部分的变换系数进行频谱复制处理,得到参考高频子带信号的参考变换系数;基于高频特征对应的子带谱包络,对参考高频子带信号的参考变换系数进行增益处理,得到增益后的参考变换系数;对增益后的参考变换系数进行反频域变换处理,得到高频特征对应的高频子带信号。
143.需要说明的是,本技术实施例的频域变换方法包括改进型离散余弦变换(mdct,modified discrete cosine transform)、离散余弦变换(dct,discrete cosine transform)、快速傅立叶变换(fft,fast fourier transform)等,本技术实施例并不局限于频域变换的方式。
144.在一些实施例中,基于高频特征对应的子带谱包络,对参考高频子带信号的参考变换系数进行增益处理,得到增益后的参考变换系数,包括:基于高频特征对应的子带谱包络,将参考高频子带信号的参考变换系数划分为多个子带;针对多个子带中的任意子带执行以下处理:确定子带谱包络中与子带对应的第一平均能量,并确定子带对应的第二平均能量;基于第一平均能量与第二平均能量的比值,确定增益因子;将增益因子与子带包括的每个参考变换系数相乘,得到增益后的参考变换系数。
145.作为示例,先将解码端生成的低频子带信号x
′
lb
(n),也进行编码端类似的640点的mdct变换,生成320个点的mdct系数(即低频部分的mdct系数),即基于低频子带信号包括的多个样本点进行频域变换处理,得到多个样本点分别对应的变换系数。
146.然后,将由x
′
lb
(n)生成的320个点的mdct系数进行复制,生成高频部分的mdct系数(即参考高频子带信号的参考变换系数)。参考语音信号基本特征,低频部分谐波更多,高频部分谐波更少。因此,为了避免简单复制,造成人工生成的高频部分的mdct谱包含过多谐波,可以将低频子带信号依赖的320个点的mdct系数中的后160点作为母版,频谱拷贝2次,
生成320个点的参考高频子带信号的mdct系数的参考值(即参考高频子带信号的参考变换系数),即对多个样本点分别对应的变换系数中的后半部分的变换系数进行频谱复制处理,得到参考高频子带信号的参考变换系数。
147.接下来,调用前面获得的8个子带谱包络(即通过查询量化表后得到的8个子带谱包络,即高频特征对应的子带谱包络),这8个子带谱包络对应8个高频子带,并将生成的320个点的参考高频子带信号的mdct系数的参考值分为8个参考高频子带(即将参考高频子带信号的参考变换系数划分为多个子带),分带地,基于一个高频子带与对应的参考高频子带,对生成的320点的参考高频子带信号的mdct系数的参考值进行增益控制(频域上就是做乘法),例如根据高频子带的平均能量(即第一平均能量)与对应的参考高频子带的平均能量(第二平均能量)计算增益因子,将该对应的参考高频子带中的每个点对应的mdct系数乘以增益因子,确保解码虚拟生成的高频mdct系数的能量,与编码端原始的系数能量接近。
148.例如,假定复制过去生成的参考高频子带信号的高频子带的平均能量是y_l,当前要做增益控制的高频子带(即基于码流解码出来的子带谱包络对应的高频子带)的平均能量是y_h,则计算一个增益因子a=sqrt(y_h/y_l)。有了增益因子a后,直接将从复制生成的参考高频子带中的每个点均乘以a。
149.最后,调用mdct反变换,生成高频子带信号的估计值x
′
hb
(n)(即高频特征对应的高频子带信号)。对增益后的320点的mdct系数进行mdct反变换,生成640个点的估计值,通过交叠,取有效的前320个点的估计值作为x
′
hb
(n)。
150.在步骤204中,对低频子带信号以及高频子带信号进行子带合成处理,得到低频码流和高频码流对应的合成音频信号。
151.例如,子带合成处理是子带分解处理的逆过程,解码端对低频子带信号以及高频子带信号进行子带合成处理,以恢复出音频信号,其中合成音频信号即为恢复出的音频信号。
152.在一些实施例中,对低频子带信号以及高频子带信号进行子带合成处理,得到低频码流和高频码流对应的合成音频信号,包括:对低频子带信号进行上采样处理,得到低通滤波信号;对高频子带信号进行上采样处理,得到高频滤波信号;对低通滤波信号以及高频滤波信号进行滤波合成处理,得到合成音频信号。
153.例如,在获取低频子带信号以及高频子带信号后,通过qmf合成滤波器对低频子带信号以及高频子带信号进行子带合成以恢复出音频信号。
154.下面,将说明本技术实施例在一个实际的应用场景中的示例性应用。
155.本技术实施例可以应用于各种音频场景,例如语音通话、即时通信等。下面以语音通话为例进行说明:
156.相关技术中,语音编码原理大致如下:语音编码可以直接对语音波形样本,逐样本地进行编码;或者,基于人的发声原理,提取相关低维度特征,编码端对特征进行编码,解码端基于这些参数重建语音信号。
157.上述编码原理均来自语音信号建模,即基于信号处理的压缩方法。为了相对于基于信号处理的压缩方法,在保证语音质量的情况下,提高编码效率。本技术实施例提供基于子带分解和神经网络的语音编解码方法(即音频处理方法),基于语音信号特点,将特定采样率的语音信号,分解成低频子带信号和高频子带信号,不同的子带信号可以采用不同的
数据压缩机制进行压缩。对于重要的部分(低频子带信号),基于神经网络(nn,neural network)技术进行处理后,会得到比输入的低频子带信号更低维度的特征向量。对于相对不重要的部分(高频子带信号),使用更少的比特进行编码。
158.本技术实施例可应用于如图6所示的语音通信链路,以基于网际互连协议的语音传输(voip,voice over internet protocol)会议系统为例,将本技术实施例涉及的语音编解码技术部署在编码和解码部分,以解决语音压缩的基本功能。编码器部署在上行客户端601,解码器部署在下行客户端602,通过上行客户端采集语音,并进行前处理增强、编码等处理,将编码得到的码流通过网络传输至下行客户端602,通过下行客户端602进行解码、增强等处理,以在下行客户端602回放解码出的语音。
159.考虑前向兼容(即新的编码器与已有的编码器兼容),需要在系统的后台(即服务器)部署转码器,以解决新的编码器与已有的编码器互联互通问题。例如,如果发送端(上行客户端)是新的nn编码器,接收端(下行客户端)是公用电话交换网(pstn,public switched telephone network)(g.722)。在后台,需要执行nn解码器生成语音信号,然后调用g.722编码器生成特定码流,以实现转码功能,才能让接收端基于特定码流进行正确解码。
160.下面结合图7说明本技术实施例提供的基于子带分解和神经网络的语音编解码方法:
161.对于编码端执行如下处理:
162.对第n帧的输入语音信号x(n),使用分析滤波器分解为低频子带信号x
lb
(n)和高频子带信号x
hb
(n)。
163.对于低频子带信号x
lb
(n),调用第一nn,获得低维度的特征向量f
lb
(n),特征向量f
lb
(n)的维度小于低频子带信号的维度,以减少数据量。例如,对于每帧x
lb
(n),调用空洞卷积网络(dilated cnn),生成更低维的特征向量f
lb
(n)。本技术实施例不限制其它的nn结构,例如自编码器(autoencoder),全连接(fc,full-connection)网络,长短期记忆(lstm,long short-term memory)网络、卷积神经网络(cnn,convolutional neural network)+lstm等等。
164.对于高频子带信号x
hb
(n),考虑到高频对质量的重要性没有低频那么重要,高频子带信号x
hb
(n)可以采用其它方案提取特征向量f
hb
(n)。例如,基于语音信号分析的频带扩展技术,可以只用1-2kbps码率实现高频子带信号的生成;还可以使用与低频子带信号一样的nn结构或者更精简的网络(比如输出的特征向量比低频的特征向量f
lb
(n)更小)。
165.对子带对应的特征向量(即f
lb
(n)以及f
hb
(n))进行矢量量化或者标量量化,并将量化后的索引值进行熵编码,并编码后得到的码流传输到解码端。
166.对于解码端执行如下处理:
167.对解码端接收到码流进行解码,分别获得低频的特征向量的估计值f
′
lb
(n)和高频的特征向量的估计值f
′
hb
(n)。
168.对于低频部分,基于低频的特征向量的估计值f
′
lb
(n)调用第二nn,生成低频子带信号估计值x
′
lb
(n)。
169.对于高频部分,基于高频的特征向量的估计值f
′
hb
(n)调用高频重建,生成高频子带信号估计值x
′
hb
(n)。
170.最后,调用qmf合成滤波,生成重建的语音信号x
′
(n)。
171.下面在具体介绍本技术实施例提供的基于子带分解和神经网络的语音编解码方法之前,先介绍qmf滤波器组、空洞卷积网络以及频带扩展技术。
172.qmf滤波器组是一个包含分析-合成的滤波器对。对于qmf分析滤波器,可以将输入的采样率为fs的信号分解成两路采样率为fs/2的信号,分别表示qmf低通信号和qmf高通信号。如图8所示的qmf滤波器的低通部分h_low(z)和高通部分h_high(z)的频谱响应。基于qmf分析滤波器组的相关理论知识,可以容易地描述上述低通滤波和高通滤波的系数之间的相关性,如公式(1)所示:
173.h
high
(k)=-1
khlow
(k)
ꢀꢀ
(1)
174.其中,h
low
(k)表示低通滤波的系数,h
high
(k)表示高通滤波的系数。
175.类似地,根据qmf相关理论,可以基于qmf分析滤波器组h_low(z)和h_high(z),描述qmf合成滤波器组,如公式(2)所示。
176.g
low
(z)=h
low
(z)
177.g
high
(z)=(-1)*h
high
(z)
ꢀꢀ
(2)
178.其中,g
low
(z)表示恢复出的低通信号,g
high
(z)表示恢复出的高通信号。解码端恢复出的低通和高通信号,经过qmf合成滤波器组进行合成处理,即可以恢复出输入信号对应的采样率fs的重建信号。
179.参见图9a和图9b,图9a是本技术实施例提供的普通卷积网络的示意图,图9b是本技术实施例提供的空洞卷积网络的示意图。相对普通卷积网络,空洞卷积能够增加感受野的同时保持特征图的尺寸不变,还可以避免因为上采样、下采样引起的误差。虽然图9a和图9b中示出的卷积核大小(kernel size)均为3
×
3;但是,图9a所示的普通卷积的感受野901只有3,而图9b所示的空洞卷积的感受野902达到了5。也就是说,对于尺寸为3
×
3的卷积核,图9a所示的普通卷积的感受野为3、扩张率(dilation rate)(卷积核中的点的间隔数量)为1;而图9b所示的空洞卷积的感受野为5、扩张率为2。
180.卷积核还可以在类似图9a或者图9b的平面上进行移动,这里是涉及移位率(stride rate)(步长)概念。比如,每次卷积核移位1格,则对应的移位率为1。
181.此外,还有卷积通道数的概念,就是用多少个卷积核对应的参数去进行卷积分析。理论上,通道数越多,对信号的分析更为全面,精度越高;但是,通道越高,复杂度也越高。比如,一个1
×
320的张量,可以使用24通道卷积运算,输出就是24
×
320的张量。
182.需要说明的是,可以根据实际应用需要,自行定义空洞卷积核大小(例如:针对语音信号,卷积核的大小可以设置为1
×
3)、扩张率、移位率和通道数,本技术实施例对此不作具体限定。
183.如图10所示的频带扩展(或者频带复制)示意图,先重建宽带信号,然后将宽带信号复制到超宽带信号上,最后基于超宽带包络进行整形,图10示出的频域实现方案具体包括:1)在低采样率下,实现一个核心层编码;2)选择低频部分的频谱复制到高频;3)根据提前记录的边界信息(描述高频与低频的能量相关性等),对复制的高频频谱进行增益控制。仅需1-2kbps码率,就可以产生采样率翻倍的效果。
184.下面对本技术实施例提供的基于子带分解和神经网络的语音编解码方法进行具体说明。
185.在一些实施例中,以采样率fs=32000hz的语音信号为例(需要说明的是,本技术
实施例提供的方法也适用于其他采样率的场景,包括但不限于:8000hz、32000hz、48000hz)。同时,假设帧长设置为20ms,因此,对于fs=32000hz,相当于每帧包含640个样本点。
186.下面参考图7所示的流程图,将编码端和解码端进行详细描述。
187.关于编码端的流程如下:
188.1、生成输入信号。
189.针对采样率fs=32000hz的语音信号,对于第n帧的输入信号包括640个样本点,记为输入信号x(n)。
190.2、qmf信号分解。
191.调用qmf分析滤波器(2通道qmf),进行下采样,可以获得两部分子带信号,即低频子带信号x
lb
(n)和高频子带信号x
hb
(n)。低频子带信号x
lb
(n)和高频子带信号x
hb
(n)的有效带宽分别是0-8khz和8-16khz,低频子带信号x
lb
(n)和高频子带信号x
hb
(n)的样本点数为320。
192.3、将低频子带信号x
lb
(n)输入第一nn进行数据压缩。
193.基于低频子带信号x
lb
(n),调用第一nn,生成更低维度的特征向量f
lb
(n)。需要说明的是,x
lb
(n)的维度为320,f
lb
(n)的维度为56,从数据量看,第一nn起到了“降维”的作用,实现数据压缩的功能。
194.参见图11所示的第一nn的网络结构图,下面具体说明第一nn进行数据压缩的流程:
195.首先,调用一个24通道的因果卷积,可以将输入的张量(即向量),扩展为24
×
320的张量。
196.然后,对24
×
320的张量进行预处理。例如,对24
×
320的张量做因子为2的池化(pooling)操作、且激活函数可以为relu,以生成24乘以160的张量。
197.接下来,级联3个不同下采样因子(down_factor)的编码块。以编码块(down_factor=4)为例,可以先执行1个或者多个空洞卷积,每个卷积核大小均固定为1
×
3、移位率(stride rate)为1。此外,1个或者多个空洞卷积的扩张率(dilation rate)可根据需求设置,比如3,当然,本技术实施例也不限制不同空洞卷积设置的扩展率。然后,3个编码块的down_factor分别设置为4、5、8,等效于设置了不同大小的池化因子,起到下采样的作用。最后,3个编码块通道数分别设置为48、96、192。因此,经过3个编码块,24
×
160的张量依次转换成48
×
40、96
×
8和192
×
1的张量。
198.最后,对192
×
1的张量,再经过类似预处理的因果卷积,可以输出一个56维的特征向量f
lb
(n)。
199.4、对高频子带信号x
hb
(n)进行高频分析。
200.高频分析的目的是提取高频子带信号x
hb
(n)的关键信息,生成更低维度的特征向量f
hb
(n)。
201.在一些实施例中,可以参考第3步,引入另一个类似的nn结构,生成低维度的特征向量。相对低频子带信号,高频子带信号对质量的重要程度相对低,因此,针对高频子带信号的nn结构也无需像第一nn那么复杂。如图12所示的针对高频子带信号的nn结构,该nn结构与第一nn的结构类似,但是相比第一nn的结构,大幅度减少通道数。
202.然而,对于高频子带信号,虽然通过如图12所示的nn结构,高频子带信号的数据量减少很多(从320维降为8维),但nn结构的模型复杂度不是最优的。因此,本技术实施例提出另一种方法压缩高频子带信号,即频带扩展(从频带受限的窄带语音信号中恢复宽带语音信号)。下面具体介绍本技术实施例中频带扩展的应用:
203.对于包括320点的高频子带信号x
hb
(n),调用改进型离散余弦变换(mdct,modified discrete cosine transform),生成320个点的mdct系数。具体地,如果是50%交叠,可以将第n+1帧高频数据与第n帧高频数据合并(拼接),计算640个点的mdct,获得320个点的mdct系数。
204.将320个点的mdct系数分成n个子带,这里的子带就是将相邻的多个mdct系数组成一组,320个点的mdct系数可以分成8个子带。例如,可以均匀分配320个点,即每个子带包括的点的数量一致。当然,本技术实施例不可以对320个点进行非均匀划分,比如偏低频的子带包括的mdct系数更少(频率分辨率更高),偏高频的子带包括的mdct系数更多(频率分辨率更低)。
205.根据奈奎斯特(nyquist)采样定律(要从抽样信号中无失真地恢复原信号,抽样频率应大于2倍原信号最高频率,抽样频率小于2倍频谱最高频率时,信号的频谱有混叠,抽样频率大于2倍频谱最高频率时,信号的频谱无混叠),上述320个点的mdct系数表示了8-16khz的频谱。但超宽带语音通信,不一定要求频谱到16khz,比如,如果设置频谱到14khz,只需要考虑前240个点的mdct系数,对应地,子带数可以控制为6。
206.对于每一个子带,计算当前子带中所有mdct系数的平均能量作为子带谱包络(频谱包络是经过频谱各主峰值点的平滑曲线),比如,当前子带中包括的mdct系数为x(n),n=1,2,...,40,则平均能量y=((x(1)2+x(2)2+...+x(40)2)/40)。对于320个点的mdct系数分成8个子带的情况,可以获得8个子带谱包络,这8个子带谱包络就是生成的高频子带信号的特征向量f
hb
(n)。
207.总之,使用上述两种方法(nn结构和频带扩展)中任意一种方法,均可以将320维的高频子带信号,输出为一个8维的特征向量。因此,只需少量数据量,即可表示高频信息,编码效率显著提升。
208.5、量化编码。
209.对于低频子带信号的特征向量f
lb
(n)和高频子带信号的特征向量f
hb
(n),均可以进行标量量化(各分量单独量化)和熵编码的方法。另外,本技术实施例也不限制矢量量化(相邻多个分量组合成一个矢量进行联合量化)和熵编码的技术组合。
210.对特征向量进行量化编码后,可以生成对应的码流。根据实验,通过6-10kbps码率就可以对32khz超宽带信号实现高质量压缩。
211.关于解码端的流程如下:
212.1、量化解码。
213.量化解码是量化编码的逆过程。对于收到码流,先进行熵解码,并通过查量化表,获得低频的特征向量的估计值f
′
lb
(n)和高频的特征向量的估计值f
′
hb
(n)。
214.2、将低频的特征向量的估计值f
′
lb
(n)输入第二nn。
215.基于低频的特征向量的估计值f
′
lb
(n),调用如图13所示的第二nn,生成低频子带信号的估计值x
′
lb
(n)。
216.其中,第二nn与第一nn类似,比如因果卷积、第二nn中的后处理结构与第一nn中的预处理类似。解码块的结构与编码端的编码块是对称地:编码端的编码块是先做空洞卷积再池化完成下采样,解码端的解码块是先进行池化完成上采样,再做空洞卷积。
217.3、对高频的特征向量的估计值f
′
hb
(n)进行高频重建。
218.与编码端的高频分析类似,本技术实施例中的高频重建包含两种方案。
219.高频重建的第一种实现,对应于编码端中高频分析的第一种实现(对应图12所示的nn结构)。基于高频的特征向量的估计值f
′
hb
(n),调用深度神经网络,生成高频子带信号的估计值x
′
hb
(n)。
220.深度神经网络的结构与高频分析的第一种实现(图12)类似,比如因果卷积,后处理结构类似于高频分析的第一种实现中的预处理。
221.解码块结构与编码端的编码块是对称地:编码端的编码块是先做空洞卷积再池化完成下采样,解码端的解码块是先进行池化完成上采样,再做空洞卷积。
222.高频重建的第二种实现,对应于编码端高频分析的第一种实现(对应频带扩展技术)。基于码流中解码出来的8个子带谱包络,即高频的特征向量的估计值f
′
hb
(n)进行如下操作:
223.先将解码端生成的低频子带信号的估计值x
′
lb
(n),也进行编码端类似的640点的mdct变换,生成320个点的mdct系数(即低频部分的mdct系数)。
224.然后,将由x
′
lb
(n)生成的320个点的mdct系数进行复制,生成高频部分的mdct系数。参考语音信号基本特征,低频部分谐波更多,高频部分谐波更少。因此,为了避免简单复制,造成人工生成的高频部分的mdct谱包含过多谐波,可以将低频子带依赖的320个点的mdct系数中的后160点作为母版,频谱拷贝2次,生成320个点的高频子带信号的mdct系数的参考值。
225.接下来,调用前面获得的8个子带谱包络(即通过查询量化表后得到的8个子带谱包络),这8个子带谱包络对应8个高频子带,并将生成的320个点的高频子带信号的mdct系数的参考值分为8个参考高频子带,分带地,基于一个高频子带与对应的参考高频子带,对生成的320点的高频子带信号的mdct系数的参考值进行增益控制(频域上就是做乘法),例如根据高频子带的平均能量与对应的参考高频子带的平均能量计算增益因子,将该对应的参考高频子带中的每个点对应的mdct系数乘以增益因子,确保解码虚拟生成的高频mdct系数的能量,与编码端原始的系数能量接近。
226.例如,假定复制过去生成的高频子带信号的高频子带的平均能量是y_l,当前要做增益控制的高频子带(即基于码流解码出来的子带谱包络对应的高频子带)的平均能量是y_h,则计算一个增益因子a=sqrt(y_h/y_l)。有了增益因子a后,直接将从复制生成的高频子带中的每个点均乘以a。
227.最后,调用mdct反变换,生成高频子带信号的估计值x
′
hb
(n)。对增益后的320点的mdct系数进行mdct反变换,生成640个点的估计值,通过交叠,取有效的前320个点的估计值作为x
′
hb
(n)。
228.4、合成滤波器
229.在解码端获得了低频子带信号的估计值x
′
lb
(n)和高频子带信号的估计值x
′
hb
(n)之后,只需要上采样并调用qmf合成滤波器,就可以生成640个点的重建信号x
′
(n)。
230.本技术实施例可以通过采集数据,对编码端和解码端的相关网络进行联合训练,获得最优参数。用户仅需准备好数据和设置相应的网络结构,在后台完成训练后,即可将训练好的模型投入使用。
231.综上,本技术实施例提供的基于子带分解和神经网络的语音编解码方法通过信号分解、信号处理技术与深度神经网络的有机结合,在保证音频质量、且复杂度可接受的情况下,较信号处理方案显著提升提高编码效率。
232.至此已经结合本技术实施例提供的终端设备的示例性应用和实施,说明本技术实施例提供的音频处理方法。本技术实施例还提供音频处理装置,实际应用中,音频处理装置中的各功能模块可以由电子设备(如终端设备、服务器或服务器集)的硬件资源,如处理器等计算资源、通信资源(如用于支持实现光缆、蜂窝等各种方式通信)、存储器协同实现。图3示出了存储在存储器550中的音频处理装置555,其可以是程序和插件等形式的软件,例如,软件c/c++、java等编程语言设计的软件模块、c/c++、java等编程语言设计的应用软件或大型软件系统中的专用软件模块、应用程序接口、插件、云服务等实现方式,下面对不同的实现方式举例说明。
233.其中,音频处理装置555包括一系列的模块,包括分解模块5551、特征提取模块5552、高频分析模块5553、编码模块5554。下面继续说明本技术实施例提供的音频处理装置555中各个模块配合实现音频编码的方案。
234.分解模块,用于对音频信号进行子带分解处理,得到所述音频信号的低频子带信号以及高频子带信号;特征提取模块,用于对所述低频子带信号进行特征提取处理,得到所述低频子带信号的低频特征;高频分析模块,用于对所述高频子带信号进行高频分析处理,得到所述高频子带信号的高频特征;其中,所述高频特征的特征维度低于所述低频特征的特征维度;编码模块,用于对所述低频特征进行量化编码处理,得到所述音频信号的低频码流,并对所述高频特征进行量化编码处理,得到所述音频信号的高频码流。
235.在一些实施例中,所述分解模块还用于对所述音频信号进行采样处理,得到采样信号,其中,所述采样信号包括采样得到的多个样本点;对所述采样信号进行低通滤波处理,得到低通滤波信号;对所述低通滤波信号进行下采样处理,得到所述音频信号的低频子带信号;对所述采样信号进行高通滤波处理,得到高通滤波信号;对所述高通滤波信号进行下采样处理,得到所述音频信号的高频子带信号。
236.在一些实施例中,所述特征提取模块还用于对所述低频子带信号进行卷积处理,得到所述低频子带信号的卷积特征;对所述卷积特征进行池化处理,得到所述低频子带信号的池化特征;对所述池化特征进行下采样处理,得到所述低频子带信号的下采样特征;对所述下采样特征进行卷积处理,得到所述低频子带信号的低频特征。
237.在一些实施例中,所述下采样处理是通过多个级联的编码层实现的;所述特征提取模块还用于通过所述多个级联的编码层中的第一个编码层,对所述池化特征进行下采样处理;将所述第一个编码层的下采样结果输出到后续级联的编码层,通过所述后续级联的编码层继续进行下采样处理和下采样结果输出,直至输出到最后一个编码层;将所述最后一个编码层输出的下采样结果作为所述低频子带信号的下采样特征。
238.在一些实施例中,所述高频分析模块还用于调用第一神经网络模型,通过所述第一神经网络模型对所述高频子带信号进行特征提取处理,得到所述高频子带信号的高频特
征;或者,对所述高频子带信号进行频带扩展处理,得到所述高频子带信号的高频特征。
239.在一些实施例中,所述高频分析模块还用于基于所述高频子带信号包括的多个样本点进行频域变换处理,得到所述多个样本点分别对应的变换系数;将所述多个样本点分别对应的变换系数划分为多个子带;对每个所述子带包括的变换系数进行均值处理,得到每个所述子带对应的平均能量,并将所述平均能量作为每个所述子带对应的子带谱包络;将所述多个子带分别对应的子带谱包络确定为所述高频子带信号的高频特征。
240.在一些实施例中,所述高频分析模块还用于获取参考音频信号的参考高频子带信号,其中,所述参考音频信号是与所述音频信号相邻的音频信号;基于所述参考高频子带信号包括的多个样本点以及所述高频子带信号包括的多个样本点,对所述高频子带信号包括的多个样本点进行离散余弦变换处理,得到所述高频子带信号包括的多个样本点分别对应的变换系数。
241.在一些实施例中,所述高频分析模块还用于确定每个所述子带包括的样本点对应的变换系数的平方和;将所述平方和与所述子带包括的样本点的数量的比值,确定为得到每个所述子带对应的平均能量。
242.在一些实施例中,所述编码模块还用于对所述低频特征进行量化处理,得到所述低频特征的索引值;对所述低频特征的索引值进行熵编码处理,得到所述音频信号的低频码流;所述对所述高频特征进行量化编码处理,得到所述音频信号的高频码流,包括:对所述高频特征进行量化处理,得到所述高频特征的索引值;对所述高频特征的索引值进行熵编码处理,得到所述音频信号的高频码流。
243.其中,音频处理装置555包括一系列的模块,包括解码模块5555、特征重建模块5556、高频重建模块5557以及合成模块5558。下面继续说明本技术实施例提供的音频处理装置555中各个模块配合实现音频解码的方案。
244.解码模块,用于对低频码流进行量化解码处理,得到所述低频码流对应的低频特征,并对高频码流进行量化解码处理,得到所述高频码流对应的高频特征;
245.其中,所述低频码流以及所述高频码流是对音频信号经过子带分解处理后得到的子带信号分别进行编码得到的,所述高频特征的特征维度低于所述低频特征的特征维度;
246.特征重建模块,用于对所述低频特征进行特征重建处理,得到所述低频特征对应的低频子带信号;
247.高频重建模块,用于对所述高频特征进行高频重建处理,得到所述高频特征对应的高频子带信号;
248.合成模块,用于对所述低频子带信号以及所述高频子带信号进行子带合成处理,得到所述低频码流和所述高频码流对应的合成音频信号。
249.在一些实施例中,所述特征重建模块还用于对所述低频特征进行卷积处理,得到所述低频特征的卷积特征;对所述卷积特征进行上采样处理,得到所述低频特征的上采样特征;对所述上采样特征进行池化处理,得到所述低频特征的池化特征;对所述池化特征进行卷积处理,得到所述低频特征对应的低频子带信号。
250.在一些实施例中,所述上采样处理是通过多个级联的解码层实现的;所述特征重建模块还用于通过所述多个级联的解码层中的第一个解码层,对所述卷积特征进行上采样处理;将所述第一个解码层的上采样结果输出到后续级联的解码层,通过所述后续级联的
解码层继续进行上采样处理和上采样结果输出,直至输出到最后一个解码层;将所述最后一个解码层输出的上采样结果作为所述低频特征的上采样特征。
251.在一些实施例中,所述高频重建模块还用于调用第二神经网络模型,通过所述第二神经网络模型对所述高频特征进行特征重建处理,得到所述高频特征对应的高频子带信号;或者,对所述高频特征进行频带扩展的逆处理,得到所述高频特征对应的高频子带信号。
252.在一些实施例中,所述高频重建模块还用于基于所述低频子带信号包括的多个样本点进行频域变换处理,得到所述多个样本点分别对应的变换系数;对所述多个样本点分别对应的变换系数中的后半部分的变换系数进行频谱复制处理,得到参考高频子带信号的参考变换系数;基于所述高频特征对应的子带谱包络,对所述参考高频子带信号的参考变换系数进行增益处理,得到增益后的所述参考变换系数;对增益后的所述参考变换系数进行反频域变换处理,得到所述高频特征对应的高频子带信号。
253.在一些实施例中,所述高频重建模块还用于基于所述高频特征对应的子带谱包络,将所述参考高频子带信号的参考变换系数划分为多个子带;针对所述多个子带中的任意所述子带执行以下处理:确定所述子带谱包络中与所述子带对应的第一平均能量,并确定所述子带对应的第二平均能量;基于所述第一平均能量与所述第二平均能量的比值,确定增益因子;将所述增益因子与所述子带包括的每个所述参考变换系数相乘,得到增益后的所述参考变换系数。
254.在一些实施例中,所述解码模块还用于对所述低频码流进行熵解码处理,得到所述低频码流对应的索引值;对所述低频码流对应的索引值进行逆量化处理,得到所述低频码流对应的低频特征;对所述高频码流进行熵解码处理,得到所述高频码流对应的索引值;对所述高频码流对应的索引值进行逆量化处理,得到所述高频码流对应的高频特征。
255.在一些实施例中,所述合成模块还用于对所述低频子带信号进行上采样处理,得到低通滤波信号;对所述高频子带信号进行上采样处理,得到高频滤波信号;对所述低通滤波信号以及所述高频滤波信号进行滤波合成处理,得到所述合成音频信号。
256.本技术实施例提供了一种计算机程序产品或计算机程序,该计算机程序产品或计算机程序包括计算机指令,该计算机指令存储在计算机可读存储介质中。电子设备的处理器从计算机可读存储介质读取该计算机指令,处理器执行该计算机指令,使得该电子设备执行本技术实施例上述的音频处理方法。
257.本技术实施例提供一种存储有可执行指令的计算机可读存储介质,其中存储有可执行指令,当可执行指令被处理器执行时,将引起处理器执行本技术实施例提供的音频处理方法,例如,如图4-5示出的音频处理方法。
258.在一些实施例中,计算机可读存储介质可以是fram、rom、prom、eprom、eeprom、闪存、磁表面存储器、光盘、或cd-rom等存储器;也可以是包括上述存储器之一或任意组合的各种设备。
259.在一些实施例中,可执行指令可以采用程序、软件、软件模块、脚本或代码的形式,按任意形式的编程语言(包括编译或解释语言,或者声明性或过程性语言)来编写,并且其可按任意形式部署,包括被部署为独立的程序或者被部署为模块、组件、子例程或者适合在计算环境中使用的其它单元。
260.作为示例,可执行指令可以但不一定对应于文件系统中的文件,可以可被存储在保存其它程序或数据的文件的一部分,例如,存储在超文本标记语言(html,hyper text markup language)文档中的一个或多个脚本中,存储在专用于所讨论的程序的单个文件中,或者,存储在多个协同文件(例如,存储一个或多个模块、子程序或代码部分的文件)中。
261.作为示例,可执行指令可被部署为在一个计算设备上执行,或者在位于一个地点的多个计算设备上执行,又或者,在分布在多个地点且通过通信网络互连的多个计算设备上执行。
262.可以理解的是,在本技术实施例中,涉及到用户信息等相关的数据,当本技术实施例运用到具体产品或技术中时,需要获得用户许可或者同意,且相关数据的收集、使用和处理需要遵守相关国家和地区的相关法律法规和标准。
263.以上所述,仅为本技术的实施例而已,并非用于限定本技术的保护范围。凡在本技术的精神和范围之内所作的任何修改、等同替换和改进等,均包含在本技术的保护范围之内。
技术特征:
1.一种音频处理方法,其特征在于,所述方法包括:对音频信号进行子带分解处理,得到所述音频信号的低频子带信号以及高频子带信号;对所述低频子带信号进行特征提取处理,得到所述低频子带信号的低频特征;对所述高频子带信号进行高频分析处理,得到所述高频子带信号的高频特征;其中,所述高频特征的特征维度低于所述低频特征的特征维度;对所述低频特征进行量化编码处理,得到所述音频信号的低频码流,并对所述高频特征进行量化编码处理,得到所述音频信号的高频码流。2.根据权利要求1所述的方法,其特征在于,所述对音频信号进行子带分解处理,得到所述音频信号的低频子带信号以及高频子带信号,包括:对所述音频信号进行采样处理,得到采样信号,其中,所述采样信号包括采样得到的多个样本点;对所述采样信号进行低通滤波处理,得到低通滤波信号;对所述低通滤波信号进行下采样处理,得到所述音频信号的低频子带信号;对所述采样信号进行高通滤波处理,得到高通滤波信号;对所述高通滤波信号进行下采样处理,得到所述音频信号的高频子带信号。3.根据权利要求1所述的方法,其特征在于,所述对所述低频子带信号进行特征提取处理,得到所述低频子带信号的低频特征,包括:对所述低频子带信号进行卷积处理,得到所述低频子带信号的卷积特征;对所述卷积特征进行池化处理,得到所述低频子带信号的池化特征;对所述池化特征进行下采样处理,得到所述低频子带信号的下采样特征;对所述下采样特征进行卷积处理,得到所述低频子带信号的低频特征。4.根据权利要求3所述的方法,其特征在于,所述下采样处理是通过多个级联的编码层实现的;所述对所述池化特征进行下采样处理,得到所述低频子带信号的下采样特征,包括:通过所述多个级联的编码层中的第一个编码层,对所述池化特征进行下采样处理;将所述第一个编码层的下采样结果输出到后续级联的编码层,通过所述后续级联的编码层继续进行下采样处理和下采样结果输出,直至输出到最后一个编码层;将所述最后一个编码层输出的下采样结果作为所述低频子带信号的下采样特征。5.根据权利要求1所述的方法,其特征在于,所述对所述高频子带信号进行高频分析处理,得到所述高频子带信号的高频特征,包括:调用第一神经网络模型,通过所述第一神经网络模型对所述高频子带信号进行特征提取处理,得到所述高频子带信号的高频特征;或者,对所述高频子带信号进行频带扩展处理,得到所述高频子带信号的高频特征。6.根据权利要求5所述的方法,其特征在于,所述对所述高频子带信号进行频带扩展处理,得到所述高频子带信号的高频特征,包括:基于所述高频子带信号包括的多个样本点进行频域变换处理,得到所述多个样本点分别对应的变换系数;将所述多个样本点分别对应的变换系数划分为多个子带;
对每个所述子带包括的变换系数进行均值处理,得到每个所述子带对应的平均能量,并将所述平均能量作为每个所述子带对应的子带谱包络;将所述多个子带分别对应的子带谱包络确定为所述高频子带信号的高频特征。7.根据权利要求6所述的方法,其特征在于,所述基于所述高频子带信号包括的多个样本点进行频域变换处理,得到所述多个样本点分别对应的变换系数,包括:获取参考音频信号的参考高频子带信号,其中,所述参考音频信号是与所述音频信号相邻的音频信号;基于所述参考高频子带信号包括的多个样本点以及所述高频子带信号包括的多个样本点,对所述高频子带信号包括的多个样本点进行离散余弦变换处理,得到所述高频子带信号包括的多个样本点分别对应的变换系数。8.根据权利要求6所述的方法,其特征在于,所述对每个所述子带包括的变换系数进行均值处理,得到每个所述子带对应的平均能量,包括:确定每个所述子带包括的样本点对应的变换系数的平方和;将所述平方和与所述子带包括的样本点的数量的比值,确定为得到每个所述子带对应的平均能量。9.根据权利要求1所述的方法,其特征在于,所述对所述低频特征进行量化编码处理,得到所述音频信号的低频码流,包括:对所述低频特征进行量化处理,得到所述低频特征的索引值;对所述低频特征的索引值进行熵编码处理,得到所述音频信号的低频码流;所述对所述高频特征进行量化编码处理,得到所述音频信号的高频码流,包括:对所述高频特征进行量化处理,得到所述高频特征的索引值;对所述高频特征的索引值进行熵编码处理,得到所述音频信号的高频码流。10.一种音频处理方法,其特征在于,所述方法包括:对低频码流进行量化解码处理,得到所述低频码流对应的低频特征,并对高频码流进行量化解码处理,得到所述高频码流对应的高频特征;其中,所述低频码流以及所述高频码流是对音频信号经过子带分解处理后得到的子带信号分别进行编码得到的,所述高频特征的特征维度低于所述低频特征的特征维度;对所述低频特征进行特征重建处理,得到所述低频特征对应的低频子带信号;对所述高频特征进行高频重建处理,得到所述高频特征对应的高频子带信号;对所述低频子带信号以及所述高频子带信号进行子带合成处理,得到所述低频码流和所述高频码流对应的合成音频信号。11.根据权利要求10所述的方法,其特征在于,所述对所述低频特征进行特征重建处理,得到所述低频特征对应的低频子带信号,包括:对所述低频特征进行卷积处理,得到所述低频特征的卷积特征;对所述卷积特征进行上采样处理,得到所述低频特征的上采样特征;对所述上采样特征进行池化处理,得到所述低频特征的池化特征;对所述池化特征进行卷积处理,得到所述低频特征对应的低频子带信号。12.根据权利要求11所述的方法,其特征在于,所述上采样处理是通过多个级联的解码层实现的;
所述对所述卷积特征进行上采样处理,得到所述低频特征的上采样特征,包括:通过所述多个级联的解码层中的第一个解码层,对所述卷积特征进行上采样处理;将所述第一个解码层的上采样结果输出到后续级联的解码层,通过所述后续级联的解码层继续进行上采样处理和上采样结果输出,直至输出到最后一个解码层;将所述最后一个解码层输出的上采样结果作为所述低频特征的上采样特征。13.根据权利要求10所述的方法,其特征在于,所述对所述高频特征进行高频重建处理,得到所述高频特征对应的高频子带信号,包括:调用第二神经网络模型,通过所述第二神经网络模型对所述高频特征进行特征重建处理,得到所述高频特征对应的高频子带信号;或者,对所述高频特征进行频带扩展的逆处理,得到所述高频特征对应的高频子带信号。14.根据权利要求13所述的方法,其特征在于,所述对所述高频特征进行频带扩展的逆处理,得到所述高频特征对应的高频子带信号,包括:基于所述低频子带信号包括的多个样本点进行频域变换处理,得到所述多个样本点分别对应的变换系数;对所述多个样本点分别对应的变换系数中的后半部分的变换系数进行频谱复制处理,得到参考高频子带信号的参考变换系数;基于所述高频特征对应的子带谱包络,对所述参考高频子带信号的参考变换系数进行增益处理,得到增益后的所述参考变换系数;对增益后的所述参考变换系数进行反频域变换处理,得到所述高频特征对应的高频子带信号。15.根据权利要求14所述的方法,其特征在于,所述基于所述高频特征对应的子带谱包络,对所述参考高频子带信号的参考变换系数进行增益处理,得到增益后的所述参考变换系数,包括:基于所述高频特征对应的子带谱包络,将所述参考高频子带信号的参考变换系数划分为多个子带;针对所述多个子带中的任意所述子带执行以下处理:确定所述子带谱包络中与所述子带对应的第一平均能量,并确定所述子带对应的第二平均能量;基于所述第一平均能量与所述第二平均能量的比值,确定增益因子;将所述增益因子与所述子带包括的每个所述参考变换系数相乘,得到增益后的所述参考变换系数。16.根据权利要求10所述的方法,其特征在于,所述对低频码流进行量化解码处理,得到所述低频码流对应的低频特征,包括:对所述低频码流进行熵解码处理,得到所述低频码流对应的索引值;对所述低频码流对应的索引值进行逆量化处理,得到所述低频码流对应的低频特征;所述对高频码流进行量化解码处理,得到所述高频码流对应的高频特征,包括:对所述高频码流进行熵解码处理,得到所述高频码流对应的索引值;对所述高频码流对应的索引值进行逆量化处理,得到所述高频码流对应的高频特征。17.根据权利要求10所述的方法,其特征在于,所述对所述低频子带信号以及所述高频
子带信号进行子带合成处理,得到所述低频码流和所述高频码流对应的合成音频信号,包括:对所述低频子带信号进行上采样处理,得到低通滤波信号;对所述高频子带信号进行上采样处理,得到高频滤波信号;对所述低通滤波信号以及所述高频滤波信号进行滤波合成处理,得到所述合成音频信号。18.一种音频处理装置,其特征在于,所述装置包括:分解模块,用于对音频信号进行子带分解处理,得到所述音频信号的低频子带信号以及高频子带信号;特征提取模块,用于对所述低频子带信号进行特征提取处理,得到所述低频子带信号的低频特征;高频分析模块,用于对所述高频子带信号进行高频分析处理,得到所述高频子带信号的高频特征;其中,所述高频特征的特征维度低于所述低频特征的特征维度;编码模块,用于对所述低频特征进行量化编码处理,得到所述音频信号的低频码流,并对所述高频特征进行量化编码处理,得到所述音频信号的高频码流。19.一种电子设备,其特征在于,所述电子设备包括:存储器,用于存储可执行指令;处理器,用于执行所述存储器中存储的可执行指令时,实现权利要求1至17任一项所述的音频处理方法。20.一种计算机可读存储介质,其特征在于,存储有可执行指令,用于被处理器执行时实现权利要求1至17任一项所述的音频处理方法。21.一种计算机程序产品,包括计算机程序或指令,其特征在于,所述计算机程序或指令被处理器执行时实现权利要求1至17任一项所述的音频处理方法。
技术总结
本申请提供了一种音频处理方法、装置、电子设备、计算机可读存储介质及计算机程序产品;方法包括:对音频信号进行子带分解处理,得到音频信号的低频子带信号以及高频子带信号;对低频子带信号进行特征提取处理,得到低频子带信号的低频特征;对高频子带信号进行高频分析处理,得到高频子带信号的高频特征;其中,高频特征的特征维度低于低频特征的特征维度;对低频特征进行量化编码处理,得到音频信号的低频码流,并对高频特征进行量化编码处理,得到音频信号的高频码流。通过本申请,能够提高音频编码效率。频编码效率。频编码效率。