本发明实施例涉及音频处理技术领域,具体涉及空间声渲染方法、装置和电子设备。
背景技术:
近年来,随着高清视频的不断发展,从2k到4k,甚至8k,还有伴随着虚拟现实vr、ar的发展,人们对音频的听觉要求也随之提高。人们已不再满足于流行多年的立体声、5.1、7.1等音响效果,开始追求更具有沉浸感、真实感的3d音效或沉浸式音效。目前,沉浸式音频处理主要基于通道(channel-basedaudio,cba)、对象音频(object-basedaudio,oba)和ambisonics场景音频(scene-basedaudio,sba)等技术进行处理,包含音频制作、编解码、打包以及渲染等技术。
ambisonics利用球谐函数记录声场并驱动扬声器,具有严格的扬声器排布要求,能够在扬声器中心位置高质量重建原始声场。在渲染移动音源时,hoa(higherorderambisonics)会营造出更加流畅,平滑的听感。此外,幅度矢量合成(vectorbasedamplitudepanning,vbap)基于三维空间中的正弦法则,利用空间中3个临近的扬声器形成三维声音矢量,不会影响低频的双耳时间差(itd)或者高频的频谱线索,对声音在三维空间中的定位更加精准。由于该算法简单,vbap成为最常用的多声道三维音频处理技术。
混合式的ambisonic-vbap方法被称为“全方位ambisonic解码”(allrad),简而言之,计算一种用于均匀虚拟扬声器阵列的解码器然后用vbap映射虚拟阵列的信号到真实扬声器阵列。对于给定平移方向和扬声器阵列,vbap总是生成尽可能小的能量角扩散,因此虚拟声源的大小取决于方向。但这与ambisonic方法直接相悖,后者试图保持恒定的虚拟声源大小,与方向无关。为了缓解这种情况,需要虚拟扬声器的数量远远多于真正的扬声器数量,或者对于间距大的扬声器群组,插入虚拟扬声器。但是事实上,恒定能量仍然还是被vbap破坏了。
技术实现要素:
本发明实施例的目的在于提供空间声渲染方法、装置和电子设备,用以解决现有vbap处理效果不佳的问题。
为实现上述目的,本发明实施例主要提供如下技术方案:
第一方面,本发明实施例提供了一种空间声渲染方法,包括:
获取给定的用于定义扬声器阵列解码渲染质量的至少两个客观指标,根据所述至少两个客观指标生成目标函数;
根据扬声器的数量和位置得到至少两个解码系数;
根据所述至少两个解码系数计算所述目标函数的值,通过非线性优化得到权重系数;
根据所述至少两个解码系数和权重系数得到最终加权解码系数;
根据所述扬声器的数量和位置构造特征向量,并以所述最终加权解码系数作为目标向量训练深度学习模型,通过所述深度学习模型预测所述至少两种解码系数的权重;
根据所述至少两种解码系数的权重进行空间声渲染。
根据本发明的一个实施例,所述至少两个客观指标包括以下指标中的至少两个指标:
速度局部化矢量和声源方向的均方根误差;
能量局部化矢量和声源方向的均方根误差;
速度局部化矢量长度和1的均方根误差;
能量局部化矢量长度和1的均方根误差;
扬声器整体的重新生成的声压和能量增益的标准差。
根据本发明的一个实施例,所述至少两个解码系数包括allrad沉浸式音频渲染方法得到的解码系数和epad沉浸式音频渲染方法得到的解码系数。
根据本发明的一个实施例,所述最终加权解码系数为所述allrad沉浸式音频渲染方法得到的解码系数和所述epad沉浸式音频渲染方法得到的解码系数的加权求和。
第二方面,本发明实施例还提供一种空间声渲染装置,包括:
获取模块,用于获取给定的用于定义扬声器阵列解码渲染质量的至少两个客观指标,根据所述至少两个客观指标生成目标函数;
控制处理模块,用于根据扬声器的数量和位置得到至少两个解码系数,并根据所述至少两个解码系数计算所述目标函数的值,通过非线性优化得到权重系数,进而根据所述至少两个解码系数和权重系数得到最终加权解码系数;所述控制处理模块还用于根据所述扬声器的数量和位置构造特征向量,并以所述最终加权解码系数作为目标向量训练深度学习模型,通过所述深度学习模型预测所述至少两种解码系数的权重;
渲染模块,用于根据所述至少两种解码系数的权重进行空间声渲染。
根据本发明的一个实施例,至少两个客观指标包括以下指标中的至少两个指标:
速度局部化矢量和声源方向的均方根误差;
能量局部化矢量和声源方向的均方根误差;
速度局部化矢量长度和1的均方根误差;
能量局部化矢量长度和1的均方根误差;
扬声器整体的重新生成的声压和能量增益的标准差。
根据本发明的一个实施例,所述至少两个解码系数包括allrad沉浸式音频渲染方法得到的解码系数和epad沉浸式音频渲染方法得到的解码系数。
根据本发明的一个实施例,所述最终加权解码系数为所述allrad沉浸式音频渲染方法得到的解码系数和所述epad沉浸式音频渲染方法得到的解码系数的加权求和。
第三方面,本发明实施例还提供一种电子设备,包括:至少一个处理器和至少一个存储器;所述存储器用于存储一个或多个程序指令;所述处理器,用于运行一个或多个程序指令,用以执行如第一方面所述的空间声渲染方法。
第四方面,本发明实施例还提供一种计算机可读存储介质,包含一个或多个程序指令,所述一个或多个程序指令用于被执行如第一方面所述的空间声渲染方法。
本发明实施例提供的技术方案至少具有如下优点:
本发明实施例提供的空间声渲染方法、装置和电子设备,通过输入扬声器的数量和位置信息,自动的生成最优的参数,提升空间声渲染效果。
附图说明
图1为本发明实施例的空间声渲染方法的流程图。
图2为本发明实施例的空间声渲染装置的结构框图。
具体实施方式
以下由特定的具体实施例说明本发明的实施方式,熟悉此技术的人士可由本说明书所揭露的内容轻易地了解本发明的其他优点及功效。
以下描述中,为了说明而不是为了限定,提出了诸如特定系统结构、接口、技术之类的具体细节,以便透彻理解本发明。然而,本领域的技术人员应当清楚,在没有这些具体细节的其它实施例中也可以实现本发明。在其它情况中,省略对众所周知的系统、电路以及方法的详细说明,以免不必要的细节妨碍本发明的描述。
在本发明的描述中,需要理解的是,术语“第一”和“第二”仅用于描述目的,而不能理解为指示或暗示相对重要性。
在本发明的描述中,需要说明的是,除非另有明确的规定和限定,术语“相连”和“连接”应做广义理解,例如可以是直接相连,也可以通过中间媒介间接相连。对于本领域的普通技术人员而言,可以具体情况理解上述术语在本发明中的具体含义。
图1为本发明实施例的空间声渲染方法的流程图。如图1所示,本发明实施例的空间声渲染方法,包括:
s1:获取给定的用于定义扬声器阵列解码渲染质量的至少两个客观指标,根据至少两个客观指标生成目标函数。
其中,s代表所有扬声器的集合,gi是第i个扬声器的增益。ui是单位向量指向扬声器。p和e代表整体的重新生成的声压和能量增益。rv是速度局部化矢量,re是能量局部化矢量。
在本发明的一个实施例中,客观指标包括:
rv和声源方向的均方根误差o1;
re和声源方向的均方根误差o2;
rv长度和1的均方根误差o3;
re长度和1的均方根误差o4;
p和e的标准差op和oe。
其中,目标函数是上述客观指标的加权求和。
o=w1*o1+w2*o2+w3*o3+w4*o4+w5*op+w6*oe。
其中,w1、w2、w3、w4、w5和w6均为常数。
s2:根据扬声器的数量和位置得到至少两个解码系数。其中,输入的扬声器数量和位置可以通过遍历的方法获得,比如扬声器数量可以是从4到256。
具体地,针对不同扬声器数量和位置,用至少两种不同的解码器生成解码系数。本实施例中,至少两个解码系数包括allrad沉浸式音频渲染方法得到的解码系数和epad沉浸式音频渲染方法得到的解码系数。
s3:根据至少两个解码系数计算目标函数的值,通过非线性优化得到权重系数。非线性优化可以通过levenberg-marquardt(lm)又称莱文伯格-马夸特方法来实现,lm算法结合高斯-牛顿算法以及梯度下降法的优点,提供非线性最小化(局部最小)的数值解。
s4:根据至少两个解码系数和权重系数得到最终加权解码系数。
具体地,通过以下公式计算最终加权解码系数:
gi,f=wallrad*gi,allrad+wepad*gi,epad
其中,gi,f表示最终加权解码系数,gi,allrad表示allrad对每个通道生成的解码系数,gi,epad表示epad对每个通道生成的解码系数,wallrad表示对应allrad解码系数的权重?,wepad表示对应epad解码系数的权重。
s5:根据扬声器的数量和位置构造特征向量,并以最终加权解码系数作为目标向量训练深度学习模型,通过深度学习模型预测至少两种解码系数的权重。
具体地,在本实施例中,深度学习模型采用卷积神经网络,卷积神经网络至少为m层,其中m为大于等于2的正整数。
根据训练后的模型预测得到的估计权重与预先确定的实际权重,对训练过程中的模型参数进行调整,以使得调整后预测得到的估计权重与实际权重之间的差值满足误差允许条件。
s6:根据至少两种解码系数的权重进行空间声渲染。
具体地,生成最终加权解码系数,即每个扬声器的最终增益系数。
本发明实施例提供的空间声渲染方法、装置和电子设备,通过输入扬声器的数量和位置信息,自动的生成最优的参数,提升空间声渲染效果。
图2为本发明实施例的空间声渲染装置的结构框图。如图2所示,本发明实施例的空间声渲染装置,包括:获取模块100、控制处理模块200和渲染模块300。
其中,获取模块100用于获取给定的用于定义扬声器阵列解码渲染质量的至少两个客观指标,根据至少两个客观指标生成目标函数。控制处理模块200用于根据扬声器的数量和位置得到至少两个解码系数,并根据至少两个解码系数计算目标函数的值,通过非线性优化得到权重系数,进而根据至少两个解码系数和权重系数得到最终加权解码系数。控制处理模块200还用于根据扬声器的数量和位置构造特征向量,并以最终加权解码系数作为目标向量训练深度学习模型,通过深度学习模型预测至少两种解码系数的权重。渲染模块300用于根据至少两种解码系数的权重进行空间声渲染。
在本发明的一个实施例中,至少两个客观指标包括以下指标中的至少两个指标:
速度局部化矢量和声源方向的均方根误差;
能量局部化矢量和声源方向的均方根误差;
速度局部化矢量长度和1的均方根误差;
能量局部化矢量长度和1的均方根误差;
扬声器整体的重新生成的声压和能量增益的标准差。
在本发明的一个实施例中,至少两个解码系数包括allrad沉浸式音频渲染方法得到的解码系数和epad沉浸式音频渲染方法得到的解码系数。
在本发明的一个实施例中,最终加权解码系数为allrad沉浸式音频渲染方法得到的解码系数和epad沉浸式音频渲染方法得到的解码系数的加权求和。
需要说明的是,本发明实施例的空间声渲染装置的具体实施方式与本发明实施例的空间声渲染方法的具体实施方式类似,具体参见空间声渲染方法部分的描述,为了减少冗余,不做赘述。
另外,本发明实施例的空间声渲染装置的其它构成以及作用对于本领域的技术人员而言都是已知的,为了减少冗余,不做赘述。
本发明实施例还提供一种电子设备,包括:至少一个处理器和至少一个存储器;所述存储器用于存储一个或多个程序指令;所述处理器,用于运行一个或多个程序指令,用以执行如第一方面所述的空间声渲染方法。
本发明所公开的实施例提供一种计算机可读存储介质,所述计算机可读存储介质中存储有计算机程序指令,当所述计算机程序指令在计算机上运行时,使得计算机执行上述的空间声渲染方法。
在本发明实施例中,处理器可以是一种集成电路芯片,具有信号的处理能力。处理器可以是通用处理器、数字信号处理器(digitalsignalprocessor,简称dsp)、专用集成电路(applicationspecificintegratedcircuit,简称asic)、现场可编程门阵列(fieldprogrammablegatearray,简称fpga)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。
可以实现或者执行本发明实施例中的公开的各方法、步骤及逻辑框图。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。结合本发明实施例所公开的方法的步骤可以直接体现为硬件译码处理器执行完成,或者用译码处理器中的硬件及软件模块组合执行完成。软件模块可以位于随机存储器,闪存、只读存储器,可编程只读存储器或者电可擦写可编程存储器、寄存器等本领域成熟的存储介质中。处理器读取存储介质中的信息,结合其硬件完成上述方法的步骤。
存储介质可以是存储器,例如可以是易失性存储器或非易失性存储器,或可包括易失性和非易失性存储器两者。
其中,非易失性存储器可以是只读存储器(read-onlymemory,简称rom)、可编程只读存储器(programmablerom,简称prom)、可擦除可编程只读存储器(erasableprom,简称eprom)、电可擦除可编程只读存储器(electricallyeprom,简称eeprom)或闪存。
易失性存储器可以是随机存取存储器(randomaccessmemory,简称ram),其用作外部高速缓存。通过示例性但不是限制性说明,许多形式的ram可用,例如静态随机存取存储器(staticram,简称sram)、动态随机存取存储器(dynamicram,简称dram)、同步动态随机存取存储器(synchronousdram,简称sdram)、双倍数据速率同步动态随机存取存储器(doubledataratesdram,简称ddrsdram)、增强型同步动态随机存取存储器(enhancedsdram,简称esdram)、同步连接动态随机存取存储器(synchlinkdram,简称sldram)和直接内存总线随机存取存储器(directrambusram,简称drram)。
本发明实施例描述的存储介质旨在包括但不限于这些和任意其它适合类型的存储器。
本领域技术人员应该可以意识到,在上述一个或多个示例中,本发明所描述的功能可以用硬件与软件组合来实现。当应用软件时,可以将相应功能存储在计算机可读介质中或者作为计算机可读介质上的一个或多个指令或代码进行传输。计算机可读介质包括计算机存储介质和通信介质,其中通信介质包括便于从一个地方向另一个地方传送计算机程序的任何介质。存储介质可以是通用或专用计算机能够存取的任何可用介质。
以上所述的具体实施方式,对本发明的目的、技术方案和有益效果进行了进一步详细说明,所应理解的是,以上所述仅为本发明的具体实施方式而已,并不用于限定本发明的保护范围,凡在本发明的技术方案的基础之上,所做的任何修改、等同替换、改进等,均应包括在本发明的保护范围之内。
1.一种空间声渲染方法,其特征在于,包括:
获取给定的用于定义扬声器阵列解码渲染质量的至少两个客观指标,根据所述至少两个客观指标生成目标函数;
根据扬声器的数量和位置得到至少两个解码系数;
根据所述至少两个解码系数计算所述目标函数的值,通过非线性优化得到权重系数;
根据所述至少两个解码系数和权重系数得到最终加权解码系数;
根据所述扬声器的数量和位置构造特征向量,并以所述最终加权解码系数作为目标向量训练深度学习模型,通过所述深度学习模型预测所述至少两种解码系数的权重;
根据所述至少两种解码系数的权重进行空间声渲染。
2.根据权利要求1所述的空间声渲染方法,其特征在于,所述至少两个客观指标包括以下指标中的至少两个指标:
速度局部化矢量和声源方向的均方根误差;
能量局部化矢量和声源方向的均方根误差;
速度局部化矢量长度和1的均方根误差;
能量局部化矢量长度和1的均方根误差;
扬声器整体的重新生成的声压和能量增益的标准差。
3.根据权利要求1所述的空间声渲染方法,其特征在于,所述至少两个解码系数包括allrad沉浸式音频渲染方法得到的解码系数和epad沉浸式音频渲染方法得到的解码系数。
4.根据权利要求3所述的空间声渲染方法,其特征在于,所述最终加权解码系数为所述allrad沉浸式音频渲染方法得到的解码系数和所述epad沉浸式音频渲染方法得到的解码系数的加权求和。
5.一种空间声渲染装置,其特征在于,包括:
获取模块,用于获取给定的用于定义扬声器阵列解码渲染质量的至少两个客观指标,根据所述至少两个客观指标生成目标函数;
控制处理模块,用于根据扬声器的数量和位置得到至少两个解码系数,并根据所述至少两个解码系数计算所述目标函数的值,通过非线性优化得到权重系数,进而根据所述至少两个解码系数和权重系数得到最终加权解码系数;所述控制处理模块还用于根据所述扬声器的数量和位置构造特征向量,并以所述最终加权解码系数作为目标向量训练深度学习模型,通过所述深度学习模型预测所述至少两种解码系数的权重;
渲染模块,用于根据所述至少两种解码系数的权重进行空间声渲染。
6.根据权利要求5所述的空间声渲染装置,其特征在于,至少两个客观指标包括以下指标中的至少两个指标:
速度局部化矢量和声源方向的均方根误差;
能量局部化矢量和声源方向的均方根误差;
速度局部化矢量长度和1的均方根误差;
能量局部化矢量长度和1的均方根误差;
扬声器整体的重新生成的声压和能量增益的标准差。
7.根据权利要求5所述的空间声渲染装置,其特征在于,所述至少两个解码系数包括allrad沉浸式音频渲染方法得到的解码系数和epad沉浸式音频渲染方法得到的解码系数。
8.根据权利要求7所述的空间声渲染装置,其特征在于,所述最终加权解码系数为所述allrad沉浸式音频渲染方法得到的解码系数和所述epad沉浸式音频渲染方法得到的解码系数的加权求和。
9.一种电子设备,其特征在于,所述电子设备包括:至少一个处理器和至少一个存储器;
所述存储器用于存储一个或多个程序指令;
所述处理器,用于运行一个或多个程序指令,用以执行如权利要求1-4任一项所述的空间声渲染方法。
10.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质中包含一个或多个程序指令,所述一个或多个程序指令用于执行如权利要求1-4任一项所述的空间声渲染方法。
技术总结