触觉对象的表示格式的制作方法

未命名 08-17 阅读:79 评论:0


1.本实施方案中的至少一个实施方案总体上涉及触觉,并且更具体地涉及基于gltf
tm
(图形语言传输格式)的沉浸式场景中的触觉对象的表示格式的定义。


背景技术:

2.通过基于反馈和交互的沉浸式系统向用户提出了完全沉浸式的用户体验。该交互可使用满足用户需求的传统控制方式。目前的视觉和听觉反馈提供了令人满意的现实沉浸水平。可以通过触觉效果来提供另外的反馈,这些触觉效果允许人类用户用他的感官感知虚拟环境,并且因此获得具有改进的真实感的完全沉浸的更好体验。然而,触觉仍然是改善沉浸式系统中的整体用户体验的可能进展的一个领域。
3.传统上,沉浸式系统可以包括表示虚拟环境的3d场景,其中虚拟对象位于3d场景内。为了改善用户与该虚拟环境的元素的交互,可以通过触觉致动器的激励来使用触觉反馈。此类交互基于“触觉对象”的概念,该“触觉对象”对应于待传输给用户的物理现象。在沉浸式场景的上下文中,触觉对象允许通过定义适当触觉致动器的激励来提供触觉效果,以模仿触觉渲染设备上的物理现象。不同类型的触觉致动器允许复原不同类型的触觉反馈。
4.触觉对象的一个示例是爆炸。可以通过振动和热量来渲染爆炸,从而组合用户的不同触觉效果以提高真实感。沉浸式场景典型地包括多个触觉对象,例如使用与全局效果相关的第一触觉对象和与局部效果相关的第二触觉对象。
5.本文所述的原理适用于使用触觉的任何沉浸式环境,例如,诸如增强现实、虚拟现实、混合现实或触觉增强视频(或全方位/360
°
视频)渲染,并且更一般地适用于任何基于触觉的用户体验。沉浸式环境的此类示例的场景因此被认为是沉浸式场景。
6.触觉是指触摸感并且包括两个维度:触觉和动觉。第一个维度与触感有关,诸如摩擦、粗糙度、硬度、温度,并且通过皮肤的机械感受器(默克尔神经、鲁菲尼氏神经末梢、迈斯纳小体、帕西尼氏小体)感觉到。第二个维度与由肌肉、肌腱和关节中的机械感受器提供的力/扭矩、位置、运动/速度的感觉有关。触觉也涉及自我运动的感知,因为它有助于本体感觉系统(即,对自己身体的感知)。因此,加速度、速度或任何身体模型的感知可以被同化为触觉效果。该频率范围约为0khz至1khz,取决于模态的类型。大多数能够渲染触觉信号的现有设备产生振动。此类触觉致动器的示例是线性共振致动器(lra)、偏心旋转质量(erm)、音圈线性马达。这些致动器可以集成到触觉渲染设备中,例如触觉套装以及智能手机或游戏控制器。
7.为了编码触觉信号,已经定义了若干格式,该格式与使用类似xml格式(例如mpeg-v)的高级描述、使用类似json格式(诸如苹果(apple)触觉音频模式(ahap)或浸入科技(immersion corporation)的hapt格式)的参数化表示、或者波形编码(ieee 1918.1.1对触觉和动觉信号的持续标准化)相关。该hapt格式最近已经被包括在mpeg isobmff文件格式规范(iso/iec 14496第12部分)中。
8.此外,gl传输格式(gltf
tm
)是用于通过应用程序高效传输和加载3d场景和模型的
免授权规范。该格式定义了用于3d内容工具和服务的可扩展通用发布格式,该可扩展通用发布格式简化了创作工作流程并且支持内容在整个行业中的互操作使用。
9.除此之外,现代3d引擎能够将纹理映射到3d对象。这些纹理包含与各种外观相关的参数(诸如对象的颜色)有关的信息,还包含关于几何结构(诸如帮助渲染过程中的现代视觉渲染算法的法线贴图或凹凸贴图)的信息以及更复杂的参数(诸如漫射、发射、光泽度),这些更复杂的参数也确定如何渲染对象。
10.下文描述的实施方案在设计时考虑了前述内容。


技术实现要素:

11.实施方案是关于触觉渲染设备和对应的渲染方法,其允许渲染在包括表示沉浸式场景描述的信息的触觉信号中定义的触觉效果。提出了对应的语法,被定义为gltf
tm
格式的扩展。
12.至少一个实施方案的第一方面涉及一种用于渲染包括表示场景描述的信息的沉浸式场景的信号,该场景描述包括:表示场景的至少一个元素的至少一个信息;和表示触觉对象的信息,该信息包括触觉效果的类型、该触觉效果的至少一个参数以及该触觉效果在其上起作用的触觉体积或表面。
13.至少一个实施方案的第二方面涉及一种装置,该装置包括处理器,该处理器被配置成:获取表示场景描述的信息,该场景描述包括:表示场景的至少一个元素的至少一个信息;和表示触觉对象的信息,该信息包括触觉效果的类型、该触觉效果的至少一个参数以及该触觉效果在其上起作用的触觉体积或表面;检测用户的位置或用户的身体部位的位置与触觉体积之间的碰撞;以及准备用于渲染沉浸式场景的数据,其中基于该触觉效果的至少一个参数生成该数据。
14.至少一个实施方案的第三方面涉及一种方法,该方法包括:获取表示场景描述的信息,该场景描述包括:表示场景的至少一个元素的至少一个信息;和表示触觉对象的信息,该信息包括触觉效果的类型、该触觉效果的至少一个参数以及该触觉效果在其上起作用的触觉体积或表面;检测用户的位置或用户的身体部位的位置与触觉体积之间的碰撞;以及准备用于渲染沉浸式场景的数据,其中基于该触觉效果的至少一个参数生成该数据。
15.根据至少一个实施方案的第四方面,呈现了一种计算机程序,该计算机程序包括能够由处理器执行的程序代码指令,该计算机程序至少实现根据第三方面所述的方法的步骤。
16.根据至少一个实施方案的第五方面,呈现了一种计算机程序产品,该计算机程序产品存储在非暂态计算机可读介质上并且包括能够由处理器执行的程序代码指令,该计算机程序产品至少实现根据第三方面所述的方法的步骤。
17.在变型实施方案中,该触觉效果的至少一个参数是触觉纹理贴图。
附图说明
18.图1示出了在其中实现各种方面和实施方案的系统的示例的框图。
19.图2示出了根据至少一个实施方案的用于渲染触觉反馈描述文件的过程的示例性流程图。
20.图3示出了根据至少一个实施方案的包括触觉对象的沉浸式场景描述文件的数据结构的示例。
21.图4示出了具有触觉对象的3d场景的示例。
22.图5示出了根据至少一个实施方案的对应于图4的场景的基于gltf
tm
的数据结构的示例。
23.图6a示出了根据使用触觉纹理贴图的实施方案的3d对象的示例。
24.图6b示出了根据使用触觉纹理贴图的实施方案的温度触觉效果的示例。
25.图6c示出了根据使用触觉纹理贴图的实施方案的速率-硬度触觉效果的示例。
26.图7a和图7b示出了根据至少一个实施方案的包括触觉纹理贴图的触觉对象的示例。
27.图8a和图8b示出了根据至少一个实施方案的表示包括触觉纹理贴图的触觉对象的场景描述的示例。
28.图9示出了连续效果的各种触觉效果属性。
具体实施方式
29.触觉对象可以与全局环境(诸如微风)相关,或者与局部效应(诸如在胸部中打一拳)相关。在第一种情况下,针对完整的沉浸式场景渲染触觉效果,而在后一种情况下,仅在沉浸式场景的所确定的子空间(下文中称为触觉体积)中激活触觉效果(因此,该效果是有效的)。触觉体积可以限制为2d表面,通常是对象的表面或简单的2d平面(例如,底平面)。除此之外,一些触觉渲染设备(诸如触觉套装)能够在用户身上的精确位置处提供局部触觉效果(例如,胸部上的振动)。
30.图1示出了实现各种方面和实施方案的系统的示例的框图。在所描绘的沉浸式系统中,用户爱丽丝(alice)使用触觉渲染设备100通过通信网络170与托管沉浸式场景190的服务器180进行交互。该沉浸式场景190可以包括表示其渲染所需的不同元素(场景描述191、音频数据、视频数据、3d模型和触觉对象192)的各种数据和/或文件。
31.触觉渲染设备包括处理器101。该处理器101可以是通用处理器、专用处理器、常规处理器、数字信号处理器(dsp)、多个微处理器、与dsp核心相关联的一个或多个微处理器、控制器、微控制器、专用集成电路(asic)、现场可编程门阵列(fpga)电路、任何其他类型的集成电路(ic)、状态机等。该处理器可以进行数据处理,诸如触觉信号解码、输入/输出处理和/或使得该设备能够在沉浸式系统中运行的任何其他功能。
32.该处理器101可以耦合至输入单元102,该输入单元被配置为传送用户交互。多种类型的输入和模态可用于实现该目的。物理小键盘或触敏表面是适于该用途的输入的典型示例,但是也可采用语音控制。除此之外,该输入单元还可以包括能够捕获静态图片或视频的数码相机。该处理器101可以耦合至显示单元103,该显示单元被配置为输出待显示在屏幕上的视觉数据。多种类型的显示器可用于实现该目的,诸如液晶显示器(lcd)或有机发光二极管(oled)显示单元。该处理器101也可以耦合至音频单元104,该音频单元被配置为渲染声音数据,该声音数据将通过诸如扬声器等经调适的换能器转换为音频波。该处理器101可以耦合至通信接口105,该通信接口被配置为与外部设备交换数据。该通信优选地使用无线通信标准,以提供该触觉渲染设备的移动性,诸如蜂窝(例如lte)通信、wi-fi通信等。该
处理器101可以访问存储器106中的信息,并且将数据存储在该存储器中,该存储器可包括多种类型的存储器,包括随机存取存储器(ram)、只读存储器(rom)、硬盘、用户身份模块(sim)卡、记忆棒、安全数字(sd)存储卡、任何其他类型的存储器存储设备。在本实施方案中,该处理器101可访问未在物理上位于该设备上(例如,在服务器、家用计算机或另一个设备上)的存储器中的信息,并且将数据存储在该存储器中。
33.该处理器101可以耦合至触觉单元107,该触觉单元被配置成向用户提供触觉反馈,该触觉反馈在触觉对象192中描述,该触觉对象是沉浸式场景190的场景描述191的一部分。该触觉反馈191描述根据下文进一步描述的语法来描述这种待提供的反馈。这种描述文件通常从该服务器180传送到该触觉渲染设备100。该触觉单元107可以包括位于该触觉渲染设备上多个位置的单个触觉致动器或多个触觉致动器。不同的触觉单元可以具有不同数量的致动器和/或该致动器在该触觉渲染设备上的位置可以不同。
34.该处理器101可以从电源108接收电力,并且可以被配置为向该设备100中的其他部件分配和/或控制电力。该电源可以是用于为该设备供电的任何合适的设备。例如,该电源可以包括一个或多个干电池组(例如,镍镉(nicd)、镍锌(nizn)、镍金属氢化物(nimh)、锂离子(li-ion)等)、太阳能电池、燃料电池等。
35.虽然该处理器101和其他元件102至元件108在该图中描述为单独的部件,但是可以理解的是,这些元件可以一起集成在电子封装或芯片中。可以理解的是,在与实施方案保持一致的同时,该触觉渲染设备100可以包括此处所述元件的任何子组合。该处理器101还可以耦合至图1中未描绘出的其他外围设备或单元,该其他外围设备或单元可以包括提供附加特征、功能和/或有线或无线连接的一个或多个软件模块和/或硬件模块。例如,外围设备可包括传感器,诸如通用串行总线(usb)端口、振动设备、电视收发器、免提耳机、模块、调频(fm)无线电单元、数字音乐播放器、媒体播放器、视频游戏播放器模块、互联网浏览器等。例如,该处理器101可以耦合至定位单元,该定位单元被配置为在该触觉渲染设备的环境中定位该触觉渲染设备。该定位单元可集成提供关于该触觉渲染设备的当前位置的经度和纬度位置的gps芯片组,以及提供定位服务的其他运动传感器,例如加速度计和/或电子罗盘。
36.触觉渲染设备100的典型示例是触觉套装、智能手机、游戏控制器、触觉手套、触觉椅、触觉道具、运动平台等。但是,任何提供类似功能的设备或这些设备的组合都可以作为触觉渲染设备100,同时仍然符合本公开的原理。
37.在至少一个实施方案中,该设备不包括显示单元,但包括触觉单元。在这种实施方案中,该设备不对场景进行视觉渲染,只对触觉效果进行渲染。然而,该设备可以准备用于显示的数据,使得另一设备(诸如屏幕)可以执行显示。这种设备的示例是触觉套装或运动平台。
38.在至少一个实施方案中,该设备不包括触觉单元,但包括显示单元。在这种实施方案中,该设备不对触觉效果进行渲染,只对场景进行视觉渲染。然而,该设备可以准备用于渲染触觉效果的数据,使得另一设备(诸如触觉道具)可以执行触觉渲染。此类设备的示例是智能手机、头戴式显示器或膝上型计算机。
39.在至少一个实施方案中,该设备既不包括显示单元,也不包括触觉单元。在此类实施方案中,该设备不对场景进行视觉渲染,并且不对触觉效果进行渲染。然而,该设备可以
准备用于显示的数据,使得另一设备(诸如屏幕)可以执行显示,并且可以准备用于渲染触觉效果的数据,使得另一设备(诸如触觉道具)可以执行触觉渲染。这种设备的示例是台式计算机、光学媒体播放器或机顶盒。
40.在至少一个实施方案中,该沉浸式场景190和相关联的元素直接托管在该触觉渲染设备100的存储器106中,从而可以进行本地渲染和交互。
41.尽管沉浸式场景190的不同元素在图1中被描绘为单独的元素,但是本文所述的原理也适用于这些元素直接集成在场景描述中而不是单独的元素的情况。两个替换方案之间的任何混合也是可能的,其中一些元素集成在场景描述中,而其他元素是单独的文件。
42.图2示出了根据至少一个实施方案的用于渲染触觉反馈描述文件的过程的示例性流程图。这种过程200通常在触觉渲染设备100中实现并且由这种设备的处理器101执行。在步骤201中,该处理器获取沉浸式场景的描述(图1中的191)。该步骤可以通过以下手段来完成,例如通过经由通信网络从服务器接收触觉反馈描述文件、通过从外部存储设备或本地存储器读取触觉反馈描述文件、或采用任何其他手段。处理器分析该场景描述文件以便提取触觉对象(图1中的192),该触觉对象允许确定与触觉效果相关的参数,并且更具体地与触觉效果相关联的触觉体积。在步骤202中,处理器监视用户在沉浸式场景内的位置(或者为了更精确的检测,监视用户的身体部位的位置),以检测在交互期间与触觉体积的相交(对象碰撞)。碰撞检测可以例如由专门用于该任务的专用物理引擎来执行。当检测到此类相交时,在步骤203中,处理器从触觉对象提取参数,从而允许选择哪个触觉信号需要应用于哪个致动器或致动器组上。在步骤204中,处理器控制触觉单元以将所选择的触觉信号应用于触觉致动器或致动器组上,并且因此根据触觉对象的信息渲染触觉反馈。
43.尽管触觉效果在上文中被描述为由碰撞触发,但是它也可以由事件触发。此类事件例如是相对于整个沉浸式场景的,诸如升起的太阳(升高环境温度)、或爆炸(振动可以模拟冲击波)、或传入的通信或其他情形。
44.如上文所讨论的,一些设备本身不执行渲染,而是将该任务委托给其他设备。在这种情况下,准备数据用于视觉元素的渲染和/或触觉效果的渲染并且将该数据传输到执行渲染的设备。
45.在第一示例中,沉浸式场景191可以包括室外露营场所的虚拟环境,用户可以在其中移动表示他的虚拟形象。第一触觉反馈可以是将出现在虚拟环境中的任何地方并且由风扇产生的微风。当虚拟形象接近营火时,第二触觉反馈可以是30℃的温度。该效果将由执行过程200的用户所穿戴的触觉套装的加热元件来渲染。然而,该第二反馈将仅在用户的位置被检测为在第二触觉对象的触觉体积内时是有效的。在这种情况下,触觉体积表示到用户感觉到温度的火的距离。
46.在另一示例中,沉浸式场景191可以包括两个拳击手之间的战斗的视频,并且用户穿戴触觉套装,触觉效果可以是当搏斗者中的一者受到一拳时用户的胸部上的强烈振动。
47.图3示出了根据至少一个实施方案的沉浸式场景的数据结构的示例。该实施方案基于gltf
tm
文件格式。gltf
tm
的核心是描述包含3d模型的场景的结构和组成的json文件。该图示出了构成该结构的元素之间的关系。在这种情况下,场景300是聚集所有其他元素的顶层元素。最值得注意的是,它包括节点阵列。每个节点301可以包含允许创建层级结构的子节点。节点可以指网格或相机或皮肤,并且局部几何变换可以与该节点相关联。网格310对
应于渲染该网格所需的几何数据。皮肤320用于执行顶点蒙皮,以基于其姿态使网格的顶点受到骨架的骨骼的影响。相机325确定投影矩阵。动画340可以应用于节点的属性。缓冲区355包含用于3d模型的几何形状、动画和蒙皮的数据。缓冲区视图350将结构信息添加到缓冲区数据,而访问器345定义缓冲区视图的确切类型和布局。材料360基于物理材料属性来确定应当如何渲染对象。纹理365允许定义对象的外观。图像370定义用于纹理的图像数据,而采样器380描述纹理的包装和缩放。gltf
tm
文件的所有这些元素允许定义具有任何触觉反馈的常规沉浸式场景。
48.因此,在至少一个实施方案中,gltf
tm
文件还包括描述待渲染的触觉反馈的触觉对象330。在变型实施方案中,触觉对象包括触觉纹理贴图335,该触觉纹理贴图的数据可以与其他纹理365一起存储。在本文中描述了此类触觉对象。
49.图4示出了具有触觉对象的3d场景的示例。每个体积是其中用户可感觉到对应效果的区域。在一个示例中,球体对应于378hz的振动,并且立方体对应于10牛顿的压力效果。这是需要作为沉浸式场景描述的一部分被存储在触觉对象中的信息种类。在运行时,用户通过图1的他的设备100在沉浸式场景内导航。取决于沉浸式应用程序的种类,该导航可以对应于不同类型的导航。在虚拟现实的示例中,该导航与在沉浸式场景内表示用户并且在用户的控制下的虚拟形象(例如,3d对象)的移动有关。在增强现实应用程序的示例中,该导航与用户在真实世界中的物理移动相关,由定位系统跟踪以确定用户在沉浸式场景内的对应位置。在全方位视频的示例中,该导航与360
°
空间内的用户的视点有关。
50.在沉浸式场景内的导航期间,当用户(或其虚拟形象)的位置与触觉对象的触觉体积碰撞时,或者换句话说,当用户的位置在触觉体积的边界内时,可能与触觉对象发生碰撞。在此类情况下,在触觉渲染设备上触发相应的触觉效果。在图4的示例中,当用户开始与球体碰撞时,触觉渲染设备将以378hz的频率渲染振动,直到不再有碰撞为止。
51.然而,触觉对象不一定对应于可见3d对象。因此,它可以与没有任何可见表示的体积(触觉体积)相关联,使得当用户的位置在体积“内部”时发生碰撞。
52.因此,在至少一个实施方案中,沉浸式场景包括至少一个触觉对象,其特征在于触觉效果的类型、表征待应用的触觉信号的信息、以及表示在其中触觉效果有效以及在其中触觉渲染设备应当应用触觉效果的场景内的体积的信息。在一个变型实施方案中,表征触觉信号的信息是对包括触觉信号的文件的引用。在一个变型实施方案中,触觉体积是整个沉浸式场景,使得触觉效果是全局的并且与用户的位置无关。在一个变型实施方案中,触觉体积对应于与触觉对象相关联的虚拟对象的几何形状。
53.图5示出了根据至少一个实施方案的对应于图4的场景的基于gltf
tm
的数据结构的示例。场景500包括顶层节点501,该顶层节点包括三个子节点510、520和530。第一子节点510对应于图4的左下方的球体对象。节点510包括定义节点的平移t1、旋转r1和缩放s1的变换参数511、包括球体对象的完整几何形状(即,顶点组和表面组)的网格512。节点510还包括触觉对象513,该触觉对象的类型514被确定为具有频率515为378赫兹和强度516为0.5的振动。触觉对象的形状517指的是节点的形状,因此将使用由定义球体的网格512定义的几何形状。因此,触觉对象513的触觉效果将在该球体的体积内是有效的。第二子节点520对应于图4的顶部的立方体对象。节点520包括定义节点的平移t2、旋转r2缩放s2的变换参数521、包括立方体对象的完整几何形状(即,顶点组和表面组)的网格522。节点520还包括触
觉对象523,该触觉对象的类型524被确定为具有值525为10的压力。触觉对象的形状526指的是节点520的形状,因此将使用由定义立方体的网格522定义的几何形状。因此,触觉对象523的触觉效果将在该立方体的体积内是有效的。第三子节点530对应于图4右下方的圆柱体对象。该节点不包含任何触觉对象,因此将不具有相关联的触觉效果。
54.表1示出了根据至少一个实施方案的用于定义触觉对象的语法的示例。更具体地,该图示出了基于gltf
tm
的扩展机制的json语法。根据至少一个实施方案设计的触觉对象的扩展在语法的该示例中被标识为“idcc_haptics”。图中触觉效果的列表包括振动、压力和温度效果,但并不详尽。可以基于相同的原理(风、雨、雪、电或效果之间的任何组合)来定义其他类型的触觉效果。表11和表12分别描述了压力效果和温度效果的语法。用于描述触觉效果的语法在特定json模式(下面的一些示例)中定义,该特定json模式然后在场景描述文件中的节点的“属性”中实例化,如下所述。“形状类型”也与触觉对象相关联,并且允许描述触觉体积。它可以是根据节点的缩放属性缩放的原始体积(球体或立方体)(因此允许椭球体或平行六面体体积),或者可以被定义为自定义网格。在后一种情况下,自定义网格由节点的现有网格属性定义,并且对应于可见对象的几何形状。定义原始体积中的一者允许独立于任何可见元素来确定触觉体积。
[0055][0056]
表1
[0057]
在至少一个实施方案中,除了球体原始体积和立方体原始体积之外,还可以使用通常由3d物理引擎使用的附加体积,例如,诸如2d平面、椭球体、平行六面体或胶囊(胶囊由通过圆柱体接合在一起的两个半球构成)。该语法未在图中示出,但将包括在用于定义这些常规形状的附加枚举值和附加参数中添加附加原始体积。
[0058]
通常,定义了单个效果,但是可以存在和组合多个效果。例如,压力和温度可以组合起来表示天气状况(冷雨)。
[0059]
表2示出了根据至少一个实施方案的用于定义振动触觉效果的基于gltf
tm
的语法的示例。
[0060][0061]
表2
[0062]
振动触觉效果可以根据包括频率(正弦信号的恒定频率下的振动)和强度(振动的振幅)的参数来定义,或者当需要更复杂的效果时,根据触觉信号(类似于音频信号的波形)来定义。在第一种情况下,效果的参数可以在如图所示的振动语法内直接定义,并且由“频率”和“强度”语法元素携带。在第二种情况下,根据由嵌入到对应于访问器索引的gltf
tm
缓冲区中的数据定义的信号来确定效果。此类数据通常从外部文件加载,诸如波形音频文件(“.wav”格式)或触觉文件格式(“ohm”格式)或适于携带振动信号的任何其他文件格式。当不存在对应语法元素时,可以确定并且应该使用默认值。例如,根据图7的定义的振动效果的默认值是在半强度下以250hz的频率振动。
[0063]
表3示出了根据至少一个实施方案的包括振动茶壶的场景的定义的示例。该示例示出了如何定义包括与振动效果相关联的3d对象的简单场景。
[0064]
[0065][0066]
表3
[0067]
在该示例中,场景包括表示场景的唯一3d对象的命名为“茶壶”的单个节点。通过一组缓冲区视图从“teapot.bin”文件加载该节点的几何结构。该材料定义了如何表示网格,并且平移定义了对象在虚拟环境中的位置。触觉对象也与该节点相关联。该触觉对象对应于频率为250hz(“频率”语法元素)且强度为70%(“强度”语法元素)下的振动效果(“振动”语法元素)。触觉体积被定义为节点的网格(“形状类型”语法元素=2),因此是茶壶的网格。因此,当此类对象存在于沉浸式场景中时,当用户的位置与茶壶的几何形状碰撞时,换
言之当用户“触摸”茶壶时,将渲染振动。
[0068]
表4示出了根据至少一个实施方案的包括触觉对象和相关联的触觉体积的场景的定义的示例。
[0069][0070]
表4
[0071]
如前所述,触觉体积不一定是可见的。为了简洁和简单起见,该示例不包括对包括与触觉体积无关的其他对象的其他节点的定义,并且仅包括具有不可见触觉体积的两个触觉效果。场景包括命名为“haptic_example”的单个节点。它指示“idcc_haptics”扩展、gltf
tm
规范的版本(2.0)的使用,并且没有缓冲区用于加载资源。第一触觉效果是被配置成以频率378hz和半(0.5)强度振动的振动触觉对象。该效果不与可见对象相关联,而是与不可见触觉体积相关联,该不可见触觉体积是位于位置p=(-1.8,0.7,-0.7)处并且大小为1.2的立方体。第二触觉效果是被配置成施加10牛顿的力的压力触觉对象。该效果不与可见对象相关联,而是与不可见触觉体积相关联,该不可见触觉体积是位于位置p’=(-2.9,0.0,0.0)处且大小为1.0(由于未指定,因此为默认值)的球体。
[0072]
在一个实施方案中,触觉对象与基于网格的虚拟对象相关联,但是被配置有大于由网格限定的体积的体积。例如,虚拟对象可以对应于由具有纹理和动画的网格表示的壁炉,并且触觉对象可以包括配置有大于壁炉网格的边界框的球体的触觉体积的温度触觉效果。利用此类配置,接近虚拟壁炉的用户能够在与壁炉接触(碰撞)之前感受到热量。
[0073]
在一个实施方案中,场景包括具有不同触觉效果的同心体积的多个重叠触觉对象。例如,一组触觉对象可以使用位于壁炉周围的同心球体,该体积具有随着温度值增加而减小的尺寸。使用该技术,用户在接近壁炉时会感觉到热量逐渐增加。由于用户将要与多个球体碰撞,因此将选择最小的球体(即,最接近火的球体)。
[0074]
表5示出了根据至少一个实施方案的允许振动触觉效果的渐进效果的示例。实际上,在一个实施方案中,不是定义多个重叠触觉对象,而是提出在触觉体积的跨度上的最小值和最大值之间的插值。该图仅示出了添加到根据表2的振动触觉效果的定义的语法元素。首先,将“插值”标志语法元素添加到振动触觉效果的定义中。该标记允许请求待插值的触觉效果的值并且确定如何执行插值。插值可以是任何线性、指数或非线性函数。其次,“min”和“max”语法元素允许通过定义待应用于期望值的比例因子来定义插值的范围。
[0075][0076]
表5
[0077]
表6示出了使用插值的振动触觉效果的示例。
[0078][0079]
表6
[0080]
在该示例中,触觉体积是定位在虚拟环境的原点处的大小为2.0的立方体。触觉效果是待在0.4和1.0之间进行线性插值,或者更准确地说在0.4
×
1.0(第一个值是“插值”的“min”缩放值,并且第二个值是“强度”)和1.0
×
1.0(第一个值是“插值”的默认“max”缩放值,并且第二个值是“强度”)之间进行线性插值。根据到触觉体积的中心的距离来进行插值。因此,在原点,触觉效果强度将是0.4。在立方体的中心,在等于(1.0,1.0,1.0)的位置处,强度将是0.4。在等于(0.5,0.5,0.5)的位置处,强度将是0.7。
[0081]
在至少一个实施方案中,插值的类型由触觉对象的参数定义,从而允许至少在线性和自定义之间进行选择。在后一种情况下,在附加参数中确定该函数。
[0082]
表7示出了根据使用存储在文件中的触觉信号的至少一个实施方案的用于振动触觉效果的基于gltf
tm
的语法的示例。
[0083][0084][0085]
表7
[0086]
该实施方案在表2中示出的用于振动触觉效果的示例性语法的基础上建立,并且向存储待应用于渲染该效果的触觉信号的文件添加引用。这允许定义比简单地使用固定频率的正弦信号更复杂的触觉效果。除此之外,强度参数也可以适用于触觉信号。这允许共享唯一的触觉信号文件,并且将其以不同的强度水平应用于不同的触觉对象中。在使用具有同心体积的触觉对象的示例中,触觉对象可以共享相同的触觉信号文件,并且具有增加的强度以提供渐进效果。该文件格式适于存储触觉信号。此类使用的格式的示例是波形音频(wav)、对象触觉元数据(ohm)、苹果触觉音频模式(ahap)或浸入科技的hapt格式。相同的原理类似地适用于其他类型的触觉效果。
[0087]
表8示出了根据至少一个实施方案的定义效果位置的用于振动触觉效果的基于gltf
tm
的语法的示例。该实施方案在对象触觉元数据(ohm)格式的基础上建立,并且目标在于在用户身体的限定位置处应用触觉效果。
[0088][0089][0090]
表8
[0091]
因此,在至少一个实施方案中,提出添加语法元素,从而允许指定应当将效果应用于上文提出的语法的位置。这可以分两步完成。首先,通过确定表示触觉感知的空间敏锐度
的几何模型(换句话说,身体模型),其次,通过确定应当将触觉效果应用在身体模型上的位置。可以选择该几何模型作为标准预定模型集合中选择出来的通用模型。在这种情况下,该模型基于人体的网格。也可以通过指定该几何模型的几何形状确定该几何模型为自定义几何模型。这可以适用于非标准触觉渲染设备,例如触觉椅。在这种情况下,触觉感知空间敏锐度受到致动器在渲染设备上的精确位置的限制。在所提出的语法中,几何模型由“avatar_id”标识。通过使用对应于指定确定一组相关联顶点的主体部分的二进制掩码的“主体_部分_掩码”语法元素或通过使用指定应当被激励的顶点的“顶点”语法元素来选择应当应用效果的位置。
[0092]
表9示出了根据至少一个实施方案的用于在使用定义效果位置的振动触觉效果时定义几何模型的基于gltf
tm
的语法的示例。该语法定义几何模型的标识符“id”、指定几何模型的细节级别(因此分辨率)的“lod”值、以及待渲染的触觉效果的“类型”。因此,它允许指定应用触觉效果的确切位置。
[0093][0094][0095]
表9
[0096]
表10示出了根据至少一个实施方案的使用携带触觉信号的信道的用于振动触觉效果的基于gltf
tm
的语法的示例。该实施方案向上文提出的语法添加了信道的概念。实际上,波形音频或ohm文件可以包括用于携带与多个触觉对象相关联的多个触觉信号的多个信道。在这种情况下,语法还包括表示待使用的信道的信息。
[0097]
[0098][0099]
表10
[0100]
表11示出了根据至少一个实施方案的用于压力触觉效果的基于gltf
tm
的语法的示例。压力触觉效果可以简单地通过在“值”语法元素中以牛顿表示的数值压力值来定义。如果“值”语法元素不存在,则应当使用对应于无压力的默认值“0.0”。以上在振动触觉效果的上下文中呈现的所有实施方案类似地适用于压力触觉效果。
[0101]
[0102][0103]
表11
[0104]
表12示出了根据至少一个实施方案的用于温度触觉效果的基于gltf
tm
的语法的示例。温度触觉效果可以简单地通过在“值”语法元素中以摄氏度表示的数值温度值来定义。如果“值”语法元素不存在,则应当使用对应于无压力的默认值“20.0”。以上在振动触觉效果的上下文中呈现的所有实施方案类似地适用于温度触觉效果。
[0105][0106]
表12
[0107]
图6a示出了根据使用触觉纹理贴图的实施方案的3d对象的示例。3d对象1700表示具有黑色软橡胶握持器1720以将用户的手与瓶的温度隔离的金属瓶1710。传统上,纹理文件可以用于描述对象材料的颜色、漫射、发射、法线、遮挡、粗糙度、金属、镜面光泽度,并且允许由渲染引擎基于纹理文件进行适当的(基于物理的)渲染。
[0108]
除了显示3d瓶的表示之外,渲染还可以受益于力反馈设备,以允许用户从几何描述中感受瓶的形状及其不同的组件。
[0109]
根据一个实施方案,通过使用触觉纹理贴图来描述对象的触觉属性来增强该渲染。触觉纹理贴图允许通过定义用于3d对象的特定区域的不同触觉属性的不同参数来模拟图6a的瓶的不同粗糙度和温度。例如,通过使用基于纹理贴图的类似原理编码的附加纹理
信息,将金属瓶1710渲染为具有较软且较热的橡胶握持器1720的硬且冷的金属瓶。图6b中所示的温度纹理贴图确定对象表面上的温度(金属部分比塑料部分更冷),并且图6c中所示的速率硬度纹理贴图指示金属部分是刚性的而橡胶握持器是软的。
[0110]
使用这些触觉纹理贴图,一旦用户触摸对象,就确定了触觉纹理的位置,获取相关触觉信息,并且渲染对应的触觉效果。该机制允许用针对不同类型的触觉特征的异质触觉数据来定义具有复杂表面的3d对象。
[0111]
根据一个实施方案,用于定义触觉效果的基于gltf
tm
的语法包括触觉纹理贴图以定义触觉效果。不同的触觉特征可以被考虑并且需要被区分。在一个实施方案中,考虑表13中列出的触觉特征。
[0112][0113][0114]
表13
[0115]
动力刚度、冲程光谱响应和粘滑不会将触觉值直接编码,而是使用表的索引。id对应于自回归过滤器的系数存储于其中的文件。它们对在短暂接触(动力刚度)或冲程(冲程光谱响应或粘滑瞬变)期间利用材料测量的振动进行建模,如表14中所示。
[0116]
[0117]
表14
[0118]
表15示出了根据至少一个实施方案的用于定义触觉对象的触觉纹理贴图属性的语法的示例。该语法允许确定不同类型的触觉效果的参数:
[0119]
‑“
rate-hardness”允许确定表面的硬度,换句话说,它被定义为力随穿透速度变化的初始变化速率,并且用于以更好的稳定性模拟刚度和阻尼行为两者。该值以8位纹理存储,并且涵盖从0n.s-1/m.s-1至10000n.s-1/m.s-1的值,其中分辨率为40n.s-1/m.s-1,
[0120]
‑“
contact-area-spread-rate”被定义为当手指按压表面时接触面积在手指表面上扩展的速率。该值以8位纹理存储,并且涵盖从0n.cm2至25.6n.cm2的值,其中分辨率为0.1n.cm2,
[0121]
‑“
local-surface-orientation”允许确定形状的曲率。该值以24纹理(根据x、y、z方向的3
×
8位)存储,并且涵盖从0度到180度的值,其中分辨率为0.002度,
[0122]
‑“
local-indentation”允许确定表面的凹凸或微观细节。该值以8位纹理存储,并且涵盖从-5mm至+5mm的值,其中分辨率为0.04mm,
[0123]
‑“
kinetic-friction”允许确定动摩擦系数,即,由于每个对象之间的摩擦而产生的力。该值以8位纹理存储,并且涵盖从-5至+5的值,其中分辨率为0.04,
[0124]
‑“
static-friction”允许确定静摩擦系数,即,使对象在彼此上滑动所必需的力。该值以8位纹理存储,并且涵盖从-5至+5的值,其中分辨率为0.04,
[0125]
‑“
temperature”允许确定对象的绝对温度。该值以8位纹理存储,并且涵盖从-50℃至+75℃的值,其中分辨率为0.5℃,
[0126]
‑“
relative-temperature”允许确定用户的相对温度(例如37.5℃)。该值以8位纹理存储,并且涵盖从-25.4℃至+25.4℃的值,其中分辨率为0.2℃,
[0127]
‑“
dynamic-stiffness”允许从振动的视点确定对象的顺应性,即,当用户敲击对象时的瞬时振动。该值以8位纹理存储,并且涵盖从0至255的值,该值是索引表中的id,
[0128]
‑“
stroke-spectral-response”允许确定由两个对象之间的摩擦引起的振动。该值以8位纹理存储,并且涵盖从0至255的值,该值是索引表中的id,
[0129]
‑“
stick-slip”允许确定最终在静摩擦和滑动之间的过渡中观察到的振动现象。该值以8位纹理存储,并且涵盖从0至255的值,该值是索引表中的id。
[0130]
[0131]
[0132][0133]
表15
[0134]
图7a和图7b示出了根据至少一个实施方案的包括触觉纹理贴图的触觉对象的示例。该对象表示茶壶,并且触觉效果与茶壶的温度相关。茶壶的几何形状由相应的网格限定。触觉温度效果由应用于对象的几何形状的触觉纹理贴图定义,在该示例中,该触觉纹理贴图将茶壶的底部定义为热,将茶壶的盖子定义为冷,并且茶壶的侧面从热到冷变化。在这些图中,具有高温的区域表示为具有浅灰色阴影的区域,而暗灰色阴影表示具有低温的区域:换句话说,越浅越热,越暗越冷。然而,图中所示的值不反映表1中所定义的温度,而是任意选择以获取可理解的图示。
[0135]
图8a和图8b示出了根据至少一个实施方案的表示包括触觉纹理贴图的触觉对象的场景描述的示例。该场景对应于具有如图7a和图7b中所描述的温度相关触觉贴图的茶壶。场景描述语法横跨图8a和图8b。从gltf
tm
描述文件的结尾开始,在图8b中,场景描述2001包括命名为茶壶的单个节点。因此一组节点2010是命名为茶壶的单个子节点。几何形状在2020中被定义为具有平移以将对象定位在场景内的第一网格。单个子节点还包括触觉对象2030,该触觉对象包括两个效果:振动效果2031和温度触觉贴图2032。触觉贴图2032被定义为提供与“温度”相关的触觉效果,并且使用纹理文件2040的列表中的索引“0”的纹理贴图像(因此是第一个)。振动效果由其参数直接定义:由于shapetype参数等于2,因此在对象的网格上应用为250hz的振动频率和为0.7的强度。场景描述文件的其他部分与定义对象2050的几何形状的网格相关,并且在图8a中,通过defaultmat材料定义表面的视觉方面的材料2060、缓冲区视图2070、存储数据的缓冲区2075、版本号2080、缓冲区的描述2085以及所使用的扩展列表2090。
[0136]
虽然上文已经描述了用于携带触觉对象的语法的第一示例,但是下文描述了根据至少一个实施方案的语法的第二示例。语法的该第二示例允许更精确地并且以更优化的方式描述信号。例如,触觉效果可以被定义一次并且然后被多次引用以创建触觉信号,可选地具有一些变化。它还包含更多的信号参数,以提供更完整的解决方案来生成任何类型的信号。
[0137]
表16示出了根据至少一个实施方案的描述全局触觉体验的扩展的第一级的语法的示例。它提供触觉对象的描述,列出不同的虚拟形象(即,身体表示)并定义所需的信号。还添加了形状属性。
[0138]
[0139]
[0140][0141]
表16
[0142]
表16中所示的语法基于以下元素:
[0143]-description:信号的字符串描述。
[0144]-avatars:在该触觉体验中使用的所有虚拟形象的列表。它引用下面描述的虚拟形象模式。
[0145]-signals:附加到触觉对象的所有信号的列表。该阵列引用下面描述的信号模式。
[0146]-trigger:该关键词可以用于指定触发触觉对象的事件。
[0147]-shape:定义触觉对象的形状。
[0148]-accessors:信息阵列和对缓冲区视图的引用。它引用在gltf 2.0的官方规范中定义的gltf访问器模式。
[0149]-bufferviews:缓冲区的一部分。它引用在gltf 2.0的官方规范中定义的gltf缓冲区视图模式。
[0150]-buffers:引用原始数据。它引用在gltf 2.0的官方规范中定义的gltf缓冲区模式。
[0151]
除了前一语法之外,可以如表17的语法中所示描述触觉信号。该语法包含信号的字符串描述、一些元数据信息(例如,信号类型、编码器类型、采样率等)、对虚拟形象的引用以及信号的数据。如果该信号包含pcm数据,则可以利用对文件的引用或对缓冲区的访问器来访问该信号。对于描述性内容,在该级别定义所有必要效果的列表。信道列表最终完成该信号。
[0152]
[0153][0154][0155]
表17
[0156]
表17中所示的语法基于以下元素:
[0157]-description:信号的字符串描述。
[0158]-signal_type:指定触觉刺激的类型(振动、温度、力......)
[0159]-encoder:指定用于存储信号的编码器的类型。“原始”意味着在没有任何类型的编码的情况下引用信号文件。当仅使用gltf扩展描述信号时,使用“描述性”(例如,可以从ivs或ahap文件翻译过来)。“pcm_有损”和“pcm_无损”表示使用专用编码器(这里分别是aac编码解码器和als编码解码器)对信号进行编码。
[0160]-sampling_rate:信号的采样率。
[0161]-bit_depth:所引用的数据的位深度。
[0162]-nb_channels:信号的信道数。
[0163]-nb_samples_per_channel:每个信道中的样本数。
[0164]-nb_reduced_samples_per_channel:下采样后的每个信道的样本数。
[0165]-avatar_id:先前利用下面描述的虚拟形象模式描述的虚拟形象的id。
[0166]-signal_file:到包含触觉数据的文件的路径。它可以是任何类型的文件,包括wav、ahap、ivs、aac或其他格式。
[0167]-signal_accessor:缓冲区中数据的访问器id。
[0168]-effect_list:在信号中使用的所有触觉效果的列表。它引用下面描述的触觉效果模式。
[0169]-channels:信号的信道列表。它引用下面描述的触觉信道模式。
[0170]
可以如表18的语法中所示描述触觉效果。该语法定义可以在触觉信道的时间线中引用的基本效果。它允许仅描述一次效果,然后在不同的信道中多次引用该效果。可以使用不同的属性来描述效果。我们定义了五种类型的效果:连续、周期性、瞬时、pcm或时间线。连续效应和周期性效应可以使用一个或几个属性来定义。例如,强度、起音时间、渐弱时间、起音音量和衰减水平可以用于定义简单效果(类似于ivs)。可以使用允许通过指定关键点来定义曲线的包络属性来描述更高级的效果。瞬时效果可以仅用强度和锐度值来定义。pcm效果可以简单地引用存储在缓冲区中的原始数据。诸如intensity、attack_time、fade_time、envelope之类的属性可以用作这些效果的乘数。时间线效果是对先前定义的基本效果的简单定时引用。
[0171]
[0172]
[0173][0174]
表18
[0175]
表18中所示的语法基于以下元素:
[0176]-id:效果的id。
[0177]-effect_type:指定触觉效果的类型。效果类型包括连续效果(例如,用于力反馈的非周期性效果)、周期性效果(例如,用于振动的正弦效果)、瞬时(例如,感觉像轻拍的短暂且紧凑的振动效果)、pcm(即,原始信号数据)或引用其他现有效果的时间线效果。
[0178]-pcm_data:对效果的原始数据的访问器。
[0179]-intensity:效果的强度。如果该效果使用pcm数据、包络数据或时间线,则该属性可以用作乘数。
[0180]-sharpness:定义效果的锐度。
[0181]-duration:效果的持续时间。
[0182]-attack_time:效果的起音阶段的持续时间。
[0183]-fade_time:效果的渐弱阶段的持续时间。
[0184]-release_time:在事件结束之后持续强度包络达到零所花费的时间量。
[0185]-attack_level:信号开始时的强度。
[0186]-decay_level:信号结尾处的强度。
[0187]-envelope:定义信号包络的关键帧的阵列。
[0188]-wave_frequency:周期性效果的频率。
[0189]-waveform:周期性效果的波形。
[0190]-timeline:效果的时间线。
[0191]
图9中示出了连续效果的各种触觉效果属性。
[0192]
触觉信道扩展为信号的每个信道提供特定的元数据信息。如表19的语法所示,它包括描述、增益、混合权重(以最终将信号合并在一起)、身体部位掩码(遵循与ohm相同的约定来定位效果)、对顶点列表的访问器(以提供更准确的身体定位)。对于描述性内容,效果时间线用于引用和组织以信号级别定义的时间效果。最后,属性时间线可以用作在时间上调整强度和锐度参数的附加方式。
[0193]
[0194][0195]
表19
[0196]
表19中所示的语法基于以下元素:
[0197]-id:信道的id。
[0198]-description:信道的描述。
[0199]-gain:应用于该信道中的每个效果的增益。
[0200]-mixing_weight:可选地指定用于将信道混合在一起的权重。
[0201]-body_part_mask:指定身体上应当应用该信道的效果的位置的身体掩码。
[0202]-vertices:定义身体上应当应用该信道的效果的位置的虚拟形象的顶点。
[0203]-effect_timeline:信道效果的时间线。它使用下面定义的触觉引用模式。
[0204]-properties_timeline:属性的时间线。这里定义的属性用作乘数以在时间上改变信号通道的幅度或锐度。
[0205]
如表20的语法中所示,可以在时间线内使用触觉引用来引用在信号级别定义的触觉效果。它只需要效果的id和开始时间。它还提供了覆盖所引用的效果的属性的可能性。利
用该特征,相同的效果可以在具有轻微变化的不同信道中多次使用。
[0206]
[0207]
[0208][0209]
表20
[0210]
表20中所示的语法基于以下元素:
[0211]-id:所引用的效果的id。
[0212]-starting_time:在时间线上的所引用的效果的开始时间。
[0213]-effect_type
[0214]-wave_frequency
[0215]-waveform
[0216]-intensity
[0217]-sharpness
[0218]-duration
[0219]-attack_time
[0220]-fade_time
[0221]-release_time
[0222]-attack_level
[0223]-decay_level
[0224]
除了“id”和“starting time”之外的所有这些参数都是可选参数,并且可以用于覆盖所引用的效果的属性。这些参数与表18中为效果模式定义的那些参数相同。一个示例是重复使用触觉效果,但具有较低强度。如已经提到的,这允许通过重新使用一些参数来优化整个场景的定义。
[0225]
该扩展可以与信道的属性时间线一起使用,以调整强度或锐度参数,如表21的语法所示。它被用作乘数。这些属性可以使用单个值或用关键点定义的曲线来定义。
[0226][0227]
表21
[0228]
表21中所示的语法基于以下元素:
[0229]-property_type:属性的类型。它指定该属性是单个值还是曲线,以及它是否应当被应用于强度或锐度。
[0230]-value:属性的值。
[0231]-curve:由值和时间戳定义的关键帧的阵列。
[0232]
触觉虚拟形象被用作触觉效果的身体表示。如表22的语法中所示,可以定义不同类型的虚拟形象,并且可以引用来自缓冲区的自定义网格来确定特定几何形状。
[0233]
[0234][0235]
表22
[0236]
表22中所示的语法基于以下元素:
[0237]-id:虚拟形象的id。
[0238]-lod:虚拟形象的细节级别。
[0239]-type:预定义类型的虚拟形象,包括振动、压力和温度。其他虚拟形象可使用“custom”类型和网格来描述。
[0240]-mesh:虚拟形象的网格。
[0241]
表23中所示的语法使用伴随文件“vibration.wav”中给出的信号来定义触觉对象的第一示例。
[0242]
[0243][0244]
表23
[0245]
表24中所示的语法定义包括完全描述性信号的触觉对象的第二示例。
[0246]
[0247]
[0248][0249]
表24
[0250]
在整个文档中使用术语“用户”。这意味着不仅包括人类使用者,还包括动物。使用情况的一个示例是通知狗其进入了限制区域。为此,触觉渲染设备可以采取振动狗项圈的形式。当狗进入限制区域时,提供振动。在这种情况下,身体模型使用适当的网格。
[0251]
尽管已经分别描述了不同的实施方案,但是在遵守本公开的原理的同时可以进行实施方案的任何组合。
[0252]
虽然实施方案涉及触觉效果,但是本领域技术人员将理解,相同的原理可以应用于其他效果(例如,诸如感官效果),并且因此将包括气味和味道。因此,适当的语法将确定与这些效果相关的适当参数。
[0253]
提及“一个实施方案”或“实施方案”或“一个具体实施”或“具体实施”以及它们的其他变型,意味着结合实施方案描述的特定的特征、结构、特性等包括在至少一个实施方案中。因此,短语“在一个实施方案中”或“在实施方案中”或“在一个具体实施中”或“在具体实施中”的出现以及出现在本说明书通篇的各个地方的任何其他变型不一定都是指相同的实施方案。
[0254]
另外,本技术或其权利要求书可涉及“确定”各种信息。确定信息可包括例如估计信息、计算信息、预测信息或从存储器检索信息中的一者或多者。
[0255]
另外,本技术或其权利要求书可涉及“获取”各种信息。与“访问”一样,获取旨在为广义的术语。获取信息可包括例如(例如,从存储器或光学介质存储装置)获取信息、访问信息或检索信息中的一者或多者。此外,在诸如例如存储信息、处理信息、发射信息、移动信息、复制信息、擦除信息、计算信息、确定信息、预测信息或估计信息的操作期间,“获取”通常以一种方式或另一种方式参与。
[0256]
应当理解,例如,在“a/b”、“a和/或b”以及“a和b中的至少一者”的情况下,使用以下“/”、“和/或”和“至少一种”中的任一种旨在涵盖仅选择第一列出的选项(a),或仅选择第二列出的选项(b),或选择两个选项(a和b)。作为进一步的示例,在“a、b和/或c”和“a、b和c中的至少一者”的情况下,此类短语旨在涵盖仅选择第一列出的选项(a),或仅选择第二列出的选项(b),或仅选择第三列出的选项(c),或仅选择第一列出的选项和第二列出的选项
(a和b),或仅选择第一列出的选项和第三列出的选项(a和c),或仅选择第二列出的选项和第三列出的选项(b和c),或选择所有三个选项(a和b和c)。如对于本领域和相关领域的普通技术人员显而易见的是,这可扩展到所列出的尽可能多的项目。

技术特征:
1.一种方法,所述方法包括:获取(201)表示以下内容的信息:场景描述(500),所述场景描述包括:表示所述场景的至少一个元素的至少一个信息项,和表示触觉对象的信息,所述信息包括:触觉效果的类型(514,524),所述触觉效果的至少一个参数(515,516,525),和所述触觉效果将在其上被激活的触觉体积或表面(517,512,526,522),检测所述用户的位置或所述用户的身体部位的位置与所述触觉体积或表面之间的碰撞(202),以及准备用于渲染沉浸式场景的数据,其中基于所述触觉效果的所述至少一个参数来生成所述数据。2.根据权利要求1所述的方法,其中在包括振动、压力、温度和移动的集合中选择所述触觉效果的类型。3.根据权利要求1或2所述的方法,其中所述触觉效果的所述参数描述待应用到触觉致动器以渲染所述触觉效果的信号。4.根据权利要求1至3中任一项所述的方法,其中所述触觉效果的所述参数包括对包括待应用的触觉信号的文件的标识。5.根据权利要求1至4中任一项所述的方法,其中所述触觉体积是指所述场景的所述至少一个元素并且由所述场景的所述至少一个元素的几何形状的体积确定。6.根据权利要求1至4中任一项所述的方法,其中所述触觉体积是指所述场景的所述至少一个元素并且由所述场景的所述至少一个元素的几何形状的表面确定。7.根据权利要求1至4中任一项所述的方法,其中在包括2d平面、球体、椭球体、立方体、平行六面体和胶囊的集合中选择所述触觉体积。8.根据权利要求1至7中任一项所述的方法,其中在包括3d对象、2d或3d视频以及全方位视频的集合中选择所述场景的所述元素。9.根据权利要求1至8中任一项所述的方法,其中所述触觉效果的所述至少一个参数是纹理贴图。10.一种设备,所述设备包括处理器(101),所述处理器被配置为:获取表示以下内容的信息(190):场景描述(191),所述场景描述包括:表示所述场景的至少一个元素的至少一个信息,和表示触觉对象(192)的信息,所述信息包括:触觉效果的类型,所述触觉效果的至少一个参数,和所述触觉效果在其上起作用的触觉体积或表面,检测所述用户的位置或所述用户的身体部位的位置与所述触觉体积或表面之间的碰撞,以及准备用于渲染沉浸式场景的数据,其中基于所述触觉效果的所述至少一个参数来生成
所述数据。11.根据权利要求10所述的设备,其中在包括振动、压力、温度、移动的集合中选择所述触觉效果的类型。12.根据权利要求10或11所述的设备,其中所述触觉效果的所述参数描述待应用到触觉致动器以渲染所述效果的信号。13.根据权利要求10至12中任一项所述的设备,其中所述触觉效果的所述参数包括对包括待应用的触觉信号的文件的标识。14.根据权利要求10至13中任一项所述的设备,其中所述触觉体积是指所述场景的所述至少一个元素并且由所述场景的所述至少一个元素的几何形状的体积确定。15.根据权利要求10至13中任一项所述的设备,其中所述触觉体积是指所述场景的所述至少一个元素并且由所述场景的所述至少一个元素的几何形状的表面确定。16.根据权利要求10至13中任一项所述的设备,其中在包括2d平面、球体、椭球体、立方体、平行六面体和胶囊的集合中选择所述触觉体积。17.根据权利要求10至16中任一项所述的设备,其中在包括3d对象、2d或3d视频以及全方位视频的集合中选择所述场景的所述元素。18.根据权利要求10至17中任一项所述的设备,其中所述触觉效果的所述至少一个参数是纹理贴图。19.根据权利要求10至18中任一项所述的设备,其中所述设备还被配置为通过根据所述触觉效果的所述至少一个参数向触觉致动器应用触觉信号来渲染所述触觉效果。20.一种信号,所述信号用于渲染包括表示场景描述(500)的信息的沉浸式场景,所述场景描述包括:表示所述场景的至少一个元素的至少一个信息,和表示触觉对象的信息,所述信息包括:触觉效果的类型,所述触觉效果的至少一个参数,和所述触觉效果在其上起作用的触觉体积或表面。21.根据权利要求20所述的信号,其中在包括振动、压力、温度、移动的集合中选择所述触觉效果的类型。22.根据权利要求20或21所述的信号,其中所述触觉效果的所述参数描述待应用到触觉致动器以渲染所述效果的所述信号。23.根据权利要求20至22中任一项所述的信号,其中所述触觉效果的所述参数包括对包括待应用的触觉信号的文件的标识。24.根据权利要求20至23中任一项所述的信号,其中所述触觉体积是指所述场景的所述至少一个元素并且由所述场景的所述至少一个元素的几何形状的体积确定。25.根据权利要求20至23中任一项所述的信号,其中所述触觉体积是指所述场景的所述至少一个元素并且由所述场景的所述至少一个元素的几何形状的表面确定。26.根据权利要求20至23中任一项所述的信号,其中在包括2d平面、球体、椭球体、立方体、平行六面体和胶囊的集合中选择所述触觉体积。27.根据权利要求20至26中任一项所述的信号,其中在包括3d对象、2d或3d视频以及全
方位视频的集合中选择所述场景的所述元素。28.根据权利要求20至27中任一项所述的信号,其中所述触觉效果的所述至少一个参数是纹理贴图。29.一种计算机程序,所述计算机程序包括程序代码指令,所述程序代码指令在由处理器执行时实施根据权利要求1至9中任一项所述的方法。30.一种非暂态计算机可读介质,所述非暂态计算机可读介质包括程序代码指令,所述程序代码指令在由处理器执行时实施根据权利要求1至9中任一项所述的方法。

技术总结
一种触觉渲染设备和对应的渲染方法允许渲染在包括表示沉浸式场景描述的信息的触觉信号中定义的触觉效果。该沉浸式场景包括表示该场景的至少一个元素的信息和表示触觉对象的信息,该信息包括触觉效果的类型、该触觉效果的至少一个参数以及该触觉效果在其上起作用的触觉体积或表面。该触觉效果的参数可以是触觉纹理贴图。提出了相应的语法。提出了相应的语法。提出了相应的语法。


技术研发人员:F
受保护的技术使用者:交互数字CE专利控股有限公司
技术研发日:2021.10.22
技术公布日:2023/8/16
版权声明

本文仅代表作者观点,不代表航空之家立场。
本文系作者授权航家号发表,未经原创作者书面授权,任何单位或个人不得引用、复制、转载、摘编、链接或以其他任何方式复制发表。任何单位或个人在获得书面授权使用航空之家内容时,须注明作者及来源 “航空之家”。如非法使用航空之家的部分或全部内容的,航空之家将依法追究其法律责任。(航空之家官方QQ:2926969996)

飞行汽车 https://www.autovtol.com/

分享:

扫一扫在手机阅读、分享本文

相关推荐