虚拟现实声场元数据的处理方法

文档序号:10691741阅读:425来源:国知局
虚拟现实声场元数据的处理方法
【专利摘要】本发明公开了一种虚拟现实声场元数据的处理方法,所述处理方法包括以下步骤:判断音频对象的运动模式,如果音频对象的运动模式为直线运动,令运动模式参数m=0;如果音频对象的运动模式为曲线运动,令运动模式参数m=1;当m=0时,用直角坐标系表示该音频对象的方位信息,同时音频对象的运动轨迹也在直角坐标系中进行处理;当m=1时,用极坐标系表示该音频对象的方位信息,同时音频对象的运动轨迹也在极坐标系中进行处理;根据音频对象的运动轨迹对应的位置信息生成虚拟环绕声。所述方法在处理直线运动和曲线运动并存的复杂对象时,能更加完美地展现音频对象的运动方向和轨迹。在虚拟现实中提高沉浸感,更真实,更具体,更形象。
【专利说明】
虚拟现实声场元数据的处理方法
技术领域
[0001] 本发明设及信号处理技术领域,具体设及一种虚拟现实声场元数据的处理方法。
【背景技术】
[0002] 在用虚拟现实头戴设备化ead-Mounted Display,HMD)向用户呈现内容时,音频内 容通过立体声耳机向用户播放。运时需要面临如何提高虚拟环绕声效果的问题。在虚拟现 实应用中,当通过立体声耳机播放音频内容时,虚拟3D音频的目的是想要达到一种效果,让 用户就像用扬声器阵列(如5.1或7.1)听一样,甚至像听现实中的声音一样真实。
[0003] 在制作虚拟现实音频内容时,通常有若干音源分布在不同的位置和环境一起构成 声场。跟踪用户头部动作化ead化acking),对声音进行相应的处理。比如,如果原始声音被 用户感知为来自正前方,当用户向左转头90度后,声音应被处理使得用户感知声音来自正 右方90度。
[0004] 在运里虚拟现实设备可W有很多种类,比如带头部跟踪的显示设备,或者只是一 部带头部跟踪传感器的立体声耳机。
[0005] 实现头部跟踪也有多种方法。比较常见的是使用多种传感器。运动传感器套件通 常包括加速度计、巧螺仪和磁力传感器。在运动跟踪和绝对方向方面每种传感器都有自己 固有的强项和弱点。因此常用做法是采用传感器"融合"(sensor化Sion),将来自各传感器 的信号组合在一起,产生一个更加精确的运动检测结果。
[0006] 在得到头部旋转角度后,需要对声音进行相应的变化。生成虚拟现实声场有几种 方法,一种做法是对音频对象,根据其位置信息,使用相应的皿TF化ead Related Transfer Function,头相关变换函数)滤波器进行滤波,得到虚拟环绕声。皿TF在时间域所对应的名 称是皿IR巧ead Related Impulse Response)。另一种方式是将声音转到ambisonic域的B 格式信号,将该B格式信号转换为虚拟扬声器阵列信号,将虚拟扬声器阵列信号通过HRTF滤 波器进行滤波,得到虚拟环绕声。
[0007] 可W看到,运两种方法都需要定义、设计和处理音频对象在空间中的方位信息。一 般的做法是将空间中的位置用直角坐标系里的(x,y,z)表示。假设整个声场空间用一个边 长为2立方体表示(2X2X2),听者的头部在立方体的中屯、点,并假定该中屯、点在直角坐标 系的坐标为(〇,〇,〇),如图1所示,假设该声场中的音频对象的坐标为(xi,^,zi),则可知如 下例子:
[000引正左侧声场边缘的音频对象坐标为(-1,0,0);
[0009] 正前方声场边缘的音频对象坐标为(0,1,0);
[0010] 正上方声场边缘的音频对象坐标为(0,0,1);
[0011] 右前方声场边缘的音频对象坐标为(1,1,0);
[0012] 如图2所示,其中坐标的Ξ个分量须满足:
[0013] -l< = xi< = l
[0014] -l< = yi< = l
[0015] -K = zi< = l
[0016] 运种音频对象方位信息的定义方法对于沿直线轨迹运动的对象很合适,比如对象 从11时刻的(X1,y 1,Z1)直线运动到t2时刻的(x2,y2,Z2),那么11和12之间的任何时刻ti对 应的对象的位置化用线性插值表示为:
[0017] P〇int_i二化int_l+(Point_2-Point_l) X ;
[001 引 其中P0int_i定义为:(xi ,yi ,zi) ;Point_l为:(xl ,yl ,ζ?);化int_2为:(x2,y2, 曲·,
[0019] 但是,如果音频对象是沿曲线运动,运种基于直角坐标系的方位信息的元数据定 义和插值方法就不是很合适了。比如音频对象绕着中屯、点旋转一周,分别在前后左右标记 1、2、3、4共4个方位点(见图3):
[0020] 正前化 int_l(0,l,0)
[0021] 正右化 int_2(l,0,0)
[0022] 正后化 int_3(0,-l,0)
[0023] 正左化 int_4(-l,0,0)
[0024] 运样实际插值得到的运动轨迹并不是一个圆周运动,而是一个折线运动,轨迹是 一个菱形,如图3所示,运种运动轨迹的差异会导致虚拟现实音频内容的失真,影响音频效 果。
[0025] 现有技术中为解决运一技术问题,采用的是在时间维度上取比较密集的采样点, 来近似模拟曲线运动。不过运样做的缺点是轨迹只是近似的曲线,并不完美,同时密集的采 样点导致元数据量太大,占用了更多的带宽。

【发明内容】

[0026] 本发明的目的在于提供一种虚拟现实声场元数据的处理方法,用于描述虚拟现实 声场里音频对象曲线运动轨迹,使元数据的效率更高,同时使音频对象在空间里做曲线运 动时轨迹更平滑,同时进一步采用hybrid(混合)方式,很好地兼容音频对象的直线或曲线 运动。
[0027] 为实现上述目的,本发明所述的虚拟现实声场元数据的处理方法包括W下步骤:
[0028] 判断音频对象的运动模式,如果音频对象的运动模式为直线运动,令运动模式参 数m = 0;如果音频对象的运动模式为曲线运动,令运动模式参数m= 1;
[0029] 当m = 0时,用直角坐标系表示该音频对象的方位信息,同时音频对象的运动轨迹 也在直角坐标系中进行处理;
[0030] 当m= 1时,用极坐标系表示该音频对象的方位信息,同时音频对象的运动轨迹也 在极坐标系中进行处理;
[0031] 根据音频对象的运动轨迹对应的位置信息生成虚拟环绕声。
[0032] 当m=0时,获取音频对象在tl时刻的直角坐标化int_l,获取音频对象在t2时刻的 直角坐标P〇int_2,令ti时刻音频对象对应的直角坐标为Point_i,其中ti时刻为tl时刻与 t2时刻之间的任意时刻;
[0033] Point_i的具体位置坐标通过线性插值获得,线性插值的公式为:
[0034] P〇int_i 二化int_l+(Point_2-Point_l) X 。
[0035] 当m=l时,获取音频对象在tl时刻的极坐标Point'_1,获取音频对象在t2时刻的 极坐标Point ' _2,令ti时刻音频对象对应的极坐标为化int ' _i,其中ti时刻为11时刻与12 时刻之间的任意时刻;
[0036] 化的具体位置坐标通过线性插值获得,线性插值的公式为:
[0037] F>〇int'_i=F*oint'_l+(F*oint'_2-Point'_l)X(ti-tl)/(t2-tl)。
[0038] 所述的根据音频对象的运动轨迹对应的位置信息生成虚拟环绕声的具体步骤为:
[0039] 如果m=l,则获取ti时刻音频对象对应的极坐标化;
[0040] 如果m = 0,则将线性插值获得的t i时刻音频对象对应的直角坐标Po i nt_i转化为 ti时刻音频对象对应的极坐标化int ' _i ;
[0041] 根据ti时刻音频对象对应的极坐标Point'_i,将音频对象编码到高阶B-格式信 号;将所述B-格式信号转换成虚拟扬声器阵列信号;
[0042] 对音频对象的所述虚拟扬声器阵列信号基于双耳房间脉冲响应进行双耳转码,得 到音频对象的双耳输出虚拟环绕声信号。
[0043] 所述音频对象可W为一个或多个。
[0044] 所述双耳房间脉冲响应离线生成,采用真实测量或由软件生成。
[0045] 本发明具有如下优点:本发明所述虚拟现实声场元数据的处理方法在处理直线运 动和曲线运动并存的复杂对象时,能更加完美地展现音频对象的运动方向和轨迹。在虚拟 现实中提高沉浸感,更真实,更具体,更形象,并且使运动轨迹复杂的对象处理起来更加简 单快速,提高了沉浸感的同时也提升了工作效率。
【附图说明】
[0046] 图1是现有技术中用直角坐标系表示声场空间的示意图。
[0047] 图2是图1所示的直角坐标系中Ξ个坐标分量的示意图。
[0048] 图3是现有技术中用直角坐标系插值得到的音频对象运动轨迹示意图。
[0049] 图4是本发明用极坐标表示声场空间的示意图。
[0050] 图5是图4所示的极坐标中Ξ个坐标分量的示意图。
[0051 ]图6是本发明用极坐标插值得到的音频对象运动轨迹示意图。
【具体实施方式】
[0052] W下实施例用于说明本发明,但不用来限制本发明的范围。
[0053] 如图4-6所示,本发明提供一种虚拟现实声场元数据的处理方法,包括W下步骤:
[0054] 判断音频对象的运动模式,如果音频对象的运动模式为直线运动,令运动模式参 数m = 0;如果音频对象的运动模式为曲线运动,令运动模式参数m= 1;
[0055] 当m = 0时,用直角坐标系表示该音频对象的方位信息,同时音频对象的运动轨迹 也在直角坐标系中进行处理;
[0056] 当m= 1时,用极坐标系表示该音频对象的方位信息,同时音频对象的运动轨迹也 在极坐标系中进行处理;
[0057] 根据音频对象的运动轨迹对应的位置信息生成虚拟环绕声。
[005引当m=0时,获取音频对象在tl时刻的直角坐标化int_l,获取音频对象在t2时刻的 直角坐标P0int_2,令ti时刻音频对象对应的直角坐标为Point_i,其中ti时刻为tl时刻与 t2时刻之间的任意时刻;
[0059] Point_i的具体位置坐标通过线性插值获得,线性插值的公式为:
[0060] P〇int_i 二化int_l+(Point_2-Point_l) X 。
[0061 ] 其中化int_l的直角坐标定义为(xl,yl,zl),Point_2的直角坐标定义为(x2,y2, z2),Point_i的直角坐标定义为(xi,yi,zi)。
[0062] 当m=l时,获取音频对象在tl时刻的极坐标Point'_1,获取音频对象在t2时刻的 极坐标Point ' _2,令ti时刻音频对象对应的极坐标为化int ' _i,其中ti时刻为11时刻与12 时刻之间的任意时刻;
[0063] 化的具体位置坐标通过线性插值获得,线性插值的公式为:
[0064] F>〇int'_i=F*oint'_l+(F*oint'_2-Point'_l)X(ti-tl)/(t2-tl)。
[0065] 其中化的极坐标定义为(pi,目1,Φ l);Point'_2的极坐标定义为(p2,目2, Φ 2);化极坐标定义为(pi,目i, Φ i)。
[0066] 在极坐标中球屯、的位置定义为(0,0,0,),P1表示11时刻音频对象距离球屯、的距 离;Θ1表示tl时刻音频对象相对于球屯、的水平角;Φ 1表示tl时刻音频对象相对于球屯、的仰 角。P2表示t2时刻音频对象距离球屯、的距离;Θ2表示t2时刻音频对象相对于球屯、的水平角; Φ 2表示t2时刻音频对象相对于球屯、的仰角。pi表示ti时刻音频对象距离球屯、的距离;9i表 示ti时刻音频对象相对于球屯、的水平角;Φ i表示ti时刻音频对象相对于球屯、的仰角。
[0067] 采用极坐标的有益效果是,假设音频对象绕着中屯、点旋转一周,分别在前后左右 用极坐标标记4个方位点:
[006引正前化 int_l(l,0,0)
[0069] 正右化 int_2( 1,90,0)
[0070] 正后化int_3(l ,180,0)
[0071] 正左化int_4(l ,270,0)
[0072] 那么插值得到的运动轨迹就是一个完美的圆周运动,如图6所示。
[0073] 在处理直线运动和曲线运动并存的复杂对象时,本发明能更加完美地展现音频对 象的运动方向和轨迹。在虚拟现实中提高沉浸感,更真实,更具体,更形象,并且使运动轨迹 复杂的对象处理起来更加简单快速,提高了沉浸感的同时也提升了工作效率。
[0074] 本发明设计的虚拟现实声场中音频对象元数据的定义规格(W2个音频对象为例) 如下:
[0075]
[0076]
[0077] 所述的根据音频对象的运动轨迹对应的位置信息生成虚拟环绕声的具体步骤为:
[0078] 如果m=l,则获取ti时刻音频对象对应的极坐标化;
[0079] 如果m = 0,则将线性插值获得的ti时刻音频对象对应的直角坐标化int_i转化为 ti时刻音频对象对应的极坐标化int ' _i ;
[0080] 直角坐标(xi,yi,zi)转化为极坐标(Pi,θi,φ i)的公式为:
[0081]
[0082] 0i=arccos(z/pi)
[0083] φ i =arctan(y/sqrt(x*x+z*z))
[0084] 其中sqd表示开平方根运算。
[0085] 根据ti时刻音频对象对应的极坐标化,将音频对象编码到高阶(优选为2阶 或3阶)B-格式信号;将所述B-格式信号转换成虚拟扬声器阵列信号;W-个一阶B-格式信 号[Wi Xi Yi Ζι]τ为例,转换成虚拟扬声器阵列信号山L2…Ln]t的过程就是进行下列运算 (?中Xi = cos白1COS Ψ i;Yi = sin白1COS Ψ i;Zi = sin Ψ 1):
[0086]
[0087] 其中,N为虚拟扬声器拓扑结构中包括的虚拟扬声器的数目。上式中所用的G矩阵 为ambisonic解码矩阵,可W通过求伪逆矩阵来得出。
[0088] 对音频对象的所述虚拟扬声器阵列信号基于双耳房间脉冲响应(BRIR)进行双耳 转码(通常是3维,即包含高度信息),得到音频对象的双耳输出虚拟环绕声信号。具体是:从 虚拟扬声器信号转到耳机信号对应的二路立体声BRIR矩阵,将该二路立体声矩阵和虚拟扬 声器阵列信号进行矩阵乘法,得到虚拟环绕声。BRIR矩阵3
,则虚拟环绕声 巧
[0089] 所述音频对象可W为一个或多个。
[0090] 所述双耳房间脉冲响应优选为离线生成,可W采用真实测量或由专口的软件生 成,因此不必像现有技术下采用在线生成方式时需要存储大量的BRIR,减少了内存消耗。
[0091] 下面描述了如何将音频对象编码到ambisonic域。
[0092] 将音频对象编码到一阶ambisonic信号:
[0097] Si是第i个音频对象,i = l……k,k是音频对象的个数。θι是平面上的角度(方位 角),Φι是垂直方向上的角度。W声道信号表示全方向声波,X声道信号、Υ声道信号和Ζ声道 信号分别表示沿空间Ξ个互相垂直取向Χ、Υ、Ζ的声波。
[0098] 一阶Β-格式信号表不文
[0099] 同理,将音频对象编码到2阶或3阶Β-格式信号优选依照下表定义进行:
[0100]
[0101] 上表中的Ξ角函数对于方位角θ是偶函数的,则相应B-格式信号的相应分量是左 右对称的,如果上表中的Ξ角函数对于方位角Θ是奇函数,则相应B-格式信号的相应分量是 左右相反的。W-阶B-格式信号为例,从物理意义和坐标来看,w,x,z不分左右,所W如果听 者的位置左右对称,并且假定相应的皿TF系数也近似左右对称,那么W,X,Z对应的双耳输出 的分量对于输出的左右通道是相同的。而y对于左右正好反向。所Wy对应的双耳输出的分 量对于左右通道是相反的。对于具有对称性的分量,可W采用快速算法,即运算过程中的对 称性优化,可进一步降低运算量。
[0102] 本发明所称左右、水平、垂直等方位均是从听者(即用户)的视角定义的。
[0103] 虽然,上文中已经用一般性说明及具体实施例对本发明作了详尽的描述,但在本 发明基础上,可W对之作一些修改或改进,运对本领域技术人员而言是显而易见的。因此, 在不偏离本发明精神的基础上所做的运些修改或改进,均属于本发明要求保护的范围。
【主权项】
1. 一种虚拟现实声场元数据的处理方法,其特征在于,所述虚拟现实声场元数据的处 理方法包括以下步骤: 判断音频对象的运动模式,如果音频对象的运动模式为直线运动,令运动模式参数m= 〇;如果音频对象的运动模式为曲线运动,令运动模式参数m= 1; 当m = 0时,用直角坐标系表示该音频对象的方位信息,同时音频对象的运动轨迹也在 直角坐标系中进行处理; 当m= 1时,用极坐标系表示该音频对象的方位信息,同时音频对象的运动轨迹也在极 坐标系中进行处理; 根据音频对象的运动轨迹对应的位置信息生成虚拟环绕声。2. 如权利要求1所述虚拟现实声场元数据的处理方法,其特征在于,当m = 0时,获取音 频对象在tl时刻的直角坐标Point_l,获取音频对象在t2时刻的直角坐标Point_2,令ti时 刻音频对象对应的直角坐标为P〇int_i,其中ti时刻为tl时刻与t2时刻之间的任意时刻; Point」的具体位置坐标通过线性插值获得,线性插值的公式为: Point_i = Point_l+(Point_2-Point_l)X(ti-tl)/(t2-tl)〇3. 如权利要求1所述虚拟现实声场元数据的处理方法,其特征在于,当m = 1时,获取音 频对象在tl时刻的极坐标Point'j,获取音频对象在t2时刻的极坐标Point'_2,令ti时刻 音频对象对应的极坐标为Point'」,其中ti时刻为tl时刻与t2时刻之间的任意时刻; Point'」的具体位置坐标通过线性插值获得,线性插值的公式为: Point '_i = Point '_1+( Point '_2_Point '_1 )X(ti_tl)/(t2_tl)。4. 如权利要求1所述虚拟现实声场元数据的处理方法,其特征在于,所述的根据音频对 象的运动轨迹对应的位置信息生成虚拟环绕声的具体步骤为: 如果m= 1,则获取ti时刻音频对象对应的极坐标Point '」; 如果m = 0,则将线性插值获得的t i时刻音频对象对应的直角坐标Po in t_i转化为t i时 刻音频对象对应的极坐标Point'」; 根据ti时刻音频对象对应的极坐标Point'」,将音频对象编码到高阶B-格式信号;将 所述B-格式信号转换成虚拟扬声器阵列信号; 对音频对象的所述虚拟扬声器阵列信号基于双耳房间脉冲响应进行双耳转码,得到音 频对象的双耳输出虚拟环绕声信号。5. 如权利要求4所述虚拟现实声场元数据的处理方法,其特征在于,所述音频对象为一 个或多个。6. 如权利要求5所述虚拟现实声场元数据的处理方法,其特征在于,所述双耳房间脉冲 响应离线生成,采用真实测量或由软件生成。
【文档编号】H04S5/00GK106060758SQ201610391252
【公开日】2016年10月26日
【申请日】2016年6月3日
【发明人】杨洪旭, 孙学京, 张晨
【申请人】北京时代拓灵科技有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1