基于四元数的计算三维声源和人头相对位置的装置和方法

文档序号:9784529
基于四元数的计算三维声源和人头相对位置的装置和方法
【技术领域】
[0001] 本发明涉及声学领域和自动化控制领域,特别涉及到一种基于四元数的计算三维 声源和人头相对位置的方法和装置。
【背景技术】
[0002] 三维声源相对于人头的水平方位、垂直俯仰关系是三维声源研究的重点之一。在 保持三维声源相对人头的方位俯仰关系不随人头前后左右晃动而变化,通常的做法是补偿 一个相对量。比如三维声源相对人头的位置在正左边,人头向右转动45度,则将声源和人头 的相对关系向左(后)增加45度。此种简单的算法有一个明显的问题:它没有考虑人头左右 转动和上下摆动均会对声源的方位产生影响。再比如,当声源在人头的正左边,上下摆动会 给人耳感觉声源还是在左边。当声源在正前方时,上下摆动会明显地改变声源对人头的相 对位置。

【发明内容】

[0003] 本发明的目的是提供一种基于四元数的计算三维声源和人头相对位置的装置,它 能够消除人头前后左右晃动对声源和人头之间相对关系的影响。
[0004] 为了实现上述目的,本发明的技术方案为:一种基于四元数的计算三维声源和人 头相对位置的装置,其特征在于所述装置包括方位传感器,所述方位传感器提供实时人头 姿态的四元数信息;耳机,耳机输出带方位信息的声源;数据处理单元,数据处理单元将获 取的空间声源坐标转换成以人头为参照物的坐标,并将最终结果发送给耳机输出。
[0005] 本发明的目的是提供一种基于四元数的计算三维声源和人头相对位置的方法,它 能够消除人头前后左右晃动对声源和人头之间相对关系的影响。
[0006] 为了实现上述目的,本发明的技术方案如下:一种基于四元数的计算三维声源和 人头相对位置的方法,包括以下步骤:获取三维声源与人头在HRTF空间的相对方位信息,变 换到三维声源与人头在惯性坐标系下的相对方位信息,根据方位传感器提供的实时人头姿 态的四元数信息,解算三维声源与人头在惯性坐标系下新的相对方位信息,最后反变换解 算出三维声源与人头在HRTF空间的相对方位信息。
[0007] 本发明提供了一种计算三维声源和人头相对位置的算法。使用本方法,可以消除 通常算法人头前后左右晃动带来的影响,保持三维声源和人头的方位、俯仰位置关系不变。
【附图说明】
[0008] 图1为虚拟三维声源在惯性直角坐标系和球坐标系中的表示图。
[0009] 图2为基于四元数的计算三维声源和人头相对位置的装置。
[0010] 图3为方位解算流程图。
【具体实施方式】
[0011] 下面结合附图进一步说明本发明是如何实现的。
[0012] HRTF,Head Related Transfer Function,头相关变换函数,HRTF坐标系是一个定 义以人头为中心的球坐标系,是测量得到的数据库。球坐标P(R、AZ、EL)中R表示声源距离中 心的半径,AZ表示声源在中心的方位角,EL表示声源在中心的俯仰角。
[0013]如图3所示,本实施例的方位解算流程包括以下步骤:A、获取空间声源在HRTF坐标 系中球坐标P(R、AZ、EL); B、计算得到空间声源在参考坐标系(惯性坐标系)中球坐标表示; C、计算得到空间声源在参考坐标系(惯性坐标系)中直角坐标表示;D、根据方位传感器提供 实时人头姿态的四元数信息,解算空间声源在动坐标系(载体坐标系)中直角坐标表示;E、 计算得到空间声源在动坐标系(载体坐标系)中球坐标表示;F、计算得到间声源在HRTF坐标 系中球坐标P'(r'、AZ'、EL')。
[0014]载体坐标系是以人头为参照物的坐标系,是随人头运动而变化的坐标系,空间声 源在HRTF坐标系中球坐标P (R、AZ、EL)的获取是系统提供的。
[0015] 从三维声源在HRTF空间的球坐标变换到三维声源在惯性坐标系下的球坐标数值 是相等的,概念上有区别,前者是存在于HRTF数据库的坐标表示,后者是现实中以人头为中 心的惯性坐标系。
[00?6] 从三维声源在惯性坐标系下的球坐标P (R、AZ、EL)到直角坐标Rn = (xn,yn,zn)的 公式为:
[0017] Rn=(xn,yn,zn)=(R*sin AZ*cos EL,R*sinAZ*sin EL,R*cos AZ)
[0018] 其中步骤D中,假如三维声源(矢量)固定不动,而动坐标系(载体坐标系)相对参考 坐标系(惯性坐标系)转动了一个角度,那么可以用四元数(Quaternion)来描述矢量在两个 坐标系上的分量的变换关系。
[0019] Rb = Q**Rr*Q
[0020] 其中0=(9〇^1,92^3)由传感器给出#表示_]共辄,惯性坐标系直角坐标处= 尺11=(〇411,711,211),载体坐标系直角坐标1^=(0,113,713,213),操作符'*'表示四元数与四 元数的乘法运算。展开计算可得: 叫 ^0+^-^2-? 2(^2+??) 2(祕_祕)「七
[0021] yb = 2{qxq2 -qQq3) q] -+ q; -q; 2(?? +q0gl) yv 3」2(·3 + ·2) 2(q2q3-q〇qi) ql~qf~q;
[0022] 四元数,是一种简单的复数,〇=(9〇,91,92,93)中表示9 = 9〇+91封+92*」+93纯(;[, 」,让是3个虚数单位,;[料=-1,_]_*」=-1,1^纯=-1),对于1,」,1^本身的几何意义可以理解成一 种旋转,其中i旋转代表X轴与Y轴相交平面中X轴正向向Y轴正向的旋转,j旋转代表Z轴与X 轴相交平面中Z轴正向向X轴正向的旋转,k旋转代表Y轴与Z轴相交平面中Y轴正向向Z轴正 向的旋转,_i,- j,_k分别代表i,j,k旋转的反向旋转。
[0023] 以上仅表达了本发明的实施方式,其描述较为具体和详细,但并不能因此而理解 为对发明专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本发 明构思的前提下,还可以做出若干变形和改进,这些都属于本发明的保护范围。因此,本发 明专利的保护范围应以所附权利要求为准。
【主权项】
1. 一种基于四元数的计算三维声源和人头相对位置的装置,其特征在于所述装置包括 方位传感器,所述方位传感器提供实时人头姿态的四元数信息;耳机,耳机输出带方位信 息的声源;数据处理单元,数据处理单元将获取的空间声源坐标转换成以人头为参照物的 坐标,并将最终结果发送给耳机输出。2. -种基于四元数的计算三维声源和人头相对位置的方法,包括以下步骤:获取三维 声源与人头在HRTF空间的相对方位信息,变换到三维声源与人头在惯性坐标系下的相对方 位信息,根据方位传感器提供的实时人头姿态的四元数信息,解算三维声源与人头在惯性 坐标系下新的相对方位信息,最后反变换解算出三维声源与人头在HRTF空间的相对方位信 息。3. 根据权利要求1所述的一种基于四元数的计算三维声源和人头相对位置的方法,其 特征在于:所述方法包括以下步骤:A、获取空间声源在HRTF坐标系中球坐标P(R、AZ、EL) ; B、 计算得到空间声源在参考坐标系中球坐标表示;C、计算得到空间声源在参考坐标系中直角 坐标表示;D、根据方位传感器提供实时人头姿态的四元数信息,解算空间声源在动坐标系 中直角坐标表示;E、计算得到空间声源在动坐标系中球坐标表示;F、计算得到空间声源在 HRTF坐标系中球坐标P'(R'、AZ'、EL')。
【专利摘要】本发明提供了一种基于四元数的计算三维声源和人头相对位置的方法,包括以下步骤:获取三维声源与人头在HRTF空间的相对方位信息,变换到三维声源与人头在惯性坐标系下的相对方位信息,根据方位传感器提供的实时人头姿态的四元数信息,解算三维声源与人头在惯性坐标系下新的相对方位信息,最后反变换解算出三维声源与人头在HRTF空间的相对方位信息。使用本方法,可以消除通常算法人头前后左右晃动带来的影响,保持三维声源和人头的方位、俯仰位置关系不变。
【IPC分类】G01C21/20
【公开号】CN105547296
【申请号】CN201510875503
【发明人】王法
【申请人】上海航空电器有限公司
【公开日】2016年5月4日
【申请日】2015年12月2日
再多了解一些
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1