本发明专利技术所提供的一种3D声场构建方法,包括步骤:A、依据所拍摄的画面确定声音源数量,以及各声音源的坐标;B、依据所述数量和坐标所对应的声音源与监听程序的距离,构建3D声场;C、依据步骤A所拍摄画面的变化,实时更新步骤B所构建的3D声场。由上,依据所拍摄的画面场景和声音源位置,利用“双耳效应”原理构建出3D声场,以使用户有逼真的视听效果。
【技术实现步骤摘要】
本专利技术涉及虚拟现实
,特别涉及一种3D声场构建方法。
技术介绍
虚拟现实技术是仿真技术的一个重要方向。虚拟现实技术丰要包括模拟环境、感知、自然技能等方面。模拟环境是由计算机生成的、实时动态的三维立体逼真图像。感知是指理想的VR应该具有一切人所具有的感知。除计算机图形技术所生成的视觉感知外,还有听觉,也称为多感知。自然技能是指人的头部转动,眼睛、手势、或其他人体行为动作,由计算机来处理与参与者的动作相适应的数据,并对用户的输入作出实时响应,并分别反馈到用户的五官。传感设备是指三维交互设备。然而,在虚拟现实技术中,如何实现环境、感知、自然技能的完美融合,即如何使虚拟视觉、听觉的融合,其中,虚拟视觉已属于较为常见的技术,而随用户的头部转向时虚拟视觉的变化而导致听觉的更新则是又一课题。
技术实现思路
有鉴于此,本专利技术的主要目的在于,提供一种3D声场构建方法,包括步骤:A、依据所拍摄的画面确定声音源数量,以及各声音源的坐标;B、依据所述数量和坐标所对应的声音源与监听程序的距离,构建3D声场;C、依据步骤A所拍摄画面的变化,实时更新步骤B所构建的3D声场。由上,依据所拍摄的画面场景和声音源位置,利用“双耳效应”原理构建出3D声场,以使用户有逼真的视听效果。可选的,步骤B包括:依据所述各声音源的坐标,判断所述各声音源相对于监听程序左耳、右耳的距离的步骤;当所述距离大于阈值时,对声音源采用线性衰减,当所述距离小于阈值时,对声音源采用对数衰减;依据各声音源到达监听程序左耳位置衰减的结果进行合成,得出监听程序左耳位置所接收到的声音;依据各声音源到达监听程序右耳位置衰减的结果进行合成,得出监听程序右耳位置所接收到的声音;将监听程序左耳、右耳所接收到的声音进行合成,以构建3D声场。由上,由于距离较远时,声音在传播过程中的落差较为明显,采用线性衰减可以减缓声音的衰减速度,从而模拟出落差较大的效果。而声音源与监听位置较近时,则采用对数衰减,其原因在于:由于在短距离,人耳对声波强弱的感受大致上和声强(或声压)的对数成正比例。为适应人耳听觉这一特性以提高仿真度,故采用对数衰减计算。可选的,步骤B包括:声音源n相对于所述监听程序左耳、右耳的距离表示为rn左和rn右:rn左2=(x左-xn)2+(y左-yn)2+(z左-zn)2、rn右2=(x右-xn)2+(y右-yn)2+(z右-zn)2;其中,(xn,yn,zn)表示声音源n的坐标,n为表示声音源的数量的标号,n∈(1,∞);(x左,y左,z左)为左耳的坐标;(x右,y右,z右)为右耳的坐标。可选的,声音源n的所述线性衰减包括:wn左’=N*wn*log2rn左、wn右’=N*wn*log2rn右;式中wn左’和wn右’分别表示声音源n线性衰减后左耳和右耳所接收到的音量;rn左和rn右分别表示声音源n相对于左耳、右耳的距离;wn表示声音源n发出的音量;N表示空气阻尼系数。可选的,声音源n的所述对数衰减包括:qn左’=qn-N*rn左、qn右’=qn-N*rn右;式中qn左’和qn右’分别表示声音源n在对数衰减后左耳和右耳所接收到的音量;rn左和rn右分别表示声音源n相对于左耳、右耳的距离;qn表示声音源n发出的音量;N表示空气阻尼系数。可选的,步骤B中,还包括确定障碍物对于声音源的衰减量的步骤。由上,当在声音源与监听程序之间出现障碍物时,势必也会对声音源的衰减造成影响。可选的,该步骤包括:在声音源与监听程序左、右耳的中点设一连线m,另在声音源与监听程序的左耳和右耳分设一条连线n1、n2,m与n1、n2分别形成两个截面;分别计算所述障碍物的横截面阻挡两个截面的面积,其阻挡面积与衰减量成正比。由上,依据障碍物所在位置的不同,精确模拟出其对于声音源衰减的影响。可选的,还包括:确定障碍物高度对于声音源的衰减量的步骤。可选的,分别在声音源与监听程序左、右耳之间设置一高度区间,在所述高度区间内,障碍物的高度与衰减量成正比。由上,依据障碍物高度的不同,精确模拟出其对于声音源衰减的影响。附图说明图1为本专利技术构建3D声场构建方法的流程图;图2为本专利技术构建3D声场构建方法的原理示意图;图3为出现障碍物时,构建3D声场构建方法的原理示意图;图4为出现另一障碍物时,构建3D声场构建方法的原理示意图;图5为确定障碍物对于声音源衰减量影响的原理示意图;图6为确定障碍物高度对于声音源衰减量影响的原理示意图。具体实施方式为克服现有技术存在的缺陷,本专利技术提供一种3D声场构建方法,依据所模拟的视频场景和声音源位置,利用“双耳效应”原理构建出3D声场,以使用户有逼真的视听效果。如图1所示,3D声场构建方法包括以下步骤:S10:依据所拍摄的画面确定声音源。如图2所示,本实施例所述画面为全景视频画面,将视频当做一种纹理,贴在三维球体的内表面上。用于拍摄全景视频画面的相机设在球体中心,在所述相机的正前方设置3D声场监听程序,用于构建3D声场。利用鼠标点击屏幕中的画面,相机与鼠标点击位置会产生一条连线,该连线与全景视频所在的球体相交,其相交位置可确定为声音源位置的坐标。如图2所示的实施例中,设置了A、B两声音源,上述两声音源的坐标分别表示为A声音源:(xa,ya,za);B声音源:(xb,yb,zb)。进一步的,本步骤还包括确认障碍物位置的步骤。如图3所示,当拍摄的画面中出现障碍物时,通过Unity3D的类库函数GameObject.Find(\障碍物名称\).transform.position便可遍历画面,并确定出是否含有障碍物,以及障碍物所在位置的坐标。S20:依据声音源和障碍物位置构建3D声场。本步骤中,首先计算各声音源与监听程序之间的距离r,具体的,采用以下算法,仍以图2为例,设图中A声音源与监听程序的距离为r1,r12=(x0-xa)2+(y0-ya)2+(z0-za)2,其中,(x0,y0,z0)为监听程序的坐标。同理,计算出B声音源与监听程序的距离r2,r22=(x0-xb)2+(y0-yb)2+(z0-zb)2。进一步的,依据“双耳效应”使监听程序模拟左右耳,即A声音源与监听程序的距离为r1左和r1右,r1左表示A声音源到监听程序左耳距离,r1右表示A声音源到监听程序右耳距离。同理,计算出B声音源与监听程序左耳和右耳的距离r2左和r2右。其次,计算A声音源、B声音源到达监听程序的衰减量。本实施例中,设A声音源的发出音量大小为w,B声音源的发出音量大小为q,空气阻尼系数N。针对声音源与监听位置较远的情况,例如超过10米,则采用线性衰减,其原因在于:由于距离较远,因此声音在传播过程中的落差较为明显,采用线性衰减可以减缓声音的衰减速度,从而模拟出落差较大的效果。而声音源与监听位置较近时,例如小于10米。则采用对数衰减,其原因在于:由于在短距离,人耳对声波强弱的感受大致上和声强(或声压)的对数成正比例。为适应人耳听觉这一特性以提高仿真度,故采用对数衰减计算。本实施例中,对A声音源进行对数衰减计算,衰减后监听程序左耳音量表示为w左’:w’=N*w*log2r1左;衰减后监听程序右耳音量表示为w右’:w’=N*w*log2r1右。对B声音源进行线性衰减,衰减后监听程序左耳音量表示为q左’:q左’=q-N本文档来自技高网...
【技术保护点】
一种3D声场构建方法,其特征在于,包括步骤:A、依据所拍摄的画面确定声音源数量,以及各声音源的坐标;B、依据所述数量、所述坐标所对应的声音源与监听程序的距离,构建3D声场;C、依据步骤A所拍摄画面的变化,实时更新步骤B所构建的3D声场。
【技术特征摘要】
1.一种3D声场构建方法,其特征在于,包括步骤:A、依据所拍摄的画面确定声音源数量,以及各声音源的坐标;B、依据所述数量、所述坐标所对应的声音源与监听程序的距离,构建3D声场;C、依据步骤A所拍摄画面的变化,实时更新步骤B所构建的3D声场。2.根据权利要求1所述的方法,其特征在于,步骤B包括:依据所述各声音源的坐标,判断所述各声音源相对于监听程序左耳、右耳的距离的步骤;当所述距离大于阈值时,对声音源采用线性衰减,当所述距离小于阈值时,对声音源采用对数衰减;依据各声音源到达监听程序左耳位置衰减的结果进行合成,得出监听程序左耳位置所接收到的声音;依据各声音源到达监听程序右耳位置衰减的结果进行合成,得出监听程序右耳位置所接收到的声音;将监听程序左耳、右耳所接收到的声音进行合成,以构建3D声场。3.根据权利要求2所述的方法,其特征在于,步骤B包括:声音源n相对于所述监听程序左耳、右耳的距离表示为rn左和rn右:rn左2=(x左-xn)2+(y左-yn)2+(z左-zn)2、rn右2=(x右-xn)2+(y右-yn)2+(z右-zn)2;其中,(xn,yn,zn)表示声音源n的坐标,n为表示声音源的数量的标号,n∈(1,∞);(x左,y左,z左)为左耳的坐标;(x右,y右,z右)为右耳的坐标。4.根据权利要求3所述的方法,其特征在于,声音源n的所述线性...
【专利技术属性】
技术研发人员:罗智,
申请(专利权)人:北京奇幻科技有限公司,
类型:发明
国别省市:北京;11
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。