CN118043764A - 编码/解码触觉数据的方法和装置 - Google Patents
编码/解码触觉数据的方法和装置 Download PDFInfo
- Publication number
- CN118043764A CN118043764A CN202280066250.8A CN202280066250A CN118043764A CN 118043764 A CN118043764 A CN 118043764A CN 202280066250 A CN202280066250 A CN 202280066250A CN 118043764 A CN118043764 A CN 118043764A
- Authority
- CN
- China
- Prior art keywords
- signal
- haptic
- data
- layer
- encoded
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
- 238000000034 method Methods 0.000 title claims abstract description 115
- 230000000694 effects Effects 0.000 claims abstract description 87
- 230000015654 memory Effects 0.000 claims description 41
- 230000035807 sensation Effects 0.000 claims description 34
- 230000008447 perception Effects 0.000 claims description 9
- 230000001419 dependent effect Effects 0.000 claims description 3
- 230000006870 function Effects 0.000 description 60
- 238000009877 rendering Methods 0.000 description 42
- 230000008569 process Effects 0.000 description 37
- 238000004891 communication Methods 0.000 description 27
- 238000012545 processing Methods 0.000 description 23
- 108010076504 Protein Sorting Signals Proteins 0.000 description 14
- 238000010586 diagram Methods 0.000 description 14
- 239000013598 vector Substances 0.000 description 12
- 238000006243 chemical reaction Methods 0.000 description 8
- 230000011664 signaling Effects 0.000 description 8
- 238000005516 engineering process Methods 0.000 description 5
- 230000005291 magnetic effect Effects 0.000 description 5
- 238000004590 computer program Methods 0.000 description 4
- 238000007654 immersion Methods 0.000 description 4
- 230000003155 kinesthetic effect Effects 0.000 description 4
- 230000033001 locomotion Effects 0.000 description 4
- 230000003287 optical effect Effects 0.000 description 4
- 230000008901 benefit Effects 0.000 description 3
- 238000012937 correction Methods 0.000 description 3
- 238000001914 filtration Methods 0.000 description 3
- 238000013139 quantization Methods 0.000 description 3
- 230000001052 transient effect Effects 0.000 description 3
- 238000013459 approach Methods 0.000 description 2
- 238000004364 calculation method Methods 0.000 description 2
- 235000019994 cava Nutrition 0.000 description 2
- 239000011521 glass Substances 0.000 description 2
- 208000013057 hereditary mucoepithelial dysplasia Diseases 0.000 description 2
- 239000000463 material Substances 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 238000005192 partition Methods 0.000 description 2
- 230000002093 peripheral effect Effects 0.000 description 2
- 239000004065 semiconductor Substances 0.000 description 2
- 230000001133 acceleration Effects 0.000 description 1
- 238000004458 analytical method Methods 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 238000004422 calculation algorithm Methods 0.000 description 1
- 239000002131 composite material Substances 0.000 description 1
- 238000007906 compression Methods 0.000 description 1
- 230000006835 compression Effects 0.000 description 1
- 238000013144 data compression Methods 0.000 description 1
- 238000013500 data storage Methods 0.000 description 1
- 230000005484 gravity Effects 0.000 description 1
- 238000007373 indentation Methods 0.000 description 1
- 238000003780 insertion Methods 0.000 description 1
- 230000037431 insertion Effects 0.000 description 1
- 230000010354 integration Effects 0.000 description 1
- 238000013507 mapping Methods 0.000 description 1
- 210000003205 muscle Anatomy 0.000 description 1
- 230000024159 perception of rate of movement Effects 0.000 description 1
- 238000005070 sampling Methods 0.000 description 1
- 230000001953 sensory effect Effects 0.000 description 1
- 238000001228 spectrum Methods 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
- 230000000638 stimulation Effects 0.000 description 1
- 210000002435 tendon Anatomy 0.000 description 1
- 238000012360 testing method Methods 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
- 230000003936 working memory Effects 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/01—Input arrangements or combined input and output arrangements for interaction between user and computer
- G06F3/016—Input arrangements with force or tactile feedback as computer generated output to the user
Landscapes
- Engineering & Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Human Computer Interaction (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- User Interface Of Digital Computer (AREA)
Abstract
提供了对表示触觉效果的触觉信号进行编码/解码的方法和装置。触觉信号根据分层表示进行编码,分层表示包括多个层(11到14),不同的层级与每个层相关联。触觉信号的编码包括在第一层(11)中对包括一个或多个基本信号的第一组基本信号(111、112)编码。表示第一组的每个基本信号的第一数据在该第一层中被编码,每个基本信号在确定的空间中表示。除了第一数据之外,第二数据在第一层中被编码,第二数据表示每个基本信号的调制。表示确定的空间的第三数据然后在与第一层(11)不同的层中编码,该层具有高于第一层的层级的层级。
Description
技术领域
本发明一般涉及触觉数据压缩,并且特别地,涉及编码/解码表示触觉效果的数据的方法及装置。
背景技术
本部分旨在向读者介绍技术的各个方面,这些方面可能与以下描述和/或要求保护的本发明的至少一个示例性实施例的各个方面有关。相信该论述有助于为读者提供背景信息以促进更好地理解本发明的各个方面。
触觉技术广义上是指通过施加力、振动、运动、和其他感觉向终端用户提供信息来在用户接口中重建触摸的感觉的任何技术。
触觉反馈涵盖了广泛的可能的刺激实施方式,但主要分为感知触觉技术和动觉触觉技术:感知触觉反馈是指诸如振动、摩擦或微变形等感觉,而动觉触觉反馈是指提供力觉的感觉,既可以刺激机械刺激,也可以刺激与身体的位置和运动有关的刺激。
触觉反馈或触觉效果的呈现是使用触觉设备(也称为触觉致动器)获得的。例如,可以通过使用触觉设备(诸如偏轴转动惯量(Eccentric Rotating Mass,ERM)、线性谐振致动器(Linear Resonant Actuators,LRA)和大带宽致动器,诸如音圈马达(Voice CoilMotors,VCM)或压电致动器(Piezoelectric Actuators,PZT)的)来获得振动触觉效果。动觉效果可以通过致动器施加阻止肢体运动的力来呈现,这种效果仅在肌肉和肌腱上感受到,而不是在皮肤上。触觉装置的其他示例包括阻力反馈装置、主动力反馈装置和皮肤压痕装置。
触觉反馈已越来越多地结合到可携式电子设备中,称为“手持设备”或“可携式设备”,例如移动电话、智能型手机和可携式游戏设备。例如,一些可携式游戏应用能够以类似于与被配置为提供触觉反馈的大型游戏系统一起使用的控制设备(例如,操纵杆等)的方式振动。此外,诸如移动电话和智能型手机的设备能够通过振动向用户提供各种警报。此外,触觉效果可用于仿真“真实世界”动态事件,例如视频游戏中弹跳球的感觉。
为了在终端用户侧呈现触觉效果或触觉反馈,必须对表示要呈现的触觉效果的数据和/或信号进行编码,然后将其传输到触觉设备。
在触觉效果的技术领域,表示触觉效果的触觉信号的编码主要遵循两种不同的方法,即:
在脉冲码调制(Pulse Code Modulation,PCM)文件中编码触觉信号;或者
在向量数据的形式下对一组参数进行编码,允许重建触觉信号。
在第一种情况下(在PCM文件中编码触觉信号),可以使用CSV或WAV文件。这种解决方案是内存密集型的,但能够储存复杂的触觉信号。这样的编码具有一旦编码就不容易修改的缺点。此外,幅度调制不能轻易地与频率调制分开,这是使用不同类别的致动器呈现触觉信号时的问题(例如,音圈能够呈现振幅和频率调制信号,而LRA仅限于幅度调制信号)。
在第二种情况下(参数的编码,也称为向量编码),触觉信号被编码为要由呈现引擎呈现的函数的组合。这种解决方案的优点是可以在运行时由应用使用该触觉信号轻松修改。然而,这样的解决方案的缺点在于假定在呈现引擎中实现了确定的呈现模型。
在过去的几年里,已经开发了几种基于向量触觉数据编码的解决方案。
例如,已经开发并提出了一种文件格式,其缩写为AHAP(Apple HapticAudio Pattern)。AHAP文件是符合JSON(JavaScript对象表示法)的触觉和音频模式的字典表示形式,可以在文本编辑器或任何配置为以JSON格式导出内容的程序中编写。AHAP格式仅支持对振动触觉反馈进行编码,而不能对其他触觉效果(例如动觉反馈)进行编码。此外,AHAP也仅限于由/>的Core Haptic库呈现,此类库仅限于在/>兼容装置上运行的呈现引擎。
Immersion Corporation已经开发并提出了另一种文件格式,该格式缩写为IVS(Immersion Vibration Source)。IVS文件具有可扩展标记语言(“XML”)格式。IVS格式仅支持对振动触觉反馈进行编码,而不能对其他触觉效果(例如动觉反馈)进行编码。
用于触觉数据编码的现有格式存在许多限制,并且不能对使用者期望在沉浸感方面增加使用者体验的各种类型的触觉效果进行编码。
发明内容
以下部分呈现了至少一个示例性实施例的简化概述,以便提供对本申请的一些方面的基本理解。该概述不是示例性实施例的广泛概述。其并非旨在识别实施例的关键或重要元件。以下概述仅以简化的形式呈现了示例性实施例中的至少一个的一些方面,作为文档中其他地方提供的更详细描述的前奏。
根据本申请第一方面,提供一种在编码的触觉信号数据的比特流中对表示触觉效果的触觉信号编码的方法。为了实现此目的,对触觉信号的分层表示编码,分层表示包括多个层,且层级与多个层中的每个层相关联,其中编码包括:
在多个层的第一层中,对表示至少一个基本信号的调制的第一数据编码;以及
在具有高于第一层的层级的层级的多个层的一层中,对表示与触觉效果相关联的触觉感知模态的第二数据编码。
在示例性实施例中,方法进一步包括:在第一层中,通过对表示第一组基本信号的每个基本信号的第三数据编码,对包含至少一个基本信号的第一组基本信号编码,每个基本信号在确定的空间中表示,所述确定的空间根据所述触觉感知模态。
在示例性实施例中,第三数据包括:
表示至少一个基本信号(41、42、43)的类型的数据;和/或
表示至少一个基本信号(41、42、43)的相位的数据,
并且第一数据包括表示确定的空间中的多个点的坐标的数据。
在另一示例性实施例中,多个层还包括具有高于第一层的层级的层级的第二层、具有高于第二层的层级的层级的第三层、和具有高于第三层的层级的层级的第四层。
在进一步示例性实施例中,触觉信号的编码进一步包括:
在第二层中,通过对于第二组序列的每个序列,对表示每个所述序列中的一个或多个调制信号的顺序的第一信息编码,对包括一个或多个调制信号的至少一个序列的第二组序列编码,每个调制信号从与所述基本信号相关联的第二数据调制的所述第一组基本信号的基本信号获得;
在第三层中,通过对于每个第一组合,对表示每个第一组合中包含的序列数量的第二信息编码,对包含第二组序列的一个或多个序列的至少一个第一组合的第三组第一组合编码;和
在第四层中,通过对表示第二组合中包含的第一组合数量的第三信息编码,对所述第三组的一个或多个第一组合的第二组合编码。
在额外的示例性实施例中,第二组序列的至少一个序列包括从不同类型的基本信号获得的多个调制信号。
在另一个示例性实施例中,至少一个基本信号对应于恒定信号。
在进一步示例性实施例中,触觉信号的编码还包括在多个层的至少一个层中编码元数据,元数据的至少一部分包括表示与至少一个基本信号相关联的应用程序编程接口调用的数据。
根据本申请的第二方面,提供一种从编码的触觉信号数据解码触觉信号的方法,方法包括解码所述触觉信号的分层表示,分层表示包括多个层,且层级与多个层中的每个层相关联,所述解码包括:
从多个层中的第一层中,解码表示至少一个基本信号的调制的第一数据;和
从具有高于所述第一层的层级的层级的多个层的一层中,解码表示触觉感知模态的第二数据。
在示例性实施例中,解码进一步包括:从第一层,通过对表示第一组基本信号的每个基本信号的第三数据解码,对包含至少一个基本信号的第一组基本信号解码,每个基本信号在确定的空间中表示,确定的空间根据触觉感知模态。
在示例性实施例中,触觉信号的解码还包括:
从第二层中,通过对于第二组序列的每个序列,对表示每个序列中的一个或多个调制信号的顺序的第一信息解码,对包括至少一个或多个调制信号的至少一个序列的第二组序列解码,每个调制信号从与基本信号相关联的第二数据调制的第一组基本信号的基本信号获得;
从第三层中,通过对于每个第一组合,对表示每个第一组合中包含的序列数量的第二信息解码,对包含所述第二组序列的一个或多个序列的至少一个第一组合的第三组第一组合解码;和
从第四层中,通过对表示第二组合中包含的第一组合数量的第三信息解码,对所述第三组的一个或多个第一组合的第二组合解码。
在另一个示例性实施例中,触觉信号的解码还包括从多个层中的至少一层中解码元数据,元数据的至少一部分包括表示与至少一个基本信号相关联的应用程序编程接口调用的数据。
根据本申请第三方面,提供一种在编码的触觉信号数据的比特流中对表示触觉效果的触觉信号编码的装置,其中装置包括与至少一个处理器相关联的存储器,所述至少一个处理器被配置为实施根据本申请的第一方面所述的方法。
根据本申请的第四方面,提供一种从编码的触觉信号数据的比特流中解码表示触觉效果的触觉信号的装置,其中装置包括与至少一个处理器相关联的存储器,所述至少一个处理器被配置为实施根据本申请的第二方面所述的方法。
根据本申请的第五方面,提供一种比特流,比特流具有表示至少一个触觉信号的数据,该触觉信号表示至少一种触觉效果,数据包括:
在每一层具有相关联的层级的多个层的第一层中,表示至少一个基本信号的调制的第一数据;和
在具有高于第一层的层级的层级的多个层的一层中,表示触觉感知模态的第二数据。
在示例性实施例中,比特流还包括表示包括至少一个基本信号的一组基本信号中的每个基本信号的第三数据,每个基本信号在确定的空间中表示。
根据本申请的第六方面,提供了一种包括指令的计算器程序产品,当程序由一个或多个处理器执行时,使一个或多个处理器执行根据本申请的第一方面的方法。
根据本申请的第七方面,提供了一种承载用于执行根据本申请的第一方面的方法的程序代码的指令的非暂时性存储介质。
根据本申请的第八方面,提供了一种包括指令的计算器程序产品,当程序由一个或多个处理器执行时,使一个或多个处理器执行根据本申请的第二方面的方法。
根据本申请的第九方面,提供了一种承载用于执行根据本发明的第二态样的方法的程序代码的指令的非暂时性储存媒体。
根据本申请的第十方面,提供了一种呈现触觉反馈的方法,该方法包括:
接收表示所述触觉反馈的数据比特流;
根据表示触觉感知模态的信息(对应于触觉反馈的类型)选择触觉呈现模型,信息包含在比特流中;
通过用触觉呈现模型处理比特流中包括的数据的至少一部分来生成触觉信号;
将表示触觉信号的数据传输到至少一个致动器以呈现触觉反馈。
在一个示例性实施例中,呈现方法还包括:
接收表示身体的至少一部分的位置的数据,位置以确定的频率获取;
对位置进行上采样,
其中,触觉信号的产生进一步根据上采样位置。
在另一示例性实施例中,上采样是根据至少一个致动器的特性。
在进一步的实施例中,利用触觉呈现模型处理比特流中包括的数据的至少一部分是根据至少一个致动器的特性。
根据本申请的第十一方面,提供了一种呈现触觉反馈的装置,其中装置包括与至少一个处理器相关联的存储器,处理器被配置为实现根据本申请的第十方面的方法。
至少一个示例性实施例的具体性质以及至少一个示例性实施例的其他目的、优点、特征和用途将从以下结合附图对示例的描述中变得显而易见。
附图说明
现在将通过示例的方式参考显示本申请的示例性实施例的附图,其中:
图1示出了根据至少一个示例性实施例的表示一个或多个触觉信号的数据的分层表示示意图;
图2示出了根据至少一个示例性实施例的表示被编码到具有分层文字格式的触觉效果文件中的触觉信号的数据;
图3示出了根据至少一个示例性实施例的表示被编码到具有二进制格式的触觉效果文件中的触觉信号的数据;
图4示出了根据至少一个示例性实施例的根据图1的分层表示编码的基本信号序列;
图5示出了根据至少一个示例性实施例的根据图1的分层表示编码的调制基本信号的示例性序列;
图6示出了根据至少一个示例性实施例的根据图1的分层表示对触觉信号进行编码的方法的步骤的示意方块图;
图7示出了根据至少一个示例性实施例的根据图1的分层表示对编码的触觉数据解码的方法的步骤的示意方块图;
图8示出了实施各个方面和示例性实施例的系统的示例的示意方块图;
图9示出了根据至少一个示例性实施例的呈现系统和呈现一个或多个触觉效果的相应方法的示例的示意方块图;
图10示出了根据示例性实施例的位置上采样方法;和
图11示出了根据至少一个示例性实施例的呈现一个或多个触觉效果的方法的步骤的示意方块图。
相似的附图标记可在不同的图中用于表示相似的部件。
具体实施方式
在下文中将参照附图更全面地描述示例性实施例中的至少一个,其中示出了示例性实施例中的至少一个的示例。然而,示例性实施例可以以许多替代形式来体现,并且不应被解释为限于本文所阐述的示例。因此,应当理解,无意将示例性实施例限制为所公开的特定形式。相反,本公开旨在涵盖落入本发明的精神和范围内的所有修改、等同物和替代物。
这些方面中的至少一个总体上涉及一种对表示触觉效果的一个或多个触觉信号进行编码的方法和装置,。每个触觉信号有利地根据分层表示进行编码,分层表示包括多个层,例如2、3、4、或更多层。确定的层级与每个层相关联,例如,最低层级与第一层相关联并且层级随层而增加。触觉信号的编码包括在第一层中对表示至少一个基本信号的调制的第一数据进行编码。表示触觉感知模态的第二数据(例如对应于触觉反馈类型的触觉感知模态,例如,振动触觉反馈、力反馈、刚度反馈、纹理反馈或温度反馈)在不同于第一层的层中被编码,其层级高于第一层的层级。用作基本信号的表示空间的确定空间取决于触觉感知模态。
至少一个基本信号例如对应于在接收表示触觉信号的编码数据的呈现引擎中储存或硬编码的恒定信号。
根据另一示例,表示至少一个基本信号的第三数据进一步与第一数据一起被编码到第一层中。
简言之,本发明涉及触觉数据的编码/解码以使得能够通过呈现引擎呈现一个或多个触觉效果。
在具有比将表示调制的数据和/或用于表示触觉信号的基本信号编码到其中的层的层级更高的层级的层中对触觉感知模态进行编码,使得能够优化对包括在接收的比特流中并表示触觉信号的数据的解码。
实际上,呈现引擎可以首先确定哪种触觉感知模态与编码到比特流中的触觉信号相关联,以及是否有必要对包含在较低层中的其余数据进行解码。例如,如果与呈现引擎通信的呈现设备(也称为致动器)不能再现编码触觉信号的触觉感知模态,则呈现引擎无需解码包含在比特流中的数据并呈现相关联的触觉信号。
这种编码格式能够根据通信地耦合到呈现引擎的触觉装置(致动器)的特性来优化/减少呈现阶段的处理时间。
图1图示了根据至少一个示例性实施例的用于表示一个或多个触觉信号的分层结构100的示意图。
表示触觉信号的数据可以由编码器根据下文描述的分层结构或表示100被编码成确定的格式。例如,数据可以被编码在触觉效果文件或编解码器中,其可以具有许多不同格式中的一种。在某些实施例中,触觉效果文件可以具有与例如可扩展标记语言(“XML”)格式、JavaScript对象表示法(“JSON”)格式或又一标记语言(“YMAL”)格式相对应的分层文字格式。在某些其他实施例中,触觉效果文件可以具有二进制格式。
图1所示的非限制性实施例的分层表示100包括4个层11、12、13、14,第一层11具有最低层级,第二层12具有高于第一层11的层级的层级,第三层13的层级高于第二层12的层级,第四层14具有最高层级,第四层14的层级高于第三层13的层级。
层数可以不同于4,例如等于2、3、5。例如,当层数等于2时,编码触觉信号的分层表示仅包括第一层11和第二层12。当层数等于2时,第二层12例如可以对应于数据流或比特流的报头,并且第一层例如可以对应于数据流或比特流的有效载荷数据。图3说明了这样一个示例。
分层结构或表示100的层11至14包括触觉信号的编码数据,该编码数据表示要由呈现引擎呈现的触觉反馈或效果。
触觉信号被编码为分层格式,作为包括一个或多个触觉感知或触觉轨迹(以下称为第一组合)的触觉材料或触觉文件(以下称为第二组合),每个触觉感知(或触觉轨迹)包括一个或多个旋律或触觉带(以下称为调制信号序列),每个旋律(或触觉带)包含一个或多个顺序排列的触觉音符或触觉波(以下称为调制信号,调制信号例如从一个或多个基本信号和相关联的调制参数或函数获得或以一个或多个基本信号和相关联的调制参数或函数的形式编码)。
第一层11包括表示一个或多个基本信号的调制的第一数据。
根据示例性实施例,第一数据表示要应用于单个恒定信号的调制,表示该单个恒定信号的第三数据没有被编码到分层表示100中,而是被存储在以编码数据的比特流的形式接收编码的触觉信号的呈现引擎的存储器中。
根据另一示例性实施例,第一数据表示要应用于形成第一组基本信号111、112的一个或多个基本信号的调制,表示每个基本信号的第三数据用表示第一层中调制的第一数据编码。
每个基本信号在确定的空间中表示,该空间可以对应于以下空间中的一个:时间空间、空间空间(例如一维(1D)、二维(2D)或三维(3D)空间空间)、角空间或任何基于可测量维度(如速度、加速度、重力、磁场、亮度、温度等)的空间。
图2说明了基本信号111、112和相关联调制的示例。
表示编码到第一层11中的基本信号的第三数据例如对于每个基本信号包括:
-表示基本信号的类型的数据,例如,正弦、矩形、三角形、斜坡、连续、锯齿;基本信号的类型例如用编码在3或4位上的标识符来识别;和/或
-表示基本信号的相位的数据;和/或
-表示基本信号的特性的数据,例如频率、幅度、偏移量。
与基本信号相关联的第一数据例如对应于表示在确定的空间中表达的多个点的每个点(也称为关键帧)的目标的数据。
例如,当确定的空间对应于时间空间并且要应用于基本信号的调制类型是幅度调制时,一个点的坐标包括对应于时间“t”的横坐标和对应于幅度值的纵坐标。在呈现阶段应用于基本信号的调制基于第一数据,即点(或关键帧)的坐标,以及使用在第一层中编码的点作为关键点的确定插值函数(例如三阶多项式函数),如下文参考图2更详细地解释的。插值函数例如对应于使用以第一数据的形式在第一层11中编码的多个点的坐标作为参数的参数函数。
根据一个变型,与基本信号相关联的第一数据对应于表示调制函数的数据,该数据例如对应于表示基本信号的第三数据,即信号的类型、相位和特征,例如频率和/或幅度。
一组第一数据有利地与编码在第一层11中的每个基本信号111、112相关联。该组第二数据可以例如表示幅度调制和/或频率调制。
根据示例性实施例,元数据可以与每个基本信号111、112相关联并且可以与第一数据一起被编码到第一层11中(并且当被编码到第一层中时与第三数据一起)。例如,元数据包括表示每个基本信号的长度的信息,该长度根据确定的空间(例如,当空间对应于时间空间时,长度对应于持续时间,或当空间对应于空间空间时,长度对应于距离)和表示确定的空间中的起点的信息来表达,该起点用确定的空间中的横坐标来定义。
第一数据和可选的第三数据可以例如被包括或传输到各自具有确定带宽的频带中,例如等于70、100、500、1000Hz的带宽。频带的数量可以例如包括在2和9之间或在1和任何数量的频带之间。每个频带例如包括表示要呈现的触觉效果的数据的一部分,整个触觉效果例如通过组合(例如,求和)所有频带来呈现。
根据对应于基于量化的触觉数据的编码的第一特定实施例,第一层包括:
-第一频带,包括表示用于对储存在呈现引擎中的单个恒定信号进行幅度调制的多个点(或关键帧)的表示的第一数据,表示该单个恒定信号的第三数据未被编码在比特流中;调制的长度(在表示空间中)对应于要呈现的触觉信号的长度,例如65秒;和
-一个或多个第二频带,各自包括表示要应用于一个单个基本信号的调制点(或关键帧)的第一数据,表示单个基本信号的第三数据被编码到第二频带中(基本信号的类型例如总是对应于正弦信号);基本信号的长度(在表示空间中)对应于要呈现的触觉信号的长度,例如65秒。
包含在频带中的数据表示旋律。
根据对应于基于向量的触觉数据的编码的第二特定实施例,第一层包括:
-第一频带,包括表示应用程序编程接口(Application Programming Interface,API)调用的数据;和
-一个或多个第二频带,每个第二频带包括表示要应用于一个或多个基本信号的调制点(或关键帧)的第一数据,表示每个基本信号的第三数据被编码到第二频带中,基本信号例如是任何类型和任何长度。
包含在频带中的数据表示旋律。
第二层12包括表示调制信号的第二组的一个或多个序列121、122的第一信息。每个序列121、122包括在序列内的确定空间中顺序排列的一个或多个调制信号。
调制信号对应于在第一层中编码的基本信号111、112,在其上已经应用了由第一数据定义的调制,除了用于编码基于量化的触觉数据的第一频带的示例。调制信号对应于应用于相关基本信号的调制的结果。
幅度调制是通过将通过对用第一数据编码的点进行插值而获得的调制函数乘以基本信号来获得的。
例如,可以通过使用线性调频来获得频率调制。
第一信息与包含在第二层12中的每个调制信号序列相关联。在第二层12中编码并与每个序列相关联的第一信息有利地表示包含在该序列中并形成序列的一个或多个调制信号的顺序。
第一信息例如使用触觉效果文件或编解码器的语法和/或结构进行编码。形成序列的调制信号的顺序例如通过相对于它们所属的序列并且以对应于每个调制信号的顺序的顺序对与调制信号相关的元件进行编码来获得。在解码阶段,第一信息隐含地从触觉效果文件或编解码器的语法和/或结构中导出。
根据变体,第一信息对应于显式数据或识别和指向每个调制信号的信息,该调制信号分别用表示调制参数和相关联的基本信号的第一和第三数据进行编码。
根据示例性实施例,元数据可以与每个序列121、122相关联并且可以与第一信息一起被编码到第二层12中。例如,元数据包括表示每个序列的长度的信息(根据确定的空间表示)、表示将应用由序列表示的触觉效果的身体部位的信息、表示体积的信息。
第三层13包括表示调制信号的一个或多个序列121、122的一个或多个第一组合131、132的第三组的第二信息。每个第一组合131、132对应于在第二层中编码的一组一个或多个序列,这些序列根据特定函数(求和、加权求和、滤波、平均求和、压缩)组合。
第二信息与包括在第三层13中的序列的每个第一组合相关联。在第三层13中编码并且与每个第一组合相关联的第二信息有利地表示形成每个第一组合131、132的序列的数量。
第二信息例如使用触觉效果文件或编解码器的语法和/或结构进行编码。包括在第一组合中的序列的数量例如通过对与它们所属的第一组合相关的序列相关的元件进行编码来获得。在解码阶段,第二信息隐含地从触觉效果文件或编解码器的语法和/或结构中导出。
根据一个变体,第二信息对应于显式数据或识别和指向每个序列的信息,每个序列用表示第一组合的数据编码。
根据示例性实施例,元数据可以与每个第一组合131、132相关联并且可以与第二信息一起被编码到第三层13中。例如,元数据包括表示与触觉反馈相关联的寻址感知类型的信息(例如,振动、力反馈、温度感知、刚度、纹理)、表示由第一组合表示的触觉反馈或效果所针对的身体部位的信息、表示体积的信息。
第四层14包括表示在第三层13中编码的一个或多个第一组合131、132的第二组合141的第三信息。第二组合141对应于在第三层13中编码的一组第一组合,它们将一起编码以形成第二组合141。
第二组合对应于表示在触觉效果文件或编解码器中编码的触觉效果或反馈的触觉文件。
第三信息有利地表示形成第二组合141的第一组合的数量。
第三信息例如使用触觉效果文件或编解码器的语法和/或结构进行编码。包括在第二组合中的第一组合的数量例如通过相对于它们所属的第二组合对与第一组合相关的元件进行编码来获得。在解码阶段,第三信息隐含地从触觉效果文件或编解码器的语法和/或结构中导出。
根据一个变体,第三信息对应于显式数据或识别和指向每个第一组合的信息,该第一组合用表示第二组合的数据进行编码。
根据示例性实施例,元数据可以与第二组合141相关联并且可以与第三信息一起被编码到第四层14中。例如,元数据包括表示将应用由第二组合表示的触觉效果的身体部位的信息、表示呈现方法的信息。
与要呈现的触觉效果相关联的触觉感知模态相关的第二数据被有利地编码到第二层12、第三层13或第四层14中,例如作为元数据。
触觉感知模态对应于要呈现的触觉效果或触觉反馈的类型。触觉感知模态例如对应于以下中的一个:
-振动效果;
-力效应;
-刚度;
-纹理;
-温度。
用于对要呈现的触觉信号进行编码的一个或多个基本信号的表示空间取决于触觉感知模态。例如,振动和力与时间空间相关联,而刚度和纹理与空间空间相关联。
根据示例性实施例,编码到第一层11、第二层12、第三层13或第四层14中的元数据包括表示一个或多个应用程序编程接口(Application Programming Interface)调用的数据、一个单个API调用与一个单个基本信号相关联。与基本信号相关联的API调用可以采用以下形式进行编码:
-标识储存在呈现引擎的存储器中的API调用的标识符;或者
一组要由呈现引擎执行的指令。
API而非基本信号的使用由呈现引擎基于能够处理API调用的通信信道(呈现引擎和触觉设置(致动器)之间)的存在来确定。
图2示出了根据至少一个示例性实施例的表示被编码到具有分层文本格式的触觉效果文件2中的触觉信号的数据。
根据示例性实施例,触觉信号根据分层结构或表示100以JSON兼容文件或编解码器2的形式编码。图2图示了这种JSON文件2的示例,仅用于说明目的。
JSON文件的元素(也称为“键”或“标签”)“m_version”、“m_description”、“m_HDFlag”、“m_time_unit”、“m_length_unit”、“m_volume”、“m_stiffness”和“m_texture”的块21包括表示编码到第四层14中的触觉信号的第二组合的元数据和相关联的值。
第二组合仅包括用元素“m_vibration”引入的元素的块22标识的第一组合。第一组合在JSON文件中以低于第二组合的层级的层级编码,用符号“{”和“}”标识并包含在符号“{”和“}”之间。JSON文件的元素“m_loop”、“m_maximum”、“m_speed”、“m_volume”和“m_signalEvaluationMethod”对应于编码到第三层13中的第一组合的元数据和相关值。
用元素“m_vibration”标识的第一组合仅包括一个调制信号序列,它用元素“m_melodies”标识。该序列在JSON文件中以低于第一组合的层级的层级进行编码。在元素“m_melodies”之后的JSON文件的元素“m_maximum”、“m_mute”和“m_volume”的块23对应于编码到第二层12中的调制信号序列的元数据和相关值。
最后,用元素“m_melodies”标识的序列包括两个调制信号24、25,它们在JSON文件中以低于序列“m_melodies”的层级的层级顺序地编码。
形成序列“m_melodies”的调制信号24、25用JSON文件中元素“m_notes”之后的元素定义或编码,并包含在符号“[”和“]”之间。
表示序列的第一调制信号24的数据首先在JSON文件中的“m_note”元素块中被编码或用信号发送,然后是表示第二调制信号25的数据(依次在第一调制信号之后)。根据该非限制性示例,表示序列的每个调制信号的顺序的第二信息是从JSON文件本身的分层结构获得的,定义调制信号的元素附加到序列或与序列相关联,第二调制信号25在第一调制信号24之后。
每个调制信号24、25包括在第一层11中用第一和第三数据编码的元数据。第一元数据用与调制信号的长度(或类似于用于获得调制信号的基本信号的长度)对应的元素“m_length”标识或用信号发送,第二元数据用对应于确定空间中调制信号的原点的元素“m_startingPoint”标识(调制信号的原点或起点例如对应于时间轴上的时间或空间线上的位置,这取决于表示基本信号的空间)。
每个调制信号24、25在JSON文件中被编码或用信号表示,其中表示基本信号的第三数据241、251在JSON文件中用元素“m_underlyingSignal”标识,表示调制参数的第一数据242、252在JSON文件中用元素“m_amplitudeModulation”标识。
关于第一调制信号24,基本信号在JSON文件中由包括基本信号的类型(用元素“m_signalType”标识,其具有值0,例如对应于正弦信号)、基本信号的相位(用元素“m_phase”标识)、基本信号的幅度(用元素“m_amplitude”标识)、基本信号的频率(用元素“m_frequency”标识)和基本信号的垂直偏移量(用元素“m_verticalOffset”标识)的第三数据241表征或发信号通知。
表示要应用到基本信号的调制的第一数据242用元素“m_amplitudeModulation”标识或发信号通知,该元素指示要应用到基本信号的调制是幅度调制。用元素“m_max”标识或发信号通知的元数据与调制相关联。
然后在JSON文件中在元素“m_amplitudeModulation”下对两个点或关键帧进行编码或发通知通知,每个点都用一组第一数据来表征或发信号通知,第一数据包括点的坐标(用与横坐标对应的元素“m_time”和与纵坐标对应的元素“m_value”标识)和其他参数,这些参数例如取决于要使用的插值函数的类型。
将在解码和/或呈现阶段使用的插值函数对应于例如默认插值函数(例如,三阶多项式函数),编码器、解码器和呈现引擎事先已知,无需识别JSON文件中的默认函数。
根据一个变体,插值函数是在JSON文件中标识的特定插值函数(带有标识符或参数),例如作为与更高级别的调制相关联的元数据。
关于第二调制信号25(在JSON文件中在第一调制信号24之后编码),基本信号在JSON文件中由与第一调制信号的第三数据相似或相同的第三数据251表征或发信号通知。
表示要应用到基本信号的调制的第一数据252用元素“m_amplitudeModulation”标识或发信号通知,该元素指示要应用到基本信号的调制是幅度调制。
在该特定示例中,第二调制信号25的第一数据252表示用与基本信号相同的元素识别或发信号通知的函数。
图3示出了根据至少一个示例性实施例的表示被编码到具有二进制格式的触觉效果文件3中的触觉信号的数据。
根据第二示例性实施例,触觉信号根据分层结构或表示100以二进制元素或字符的一个或多个字符串31、32的形式编码。
每个二进制元素字符串31、32分别包括例如报头310、320和有效载荷数据311、321。报头有利地具有高于有效载荷数据的层级,报头包括表示与编码到字符串31、32中的触觉信号相关联的触觉感知模态的第二数据。
根据非限制性示例,字符串包括表示一个第一组合的数据,即,字符串31包括表示第一组合的数据并且字符串32包括表示另一个第一组合的数据,两个字符串31、32(即,两个第一组合)形成对应于触觉信号的触觉材料的第二组合。
每个字符串31、32的报头310、320分别包括字段,每个字段包括与对应于第三信息和与第二组合相关联的元数据、第二信息和与序列的第一组合相关联的元数据、以及与形成第一组合的调制信号序列相关联的元数据和第一信息的变量或参数相关联的值。
每个字符串31、32的有效载荷311、321分别包括字段,每个字段包括与变量或参数相关联的值,该变量或参数对应于形成由每个字符串31、32的数据描述的第一组合的调制信号。
描述每个调制信号的数据(即,第一和第二数据)依次编码到字串31、32的有效载荷311、321中。
调制信号序列的结束例如在有效载荷311、321中用特殊字符发信号通知,随后的序列在所述特殊字符之后开始。例如,特殊字符记为E_O_B,并使用十六进制值“00FFFF”进行编码。
根据另一示例,等于0的幅度在位于序列末尾时可以被解释为特殊字符。
根据特定实施例,一系列调制信号的结束在有效载荷311、321中用标记为E_O_S的特殊字符发信号通知,并用值“00”编码。一系列调制信号对应于共享一些相同参数(例如,用于获得相关联调制信号的基本信号的相同相位或相同幅度)的多个调制信号,相同参数对于系列被编码一次。
这种格式能够对基于向量的触觉数据和基于量化的触觉数据进行编码。当数据是向量时,此信息例如在报头中编码,布尔编码为1位(例如,“0”表示假,“1”表示帧)。它使得能够利用分层表示100对矢量结构(如IVS和AHAP格式)进行编码。
这种格式还使得能够对特定信号(如瞬态或API调用)进行编码,其数据在有效载荷中串行编码并在报头中发信号通知。
根据一个实施例,触觉信号根据分层结构或表示100以二进制元素或字符的单个串的形式编码。根据该实施例,第一组合的结束在流中用确定的特殊字符发信号通知,该特殊字符之后的字段或字符对应于一个或多个调制信号序列的另一个第一组合的第一个字符或字段。
与现有技术的现有编码格式相比,所提出的分层编码具有各种优点,例如:
-能够在相同的触觉感知中以相同的编码对连续和振动触觉信号进行编码,对应于一个或多个调制信号序列的第一组合;和/或
-能够使用相同的编码对基于空间和基于时间的触觉信号进行编码;和/或
-能够以基于空间和时间的方法对动觉进行编码;
-能够在运行时独立调制不同基本信号、调制信号序列以及一个或多个序列的第一组合的调制函数;和/或
-能够从建议的分层编码格式开始转码AHAP格式和/或IVS;和/或
-能够从建议的分层编码格式开始转码IVS格式。
不同文件格式之间的转换
提议的分层格式以及Apple的AHAP格式和Immersion公司的IVS格式对触觉信号进行向量编码,这意味着储存“绘图命令”以生成信号来代替信号本身。通过这个假设,可以推断这三种文件格式的1对1匹配以创建翻译器,其目标是将AHAP文件或IVS文件转换为根据本公开的分层格式的文件。
例如,关于AHAP数据格式,已知连续部分有:
-0和1之间的锐度是65Hz和300Hz之间的频率范围(实验结果);
-强度介于0和1之间,反馈幅度结果达到设备可能的最大值;和
-开始时间和持续时间(以秒为单位)。
这些连续的和以分层格式提出的调制信号之间存在直接匹配,它们都储存相同的信息。
瞬态以强度和清晰度(可能对应于信号的频率)在特定时间储存。如果信号长度足够短,则瞬态可以与包含一个或多个高频和高振幅周期的新调制信号相匹配,以表示该冲击。也可以使用关键帧(表示瞬态的峰值)或仅表示要应用于连续基本信号的调制的点对其进行编码。瞬态也可以储存为API调用。调制函数也将是建议的分层格式和AHAP格式之间的直接匹配。储存在文件中的音频信息不能在当前的分层格式中进行翻译,但可以由应用程序本身管理,该应用程序将在两个不同的播放器中播放这两个文件:一个用于音频,另一个用于触觉。
以同样的想法,IVS文件具有与建议的分层格式的1对1匹配。两者都对每个调制信号的起始时间、持续时间、频率(IVS以毫秒储存窗口长度,可以直接转换为频率:f=1/T)、幅度和调制幅度进行编码。这里的主要区别是可以在IVS文件的时间轴内创建循环。但它可以翻译成这个循环内的内容的简单复制N次,对应于这个循环的计数。IVS还将波形类型储存在与当前提出的分层格式直接匹配的格式中。
MagSweep效应可以解释为正常的调制信号,但将由开发人员提供的恒定频率驱动。在实验测试阶段,人们发现这种效果是用170Hz的频率合成的。
最后,最后一种类型是波形,它可以像建议的分层格式内的关键帧一样被编码,或者可以对文件执行声音分析以将其编码为文件内的频率库。多媒体集成可以和AHAP一样。
图4示出了根据至少一个示例性实施例的从基本信号获得并根据本公开的分层表示进行编码的调制信号序列。
图4图示了从根据确定的调制调制的基本信号41、42、43获得的调制信号序列48。
根据图4的非限制性示例,每个基本信号41、42、43对应于具有每个特定频率的正弦波(例如,第一基本信号41为87Hz,第二基本信号42为76Hz,第三基本信号43为73Hz),其幅度随时间变化。幅度例如包括在等于1的最大值和等于-1的最小值之间。基本信号的表示空间对应于时间,基本信号41、42、43的表示空间的横坐标对应于时间线。
基本信号41在时间0开始,基本信号42在时间0.025秒开始,基本信号43在时间0.05秒开始。
根据图4的示例性实施例,基本信号41至45具有相同的持续时间,在信号的结束和后续信号的开始之间没有间隙。
每个基本信号41、42、43的调制参数分别用特定函数44、45、46来表示。与第一信号41相关联的调制函数44、与第二基本信号42相关联的调制函数45和与第三基本信号43相关联的调制函数46被表示在与基本信号41至43的时间线相同的时间线。
每个调制函数44、45、46用点或关键帧表示,用第二调制函数45的黑粗体注释说明。每个调制函数44、45、46对应于例如参数函数,参数函数的参数被编码在与关键帧的点对应的触觉效果文件中。
根据图4的示例性实施例,4个点用于对调制函数的参数进行编码。自然地,点的数量可以不同于4,点的数量取例如包括在1个点和20、50或100点个之间的任何值,这取决于例如基本信号的长度。点的数量甚至可以等于0,这将被解释为没有调制功能。
信号47表示基本信号41到43的序列,由于与每个基本信号41到43相关联的相位信息,这些基本信号41到43已经被相位调整并且被编码到触觉效果文件的第一层中。
最后,信号48表示从顺序排列的基本信号41至43获得的序列,这些基本信号41至43已经根据用它们的对应点或关键帧表示的参数调制函数44、45、46进行幅度调制。
基本信号的数量不限于3个,而是扩展到任何数量,例如1、2、5、10个或更多基本信号。
基本信号的类型不限于正弦函数,而是扩展到任何类型的基本信号,例如恒定信号(在时间或空间上具有固定幅度,取决于信号的表示空间)、三角信号、矩形信号等。多个基本信号的序列可以包括不同类型的基本信号,例如连续信号后接正弦信号后接三角形,在连续基本信号之间可选地具有间隙。
图5示出了根据至少一个示例性实施例的根据本公开的分层表示编码的经调制基本信号的示例性序列。
图5说明了通过调制一个或多个基本信号获得的一个或多个调制信号的3个不同序列。
第一信号51对应于通过将幅度调制应用于单个连续且恒定的信号(例如,随着时间具有固定幅度)而获得的序列,幅度调制利用参数调制函数进行编码,参数调制函数是通过对用作参数函数的参数的多个点或关键帧进行插值而获得的。在作为第二数据的触觉效果文件中编码的点或关键帧的数量例如等于15。
用黑色粗体点示出的第一信号51的起始点有利地用表示连续基本信号的第一数据进行编码。
第二信号52对应于通过对4个基本信号的序列中的每个基本信号应用幅度调制而获得的序列,而没有在不同基本信号之间进行相位调整。根据该示例,第一基本信号对应于具有确定幅度和频率的正弦函数,第二基本信号对应于具有确定幅度和频率的矩形信号,第三基本信号对应于具有确定幅度和频率的三角信号,以及第四基本信号对应于具有确定幅度和频率的锯齿信号。每个基本信号的起始点(以及因此从每个基本信号获得的每个调制信号的起始点)用黑色粗体点表示,并且有利地用表示每个基本信号的第一数据编码。
最后,将第三信号53转换为从8个基本信号的序列获得的序列,每个基本信号对应于被编码为与被编码到第一层中的基本信号相关联的API调用的瞬态。从图5可以看出,8个信号的序列是不连续的,序列53的两个连续的信号之间出现了间隙。间隙是直接从编码在分层表示的第一层中的8个信号的每一个的起点得到的。API调用例如由在22ms期间仅具有一个周期的正弦函数来表示和合成。
本发明中公开的分层编码使得能够将空间、时间或任何表示空间中的任何反馈效果编码为一个或多个基本信号和相关调制参数的序列。
图6示出了根据至少一个示例性实施例的根据分层表示100对触觉信号进行编码的方法的步骤的示意方块图。
在第一步骤61中,表示至少一个基本信号的调制的第一数据被编码在多个层中的第一层中,每个层具有相关联的层级。
在第二步骤62中,表示与和触觉信号相关联的触觉效果相关联的触觉感知模态的第二数据被编码在多个层中的层中,该层的层级高于第一层的层级。
根据特定实施例,至少一个基本信号被包括在第一组基本信号中。除了第一数据之外,表示第一组的每个基本信号的第三数据在第一层中被编码。每个基本信号在确定的表示空间中表示,该表示空间是触觉感知模态的函数。
图7示出了根据至少一个示例性实施例的解码根据分层表示100编码的触觉数据的方法的步骤的示意方块图。
在第一步骤71中,表示至少一个基本信号的调制的第一数据从多个层中的第一层解码,每个层具有相关联的层级。
在第二步骤72中,表示与触觉信号相关联的触觉效果相关联的触觉感知模态的第二数据从具有高于第一层的层级的层级的多个层中的层解码。
根据特定实施例,至少一个基本信号被包括在第一组基本信号中。除了第一数据之外,还从第一层解码表示第一组的每个基本信号的第三数据。每个基本信号在确定的表示空间中表示,该表示空间是触觉感知模态的函数。
图8示出了示出了其中实现了各个方面和示例性实施例的系统的示例的示意框图。
系统8可以嵌入为一个或多个设备,包括以下描述的各种组件。在各种实施例中,系统8可以被配置为实现本申请中描述的一个或多个方面。
可以形成系统8的全部或部分的设备的示例包括个人计算机、笔记型计算机、智能手机、平板计算机、数字多媒体数字视频转换盒、数字电视接收器、个人视频记录系统、连接的家用电器、连接的车辆及其相关的处理系统、头戴式显示设备(HMD、透视眼镜)、触觉传感器或致动器、“caves”(包括多个显示器的系统)、服务器、触觉编码器、触觉解码器、处理来自触觉解码器的输出的后处理器、向触觉编码器提供输入的预处理器、网络服务器、数字视频转换盒、无线(例如,)连接的可穿戴触觉装置以及用于处理触觉数据或触觉信号的任何其他设备或其他通信设备。系统8的组件可以单独或组合地体现在单个集成电路(integrated circuit,IC)、多个IC和/或分立组件中。例如,在至少一个实施例中,系统8的处理和编码器/解码器组件可以分布在多个IC和/或分立组件上。在各种实施例中,系统8可以通过例如通信总线或通过专用输入和/或输出端口通信地耦合到其他类似系统或其他电子设备。
系统8可以包括至少一个处理器81,该处理器81被配置为执行加载在其中的指令以实现例如本申请中描述的各个方面。处理器81可以包括嵌入式储存器、输入输出接口和本领域已知的各种其他电路。系统8可以包括至少一个存储器82(例如易失性存储设备和/或非易失性存储设备)。系统8可以包括储存装置84,其可以包括非易失性存储器和/或易失性存储器,包括但不限于电可擦可编程只读存储器(EEPROM)、只读存储器(ROM)、可编程只读存储器(PROM)、随机存取内存(RAM)、动态随机存取内存(DRAM)、静态随机存取内存(SRAM)、快闪内存、磁盘驱动器和/或光盘驱动器。作为非限制性示例,储存装置84可以包括内部储存装置、附加储存装置和/或网络可访问储存装置。
系统8可以包括编码器/解码器模块83,其被配置为例如处理数据以提供编码/解码的触觉信号或数据,并且编码器/解码器模块83可以包括其自己的处理器和存储器。编码器/解码器模块83可以表示可以被包括在设备中以执行编码和/或解码功能的模块。如已知的,设备可以包括编码和解码模块之一或两者。此外,编码器/解码器模块83可以实现为系统83的单独组件,或者可以作为本领域技术人员已知的硬件和软件的组合并入处理器81中。
要加载到处理器81或编码器/解码器83上以执行本发明中描述的各个方面的程序代码可以储存在储存装置84中并且随后加载到存储器82上以供处理器81执行。根据各个实施例,在本发明中描述的过程的执行期间,处理器81、存储器82、储存装置84和编码器/解码器模块83中的一个或多个可以储存各种项目中的一个或多个。这样的储存项目可以包括但不限于点云帧、编码/解码几何/属性视频/图像或编码/解码几何/属性视频/图像的部分、比特流、矩阵、变量和方程、公式、运算和运算逻辑的处理的中间或最终结果。
在若干实施例中,处理器81和/或编码器/解码器模块83内部的存储器可用于储存指令并为可在编码或解码期间执行的处理提供工作储存器。
然而,在其他实施例中,处理设备外部的存储器(例如,处理设备可以是处理器81或编码器/解码器模块83)可以用于这些功能中的一个或多个。外部存储器可以是存储器82和/或储存装置84,例如动态易失性存储器和/或非易失性存储器。在若干实施例中,可以使用外部非易失性存储器来储存电视的操作系统。在至少一个实施例中,诸如RAM的快速外部动态易失性存储器可以用作用于视频编码和解码操作的工作存储器,例如用于MPEG-V。
如方块85所示,可以通过各种输入设备来提供对系统8的组件的输入。这样的输入设备包括但不限于(i)RF部分,其可以接收例如由广播公司通过空中发送的RF信号,(ii)复合输入终端,(iii)USB输入终端,和/或(iv)HDMI输入终端。
在各种实施例中,方块85的输入设备可以具有相关联的各个输入处理组件,如本领域已知的。例如,RF部分可以与以下必需的组件相关联:(i)选择所需频率(也称为选择信号,或将信号频带限制到频带),(ii)将所选信号下变频,(iii)再次将频带限制到较窄的频带以选择(例如)在某些实施例中可以被称为信道的信号频带,(iv)解调下变频和频带限制的信号,(v)执行纠错,以及(vi)解复用以选择所需的数据包流。各种实施例的RF部分可以包括执行这些功能的一个或多个组件,例如频率选择器、信号选择器、频带限制器、通道选择器、滤波器、下变频器、解调器、纠错器和解复用器。RF部分可以包括执行各种这些功能的调谐器,包括例如将接收到的信号下变频到较低频率(例如,中频或近基频带频率)或基频带。
在一个数字视频转换盒实施例中,RF部分及其相关联的输入处理组件可以接收通过有线(例如,电线)介质传输的RF信号。然后,RF部分可以通过滤波、下变频和再次滤波到期望的频带来执行频率选择。
各种实施例重新排列上述(和其他)组件的顺序,移除这些组件中的一些,和/或添加执行相似或不同功能的其他组件。
添加组件可以包括在现有组件之间插入组件,例如插入放大器和模数转换器。在各种实施例中,RF部分可以包括天线。
此外,USB和/或HDMI终端可以包括用于通过USB和/或HDMI连接将系统8连接到其他电子设备的相应接口处理器。应当理解,输入处理的各个方面,例如Reed-Solomon纠错,可以在例如单独的输入处理IC内或根据需要在处理器81内实现。类似地,USB或HDMI接口处理的各个方面可以根据需要在单独的接口IC或处理器81内实现。解调的、纠错的和解复用的流可以被提供给各种处理元件,包括例如处理器81和编码器/解码器83,它们与存储器和存储元件组合操作以根据需要处理数据流以在输出设备上呈现。
系统8的各种组件可以设置在集成外壳内。在集成外壳内,各种组件可以互连并且使用合适的连接布置85在它们之间传输数据,例如,本领域已知的内部总线,包括I2C总线、布线和印刷电路板。
系统8可以包括能够通过通信信道860与其他设备进行通信的通信接口86。通信接口86可以包括但不限于被配置为通过通信信道860发送和接收数据的收发器。通信接口86可以包括但不限于调制解调器或网卡,并且通信信道860可以例如在有线和/或无线介质内实现。
在各种实施例中,可以使用诸如IEEE 802.11的Wi-Fi网络将数据流式传输到系统8。这些实施例的Wi-Fi信号可以通过适用于Wi-Fi通信的通信通道860和通信接口86来接收。这些实施例的通信信道860通常可以连接到接入点或路由器,该接入点或路由器提供对包括互联网在内的外部网络的访问,以允许流式传输应用程序和其他云上通信。
其他实施例可以使用通过输入方块85的HDMI连接传送数据的数位视频转换盒向系统8提供流数据。
其他实施例可以使用输入方块85的RF连接向系统8提供流数据。
流数据可以用作系统8使用的信令信息的一种方式。信令信息可以包括例如从触觉效果文件2或3获得的以二进制流编码的数据。
应当理解,信令可以以多种方式完成。例如,在各种实施例中,一个或多个语法元素、标志等可用于向对应的解码器发信号通知信息。
系统8可以向各种输出设备提供输出信号,包括显示器870、扬声器880和其他外围设备890,如触觉装置/致动器。
在各种实施例中,可以使用信令在系统8与显示器870、扬声器880或其他外围设备890之间传送控制信号,信令诸如AV.Link(音频/视频链接)、消费电子控制(CEC)、音频协议、USB(通用串行总线)、HIF UHP(触觉行业论坛-通用触觉协议)或其他通信协议,这些通信协议可以在有或没有用户干预的情况下实现设备到设备控制。
输出设备可以通过各自的接口87、88和89经由专用连接以通信方式耦合到系统8。
可替换地,输出设备可以通过通信接口86使用通信信道860连接到系统8。显示器870、扬声器880和/或致动器890可以与诸如电视机之类的电子设备中的系统8的其他组件集成在单个单元中。
在各种实施例中,显示接口87可以包括显示驱动器,例如时序控制器(T Con)芯片。
显示器870、扬声器880和/或致动器890可替代地与一个或多个其他组件分开,例如,如果输入85的RF部分是单独数字视频转换盒的一部分。在显示器870、扬声器880和/或致动器890可以是外部组件的各种实施例中,可以经由专用输出连接来提供输出信号,包括例如HDMI端口、USB端口或COMP输出。
图9示出了根据至少一个示例性实施例的呈现一个或多个触觉效果的呈现系统和方法的示例的示意方块图。
触觉效果可以作为空间或时间和任何独立系统变量的函数来呈现。统一的呈现解决方案应该呈现最佳的触觉,而不管输入的量和值以及输出设备的通信能力如。这样的呈现过程需要独立变量输入的统一化,以及将输出值赋予连接的设备的能力。
在空间中呈现触觉的现有技术方法之一是基于预期触觉值的映射。这些值图与输入采集位置的比较和触觉的呈现都是基于这种方法。这种方法的缺点是必须有一个极其精确和快速的位置获取系统来匹配人类的感知带宽。这是一个例子:
V=10cm/s:与触觉显示器接触的身体部位的速度;
F=1000Hz:最大人类感知带宽;
感知触觉组件的最小距离:0.1m.s-1/1000s-1=0.0001m=100微米。
采集系统应该能够以小于100微米的精度和至少1kHz的频率采集手指的位置,以便能够呈现空间触觉纹理。嵌入在消费设备中的商业位置采集系统获取30和120Hz之间的人体位置。结果是这种呈现方法由于信号采集噪声和低采集频率而不能令人满意地呈现触觉信号。
图9的每个方块都将被解释为系统的组件或单元并且被解释为由该组件或单元实现的相应操作。呈现系统和相关实施的方法9旨在克服现有技术系统的至少一个缺点。
系统9可以嵌入为一个或多个装置,包括参考图8描述的系统8的各种组件。系统9例如对应于触觉呈现引擎。系统9被配置为从表示要呈现的触觉效果的编码数据中呈现一个或多个触觉效果,编码数据以数据流或比特流的形式被接收。接收的数据流或比特流有利地对应于从上文参考图1至图5描述的编码过程和方法获得的数据流。
在第一方块91中,从采集设备或系统接收表示用户身体的至少一部分的位置的数据911。数据911由采集设备以确定的频率采集,例如以包括在30和120Hz之间的频率。
第一方块91被配置为对由数据911表示的位置进行上采样或内插。第一方块91输出表示身体的至少一部分的上采样位置的数据912。
上采样的水平取决于例如由系统9控制的一个或多个触觉呈现装置(致动器)的特性。根据另一示例,上采样的水平是固定的并且作为参数储存在系统9的存储器中。
通过实施本领域技术人员已知的任何方法来获得上采样。例如,这种方法在2018年11月8日公布的专利文件WO2018/202609中有所描述。
图10图示了上采样算法的示例性实施例。
Xn对应于在每个应用周期从采集设备获得的位置采集向量。
从分别在时间tn和tn-1获取的获取的位置向量Xn和Xn-1计算速度向量Vn。
根据在每帧计算的位置误差ε,在对i=0到k的一系列时间ti计算补偿速度积分后,计算稳定位置向量X'n,其中k为整数,并将其前馈到用于计算对应于控制参数的X'n、k和h的方程的补偿速度积分项,以最小化ε。
在第二方块92中,由第一方块91输出的数据912与表示处理器时钟和呈现频率的数据921一起被接收。
第二方块92还接收表示要呈现的触觉信号的数据922。数据922例如以编码为根据图1至图5的示例性实施例描述的一个或多个触觉效果文件的数据的形式接收。
第二方块92被配置为从接收到的数据流或比特流中提取数据,根据要呈现的触觉效果的类型(从接收到的数据流或比特流中获得的这种信息),并且可选地根据由系统9控制并连接到系统9的触觉呈现装置(致动器)的特性,处理提取的数据。
具有最高层级的层首先被解码。
例如,根据表示要呈现的触觉效果或反馈的类型(例如,刚度、纹理、振动、温度)的信息,在多个触觉呈现模型中选择触觉呈现模型,这样的信息例如对应于包括在数据流或比特流中的数据或元数据,例如与编码到第三层中的第一组合相关联。
触觉呈现装置的一个或多个特性例如从与系统9通信连接的触觉呈现装置接收。根据另一示例,接收触觉呈现设备的标识符,所述特征例如从存储在系统9的存储器中的LUT(查找表)中检索,LUT将每个触觉设备的特征与每个触觉设备的标识符相关联。
触觉呈现模型例如根据旨在呈现触觉效果的触觉呈现装置的特性来处理包括在数据流中的数据或仅部分数据的比特流。
例如,宽带触觉呈现装置被配置为呈现复杂的触觉反馈或效果。在这种情况下,在比特流的数据流中编码的整个触觉信号由触觉呈现模型呈现。
根据另一示例,一些触觉呈现装置仅能够呈现简单的触觉效果(例如仅与频率相关的振动)。在这种情况下,触觉呈现模型仅呈现比特流或数据流中编码的触觉信号的频率部分。
表示与编码到比特流中的触觉信号/触觉效果相关联的触觉感知模态的第二数据在第一和第三数据之前被解析和解码。
如果耦合到呈现引擎的致动器不能/未被配置为呈现由用第二数据编码的触觉感知模态指示的触觉效果,则呈现引擎不解码所有比特流,因为致动器未配置成呈现这样的触觉效果。
如果耦合到呈现引擎的致动器能够/被配置成呈现由用第二数据编码的触觉感知模态指示的触觉效果,则呈现引擎将编码到比特流中的第一和第三数据的至少一部分解码,被解码的第一和第三数据的部分取决于致动器的呈现能力。
方块92将表示要呈现的触觉信号的数据923输出到方块93。
方块93被配置为处理数据923,例如根据连接到系统9、更具体地连接到方块93的触觉呈现装置的特性。处理可以包括下采样、触觉混合、...中的至少一种。
系统9和相关联的过程能够结合根据本公开的分层格式的数据流或比特流来呈现任何种类的触觉效果,包括在数据流或比特流中的数据的使用被调整为触觉呈现装置的特性和相关联的能力。
图11示出了根据至少一个示例性实施例的呈现一个或多个触觉效果的方法的步骤的示意方块图。
图11的方法例如在系统9中实现。
在操作1101中,例如从存储器或经由有线或无线连接从远程装置接收触觉数据流。
在操作1102中,通过分析接收到的数据和/或通过检查文件扩展名和元数据来确定触觉数据流是否是根据本公开的分层结构的格式。如果是,则该方法进一步处理操作1104。如果否,该方法进一步处理操作1103。
在操作1103中,即当触觉数据流的格式与本公开的分层结构不同时,将接收到的数据流(例如根据AHAP或IVS格式)转换成本公开的分层格式。
在操作1104中,触觉数据根据本公开的分层格式并且数据被解析或分析。
在操作1105中,确定触觉数据是否是基于时间的,即确定基本信号的表示空间。这种信息例如从包含在分层结构的层中的第二数据获得,该层具有比传输表示基本信号和相关调制的数据的第一层更高的层级。
如果触觉数据是基于时间的,则该方法进一步处理操作1117。
如果触觉数据不是基于时间的,则该方法进一步处理操作1106。
在操作1106中,确定哪种类型的触觉反馈与接收到的数据流的触觉数据相关联,例如,触觉反馈的类型是对应于纹理还是对应于刚度。这种信息是从第二数据和/或从与第三层相关联(即,与一个或多个调制信号序列的第一组合相关联)的元数据获得的。
如果触觉反馈的类型对应于纹理,则该方法进一步处理操作1108。
如果触觉反馈的类型对应于刚度,则该方法进一步处理操作1107。
在操作1107中,从数据流中提取调制点或关键帧(对应于调制参数),这样的信息被编码为与能够重建触觉效果的每个基本信号相关联的第一数据。
在操作1115中,根据在操作1107中提取的点(关键帧)来确定或计算调制函数。插值函数例如对应于多项式函数,例如三阶多项式函数。插值函数可以是任何其他函数,并且可以在数据流中发信号通知以通知呈现引擎要使用哪个函数。通过插值函数获得位于两个关键帧之间的点,并将关键帧作为该函数一段的起点和终点。
通过用插值函数对编码为第一数据的点(关键帧)进行插值而获得的函数对应于用于调制用第一层中的第三数据编码的相关基本信号的调制函数。
位于两个关键帧之间的点进一步根据表示体验触觉效果的用户身体的一部分的位置的数据来确定,这样的数据是从在操作1110中对在操作1109中从采集设备接收的表示身体的这一部分的位置的数据进行上采样而获得的。被编码到数据流中的触觉效果所针对的身体部分是从数据流中获得的,这种信息被编码为数据流或比特流的一个或多个层中的元数据。
在操作1116中,通过用在操作1115获得的调制函数调制基本信号来计算刚度触觉效果。根据编码到数据流中的数据并且相对于编码到第三层和第四层中的第一和第二组合来计算和组合调制信号的序列。计算的结果是表示将由与被触觉效果作为目标的用户的一个或多个身体部位相关联的一个或者多个致动器呈现的刚度触觉效果的触觉信号。
在操作1124,信号被传输到致动器用于呈现。
在操作1108中,从比特流或数据流,更具体地,从编码到比特流或数据流中的数据的分层表示的第一层,提取表示基本信号和相关调制的第一和第三数据。
在操作1111中,根据在操作1118获得的表示每个触觉呈现装置的特性的数据来确定由呈现引擎馈送的触觉呈现装置(即,致动器)是否是宽带设备。这种数据例如从触觉装置或从储存在存储器中的查找表(LUT)获得,LUT将每个触觉装置的特性与每个触觉装置的标识符相关联。
在操作1118中,确定触觉装置是宽带还是仅调幅的、通信频率、信号通信的范围和/或频率的表达范围(例如,一些致动器被配置为仅从65到300Hz工作)。
如果触觉装置是宽带设备,则该方法进一步处理操作1112。
如果触觉装置不是宽带设备,则该方法进一步处理操作1113。
在操作1112中,触觉装置能够接收宽带信号,处理所有用第一和第三数据编码到第一层中的调制信号,例如在频带2到9中的一个或多个中,以获得以下调制信号序列。
在操作1113中,触觉装置不能接收宽带信号,这意味着触觉装置只能接收幅度调制信号。在这种情况下,恒定信号(例如在呈现引擎中硬编码)用表示在第一层中编码的调制的特定第一数据进行调制,例如关于基于量化的触觉数据的实施例描述的在第一频带中编码的第一数据。
操作1112和1113使得能够在操作1114获得N个应用帧的纹理触觉。
在操作1124中,信号被传输到致动器用于呈现。
在操作1117中,从比特流或数据流,更具体地,从编码到比特流或数据流中的数据的分层表示的第一层,提取所接收的基于时间的、表示基本信号和相关调制的第一和第三数据的触觉数据。这种数据更具体地与表示振动效应的调制信号序列有关。在操作1120,根据在操作1118获得的表示每个触觉呈现装置的特性的数据来确定由呈现引擎馈送的触觉呈现装置(即,致动器)是否是宽带设备。
如果触觉装置是宽带设备,则该方法进一步处理操作1121。
如果触觉装置不是宽带设备,则该方法进一步处理操作1122。
在操作1121中,触觉装置能够接收宽带信号,并且处理所有用第一和第三数据编码到第一层中的调制信号,例如在频带2到9中的一个或多个中,以获得调制信号序列。
在操作1122中,触觉装置不能接收宽带信号,这意味着触觉装置只能接收幅度调制信号。在这种情况下,恒定信号(例如在呈现引擎中硬编码)用表示在第一层中编码的调制的特定第一数据进行调制,例如关于基于量化的触觉数据的实施例描述的在第一频带中编码的第一数据。根据变体,如果触觉装置被配置为实现这样的API调用,则呈现编码为API调用的瞬态信号。
操作1121和1122使得能够在操作1123获得N个应用帧的振动触觉。
在操作1124中,信号被传输到致动器以进行呈现。
这样的过程使得能够根据触觉装置的特性以及它们根据触觉效果的触觉感知模态呈现触觉效果的能力来调整或调适编码到比特流或数据流中的触觉信号的呈现。
根据触觉装置,编码到比特流或数据流中的全部数据被解码以用于呈现目的,仅编码到比特流或数据流中的部分数据被解码以用于呈现目的或仅更高层数据或信息被解码(例如表示触觉感知模态的第二数据)。
在图1至11中,本文描述了各种方法,并且每种方法包括用于实现所描述的方法的一个或多个步骤或动作。除非该方法的正确操作需要特定的步骤或动作顺序,否则可以修改或组合特定步骤和/或动作的顺序和/或使用。
关于方块图和/或操作流程图描述了一些示例。每个方块表示电路组件、模块或代码部分,其中包括一个或多个用于实现指定逻辑功能的可执行指令。还应注意,在其他实施方式中,方框中注明的功能可能不按指示的顺序出现。例如,根据所涉及的功能,连续显示的两个方块实际上可以基本上同时执行,或者这些方块有时可以以相反的顺序执行。
本文描述的实施方式和方面可以在例如方法或过程、装置、计算机程序、数据流、比特流或信号中实施。即使仅在单一实施形式的上下文中讨论(例如,仅作为方法讨论),所讨论的特征的实施也可以以其他形式(例如,装置或计算机程序)实施。
这些方法可以在例如处理器中实现,处理器通常指的是处理设备,包括例如计算机、微处理器、集成电路或可编程逻辑设备。处理器还包括通信设备。
此外,这些方法可以通过由处理器执行的指令来实现,并且这些指令(和/或由实现产生的数据值)可以储存在计算器可读储存介质上。计算器可读储存介质可以采取体现在一个或多个计算机可读介质中并且具有体现在其上的可由计算机执行的计算机可读程序代码的计算机可读程序产品的形式。考虑到在其中储存信息的固有能力以及提供从中检索信息的固有能力,这里使用的计算机可读储存介质可以被认为是非暂时性储存介质。计算机可读储存介质可以是例如但不限于电子的、磁的、光学的、电磁的、红外的或半导体系统、装置或设备,或前述的任何合适的组合。应当理解,以下虽然提供了可以应用本实施例的计算机可读储存介质的更具体示例,但仅是说明性的,而不是如本领域普通技术人员容易理解的穷举:便携计算机磁盘;硬盘;只读存储器(ROM);可擦可编程只读存储器(EPROM或闪存);可携式光盘只读存储器(CD-ROM);光储存装置;磁储存装置;或上述任何合适的组合。
指令可以形成有形地体现在处理器可读介质上的应用程序。
例如,指令可以在硬件、韧体、软件或组合中。例如,可以在操作系统、单独的应用程序或两者的组合中找到指令。因此,处理器可以被表征为例如被配置为执行过程的设备和包括具有用于执行过程的指令的处理器可读介质(例如储存装置)的装置。此外,除了指令之外或代替指令,处理器可读介质可以储存由实现产生的数据值。
设备可以以例如适当的硬件、软件和固件来实现。这种设备的示例包括个人计算机、笔记本电脑、智能手机、平板计算机、数字多媒体数字视频转换盒、数字电视接收器、个人视讯记录系统、连接的家用电器、头戴式显示设备(HMD、透视眼镜)、投影仪(投影机)、“caves”(包括多个显示器的系统)、服务器、视频和/或触觉编码器、视频和/或触觉解码器、处理视频解码器输出的后处理器、向视频编码器提供输入的预处理器、网络服务器、数字视频转换盒、无线连接的可穿戴触觉装置,例如连接的可穿戴触觉装置,以及用于处理表示一个或多个触觉反馈或效果的触觉数据或信号的任何其他设备,或其他通信设备。应该清楚的是,该设备可以是移动的。
计算机软件可以由处理器81或硬件或硬件和软件的组合来实现。作为非限制性示例,实施例还可以通过一个或多个集成电路来实现。存储器82可以是适合于技术环境的任何类型,并且可以使用任何适当的数据储存技术来实现,例如光学存储装置、磁存储装置、基于半导体的存储装置、固定存储器和可移动存储器,作为非限制性例子。作为非限制性示例,处理器81可以是适合于技术环境的任何类型,并且可以包括微处理器、通用计算器、专用计算机和基于多核架构的处理器中的一个或多个。
如对本领域普通技术人员显而易见的,实现方式可以产生各种信号,这些信号被格式化以携带例如可以被储存或传输的信息。该信息可以包括例如用于执行方法的指令,或由所描述的实现方式之一产生的数据。例如,信号可以被格式化以携带所描述的实施例的比特流。例如,这种信号可以被格式化为电磁波(例如,使用频谱的射频部分)或基频带信号。格式化可以包括例如编码数据流和用编码的数据流调制载波。信号携带的信息例如可以是仿真或数字信息。如已知的,信号可以通过各种不同的有线或无线链路传输。该信号可以储存在处理器可读介质上。
本文使用的术语仅出于描述特定实施例的目的,并不旨在进行限制。如本文所用,单数形式“一”、“该”和“所述”也可以旨在包括复数形式,除非上下文另有明确指示。将进一步理解的是,当在本说明书中使用时,术语“包括/包含”和/或“含有/具有”可以指定所陈述的例如特征、整数、步骤、操作、组件和/或元件,但不排除存在或添加一个或多个其他特征、整数、步骤、操作、组件、元件和/或它们的组。此外,当一个元件被称为“响应”或“连接”到另一个元件时,它可以直接响应或连接到另一个元件,或者可以存在中间元件。相反,当一个元件被称为“直接响应”或“直接连接”到其他元件时,不存在中间元件。
应当理解,例如在“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)。正如本领域和相关领域的普通技术人员所清楚的,这可以扩展到列出的尽可能多的项目。
在本发明中可以使用各种数值。特定值可以是用于示例目的,并且所描述的方面不限于这些特定值。
应当理解,尽管术语第一、第二等可以在本文中用于描述各种元件,但是这些元件不受这些术语的限制。这些术语仅用于区分一个元件与另一个元件。例如,第一元件可以被称为第二元件,并且类似地,第二元件可以被称为第一元件而不背离本发明的教导。第一元件和第二元件之间没有暗示排序。
对“一个示例性实施例”或“示例性实施例”」或“一个实现”或“”实现”以及其其他变体的引用经常用于传达特定特征、结构、特性等(描述与实施例/实施相关的术语)被包括在至少一个实施例/实施中。因此,短语“在一个示例性实施例中”或“在示例性实施例中”或“在一个实施例中”或“在实施例中”以及出现在整个本发明的各个地方任何其他变体不一定都是参考相同的实施例。
类似地,本文中对“”根据示例性实施例/示例/实施方式”或“在示例性实施方式/示例/实施方式中”及其其他变体的引用经常用于传达特定特征、结构或特性(结合示例性实施例/示例/实施方式描述)可以包括在至少一个示例性实施例/示例/实施方式中。因此,在说明书的各个地方出现的表述“根据示例性实施例/示例/实现”或“在示例性实施例/示例/实现中”不一定都指相同的示例性实施例/示例/实现,单独的或替代的示例性实施例/示例/实现也不一定与其他示例性实施例/示例/实现相互排斥。
权利要求中出现的附图标记仅用于说明,对权利要求的范围没有限制作用。尽管没有明确描述,但是可以以任何组合或子组合来采用本实施例/示例和变体。
当附图以流程图的形式呈现时,应当理解其还提供了相应装置的方块图。类似地,当附图以方块图形式呈现时,应当理解其也提供了相应方法/过程的流程图。
尽管一些图包括通信路径上的箭头以显示通信的主要方向,但应理解通信可以在与所描绘的箭头相反的方向上发生。
各种实现涉及解码。如在本发明中所使用的,“解码”可以包括例如对接收到的触觉信号(可能包括对一个或多个触觉信号进行编码的接收到的比特流)执行的所有或部分处理,以便产生适合的最终输出,用于呈现触觉效果或在重建的触觉反馈或效果中进行进一步处理。在各种实施例中,这样的过程包括通常由解码器执行的一个或多个过程。在各种实施例中,这样的过程例如还或可替换地包括由本发明中描述的各种实现的解码器执行的过程。
各种实现涉及编码。以与上述关于“解码”的讨论类似的方式,如在本发明中使用的“编码”可以涵盖例如对输入触觉信号执行的所有或部分处理,以便产生编码比特流。在各种实施例中,这样的过程包括通常由编码器执行的一个或多个过程。在各种实施例中,这样的过程还或可替换地包括由本发明中描述的各种实现的编码器执行的过程。
此外,本申请可以涉及“获取”各种信息。获得信息可以包括例如估计信息、计算信息或从存储器中检索信息中的一项或多项。
此外,本申请可以涉及“访问”各种信息。访问信息可以包括以下一项或多项,例如,接收信息、检索信息(例如,从存储器中)、储存信息、移动信息、复制信息、计算信息、确定信息或估计信息。
此外,本申请可以涉及“接收”各种信息。与“访问”一样,接收是一个广义术语。接收信息可以包括例如访问信息或检索信息(例如,从存储器中)中的一项或多项。此外,在诸如储存信息、处理信息、传输信息、移动信息、复制信息、擦除信息、计算信息、确定信息、或估计信息等操作期间,通常以一种或另一种方式涉及“接收”。
此外,如本文所用,词语“信号”尤其指的是向相应的解码器指示一些东西。这样,在一个实施例中,可以在编码器侧和解码器侧使用相同的参数。因此,例如,编码器可以向解码器传输(显式信令)特定参数,使得解码器可以使用相同的特定参数。相反,如果解码器已经具有特定参数以及其他参数,则可以使用信令而不发送(隐式信令)以简单地允许解码器知道和选择特定参数。通过避免传输任何实际功能,在各种实施例中实现了位节省。应当理解,信令可以以多种方式完成。例如,在各种实施例中,一个或多个语法元素、标志等用于向对应的解码器发信号通知信息。虽然前面涉及“信号”一词的动词形式,但“信号”一词在本文中也可以用作名词。
已经描述了许多实现。然而,应当理解,可以进行各种修改。例如,可以组合、补充、修改或移除不同实现的组件以产生其他实现。此外,普通技术人员将理解,其他结构和过程可以替代所公开的那些,并且得到的实施方式将以至少基本相同的方式执行至少基本相同的功能,以至少实现与所公开的实施方式基本相同的结果。因此,本发明考虑了这些和其他实施方式。
Claims (16)
1.一种在编码的触觉信号数据的比特流中对表示触觉效果的触觉信号编码的方法,其中方法包括对所述触觉信号的分层表示(100)编码,所述分层表示包括多个层(11、12、13、14),且层级与所述多个层(11、12、13、14)中的每个层相关联,
所述编码包括:
在所述多个层(11、12、13、14)的第一层(11)中,对表示至少一个基本信号(41、42、43)的调制(44、45、46)的第一数据编码(61);以及
在具有高于所述第一层的层级的层级的所述多个层的一层中,对表示与所述触觉效果相关联的触觉感知模态的第二数据编码(62)。
2.如权利要求1所述的方法,进一步包括:在所述第一层(11)中,通过对表示第一组基本信号(41、42、43)的每个基本信号的第三数据编码,对包含所述至少一个基本信号的所述第一组基本信号(41、42、43)编码,每个所述基本信号在确定的空间中表示,所述确定的空间根据所述触觉感知模态。
3.如权利要求2所述的方法,其中,所述第三数据包括:
表示所述至少一个基本信号(41、42、43)的类型的数据;和/或
表示所述至少一个基本信号(41、42、43)的相位的数据,
并且其中所述第一数据包括表示所述确定的空间中的多个点的坐标的数据。
4.如权利要求2或3所述的方法,其中,所述多个层(11、12、13、14)还包括具有高于所述第一层的层级的层级的第二层(12)、具有高于所述第二层的层级的层级的第三层(13)、和具有高于所述第三层的层级的层级的第四层(14),所述方法还包括:
在所述第二层(12)中,通过对于第二组序列的每个序列,对表示每个所述序列中的一个或多个调制信号的顺序的第一信息编码,对包括一个或多个调制信号的至少一个序列的第二组序列编码,每个调制信号从与所述基本信号(41、42、43)相关联的第二数据调制的所述第一组基本信号的基本信号(41、42、43)获得;
在所述第三层(13)中,通过对于每个第一组合,对表示所述每个第一组合中包含的序列数量的第二信息编码,对包含所述第二组序列的一个或多个序列的至少一个第一组合的第三组第一组合编码;和
在所述第四层(14)中,通过对表示第二组合中包含的第一组合数量的第三信息编码,对所述第三组的一个或多个第一组合的第二组合编码。
5.如权利要求4所述的方法,其中,所述第二组序列的至少一个序列包括从不同类型的基本信号(41、42、43)获得的多个调制信号。
6.如权利要求1至5中任一项所述的方法,其中,所述至少一个基本信号对应于恒定信号。
7.如权利要求1至6中任一项所述的方法,还包括在所述多个层(11、12、13、14)的至少一个层中编码元数据,所述元数据的至少一部分包括表示与所述至少一个基本信号相关联的应用程序编程接口调用的数据。
8.一种从编码的触觉信号数据解码触觉信号的方法,其中方法包括解码所述触觉信号的分层表示,所述分层表示包括多个层,且层级与所述多个层中的每个层相关联,
所述解码包括:
从所述多个层中的第一层(11)中,解码表示至少一个基本信号的调制的第一数据;和
从具有高于所述第一层的层级的层级的多个层的一层中,解码(72)表示触觉感知模态的第二数据。
9.如权利要求8所述的方法,进一步包括:从所述第一层,通过对表示第一组基本信号(41、42、43)的每个基本信号的第三数据解码,对包含至少一个基本信号的所述第一组基本信号(41、42、43)解码,每个所述基本信号在确定的空间中表示,所述确定的空间根据所述触觉感知模态。
10.如权利要求9所述的方法,其中,所述第三数据包括:
表示所述至少一个基本信号的类型的数据;和/或
表示所述至少一个基本信号的相位的数据,
并且其中所述第一数据包括表示所述确定的空间中的多个点的坐标的数据。
11.如权利要求9或10所述的方法,其中,所述多个层(11、12、13、14)还包括具有高于所述第一层的层级的层级的第二层(12)、具有高于所述第二层的层级的层级的第三层(13)、和具有高于所述第三层的层级的层级的第四层(14),
所述方法还包括:
从所述第二层(12)中,通过对于第二组序列的每个序列,对表示每个所述序列中的一个或多个调制信号的顺序的第一信息解码,对包括至少一个或多个调制信号的至少一个序列的所述第二组序列解码,每个调制信号从与所述基本信号相关联的第二数据调制的所述第一组基本信号的基本信号获得;
从所述第三层(13)中,通过对于每个第一组合,对表示每个第一组合中包含的序列数量的第二信息解码,对包含所述第二组序列的一个或多个序列的至少一个第一组合的第三组第一组合解码;和
从所述第四层(14)中,通过对表示第二组合中包含的第一组合数量的第三信息解码,对所述第三组的一个或多个第一组合的第二组合解码。
12.如权利要求11所述的方法,其中,所述第二组的至少一个序列包括从不同类型的基本信号中获得的多个调制信号。
13.如权利要求8至12中任一项所述的方法,其中,所述至少一个基本信号对应于恒定信号。
14.如权利要求8至13中任一项所述的方法,还包括从所述多个层中的至少一层中解码元数据,所述元数据的至少一部分包括表示与所述至少一个基本信号相关联的应用程序编程接口调用的数据。
15.一种在编码的触觉信号数据的比特流中对表示触觉效果的触觉信号编码的装置(8),其中所述装置包括与至少一个处理器(81)相关联的存储器(82、84),所述至少一个处理器(81)被配置为实施根据权利要求1至7中任一项所述的方法。
16.一种从编码的触觉信号数据的比特流中解码表示触觉效果的触觉信号的装置(8),其中所述装置包括与至少一个处理器(81)相关联的存储器(82、84),所述至少一个处理器(81)被配置为实施根据权利要求8至14中任一项所述的方法。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
EP21306351.4A EP4160361A1 (en) | 2021-09-29 | 2021-09-29 | Method and apparatus of encoding/decoding haptics data |
EP21306351.4 | 2021-09-29 | ||
PCT/EP2022/076708 WO2023052305A1 (en) | 2021-09-29 | 2022-09-26 | Method and apparatus of encoding/decoding haptic data |
Publications (1)
Publication Number | Publication Date |
---|---|
CN118043764A true CN118043764A (zh) | 2024-05-14 |
Family
ID=78516721
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202280066250.8A Pending CN118043764A (zh) | 2021-09-29 | 2022-09-26 | 编码/解码触觉数据的方法和装置 |
Country Status (5)
Country | Link |
---|---|
EP (1) | EP4160361A1 (zh) |
CN (1) | CN118043764A (zh) |
AU (1) | AU2022356219A1 (zh) |
TW (1) | TW202403508A (zh) |
WO (1) | WO2023052305A1 (zh) |
Family Cites Families (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP3099030A1 (en) * | 2015-05-26 | 2016-11-30 | Thomson Licensing | Method and device for encoding/decoding a packet comprising data representative of a haptic effect |
EP3112987A1 (en) * | 2015-06-29 | 2017-01-04 | Thomson Licensing | Method and schemes for perceptually driven encoding of haptic effects |
FR3066030B1 (fr) | 2017-05-02 | 2019-07-05 | Centre National De La Recherche Scientifique | Procede et dispositif de generation de motifs tactiles |
US20200076866A1 (en) * | 2018-08-30 | 2020-03-05 | Immersion Corporation | Systems, devices, and methods for streaming haptic effects |
-
2021
- 2021-09-29 EP EP21306351.4A patent/EP4160361A1/en active Pending
-
2022
- 2022-09-26 AU AU2022356219A patent/AU2022356219A1/en active Pending
- 2022-09-26 WO PCT/EP2022/076708 patent/WO2023052305A1/en active Application Filing
- 2022-09-26 CN CN202280066250.8A patent/CN118043764A/zh active Pending
- 2022-09-29 TW TW111137092A patent/TW202403508A/zh unknown
Also Published As
Publication number | Publication date |
---|---|
TW202403508A (zh) | 2024-01-16 |
WO2023052305A1 (en) | 2023-04-06 |
EP4160361A1 (en) | 2023-04-05 |
AU2022356219A1 (en) | 2024-03-14 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109656368B (zh) | 解复用触觉信号的方法和系统 | |
JP6639602B2 (ja) | オフラインハプティック変換システム | |
US10152124B2 (en) | Systems and methods for enhanced haptic effects | |
US10692336B2 (en) | Method and schemes for perceptually driven encoding of haptic effects | |
CN112470104A (zh) | 编码设备、编码方法、解码设备、解码方法、发送系统、接收设备和程序 | |
CN118043764A (zh) | 编码/解码触觉数据的方法和装置 | |
EP4167600A2 (en) | A method and apparatus for low complexity low bitrate 6dof hoa rendering | |
CN112292654A (zh) | 信息处理装置、信息处理方法和程序 | |
CN111903136A (zh) | 信息处理装置、信息处理方法和程序 | |
EP4300264A1 (en) | Method and apparatus of signaling/parsing haptic data | |
EP4300263A1 (en) | Method and apparatus of signaling/parsing haptic data | |
EP4375829A1 (en) | Method and apparatus of generating haptic effect from audio content | |
US20240129047A1 (en) | Method for creating sparse isobmff haptics tracks | |
TW202418045A (zh) | 傳訊/解析觸覺資料的方法及設備 | |
WO2023202898A1 (en) | Haptics effect comprising a washout | |
CN117336281A (zh) | 触觉媒体文件的解封装和封装方法、装置、电子设备 | |
CN117609523A (zh) | 触觉媒体的数据处理方法、装置及计算机设备、存储介质 | |
WO2024017589A1 (en) | Coding of spatial haptic with temporal signal | |
KR20240088941A (ko) | 위치 기반 햅틱 신호 압축 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination |