基于检测到的视频事件的动态触觉产生的制作方法

文档序号:14396438阅读:105来源:国知局

一个实施例总体上涉及触觉效果,并且更具体地涉及基于检测到的视频事件的触觉效果的产生。



背景技术:

触觉(haptics)是一种触感和力反馈技术,通过向用户施加诸如力、振动和运动的触觉反馈效果(即,“触觉效果”)来利用用户的触摸感觉。可以配置诸如移动装置、触摸屏装置和个人计算机的装置产生触觉效果。通常,可以在装置的操作系统(“os”)内编程对能够产生触觉效果的嵌入式硬件(诸如,致动器)的调用。这些调用指定要运用哪种触觉效果。例如,当用户使用例如按钮、触摸屏、控制杆、操纵杆、轮盘或某个其他控件与装置进行交互时,装置的os可通过控制电路向嵌入式硬件发送运用命令。然后,嵌入式硬件产生适宜的触觉效果。

可以配置装置协调触觉效果的输出与诸如游戏或其他媒体的其他内容的输出,使触觉效果合并到其他内容中。例如,在游戏背景下,当开发游戏时,开发人员可嵌入与游戏关联的触觉效果并且表现在游戏内发生的诸如机关枪射击、爆炸或车祸的动作。通常,在游戏开发过程中的后期,诸如,当游戏开发人员正在完成游戏应用的开发时或当游戏开发人员将完成的游戏应用移植到新平台时,在游戏中添加触觉效果。这通常导致在已经开发了所有音频和视频效果之后添加触觉效果的现象。因为触觉效果通常是在该过程中的后期添加的,所以这通常轮到由触觉效果开发人员或其他某个开发人员进行关于将触觉效果与音频或视频效果关联的决策。另外,开发人员通常没有关于适用于音频或视频效果的触觉效果的选择的输入。



技术实现要素:

在本公开的实施例中,提出了一种动态产生触觉效果的方法。该方法包括接收至少包括视频数据的输入媒体并且检测该视频数据内的视频事件。该方法继续收集与检测到的视频事件关联的相关数据,然后基于收集到的相关数据来配置一个或多个特征参数。确定视频事件的类型,然后选择基于视频事件的类型的一组特征参数。该方法最后基于所选择的这组特征参数来自动产生触觉效果。

附图说明

附图并入本文中并且形成说明书的部分,例示了本发明并且与具体实施方式一起进一步用于说明本发明的原理并且使相关领域的技术人员能够制造并且使用本发明。

另外,附图标记的最左边的数字标识附图标记首次出现的图(例如,附图标记“310”指示如此编号的元件是在图3中首次标记或首次出现的)。另外,具有相同附图标记的后面带有字母表中的不同字母或其他不同标记(例如,撇号)的元件指示在结构、操作或形式上相同但是可以被识别为处于不同的空间位置或在不同的时间点重现的元件。

图1例示了根据本公开的实施例的系统的框图。

图2是根据本公开的实施例的触觉效果产生系统的框图,触觉效果产生系统检测事件,收集数据,配置参数并且动态地产生触觉。

图3是根据本公开的实施例的碰撞事件检测的插图。

图4a和图4b是根据本公开的实施例的爆炸事件检测的插图。

图5是根据本公开实施例的当自动检测视频事件时图1的系统功能的流程图。

具体实施方式

一个实施例是用于检测视频事件并且自动产生用于检测到的视频事件的定制的、自定义触觉效果的方法和系统。该方法和系统包括手动或自动检测视频事件。收集诸如事件的开始时间和结束时间、像素数据和运动分析数据的相关数据。基于收集到的数据来配置特征参数。识别视频事件的类型,例如碰撞事件或爆炸事件。然后,基于视频事件的类型,选择一组特征参数并且基于所选择的这组特征参数来产生对应的自定义的触觉效果。

虽然本文中描述的实施例对于特定应用而言是例示性实施例,但是应当理解,本发明不限于此。获取了本文中提供的教导的本领域的技术人员将认识到在其范围内的另外的修改形式、应用和实施例以及本发明将在其中有显著效用的另外的领域。

一个实施例是一种系统,该系统基于检测到的视频事件,例如视频流或片段中的碰撞或爆炸,来自动产生触觉效果。实施例包括视频事件的自动检测,分析视频数据并且随后配置参数以定义和产生相关的触觉效果。所产生的触觉效果因此基于特定检测到的视频事件,由此产生定制的触觉效果。可以自动或基于人工识别的视频事件来进行视频检测。

图1说明了根据实施例的系统100的框图。在一个实施例中,系统100是一装置的一部分并且系统100基于检测到的视频事件来针对装置提供自动触觉效果。在另一个实施例中,系统100与装置分开并且基于检测到的视频事件来针对装置远程提供自动触觉效果。虽然示出为单个系统,但是系统100的功能可以作为分布式系统而实施。系统100包括用于传播信息的总线115或其他通信机构以及与总线115联接的用于处理信息的处理器111。处理器111可以是任何类型的通用或专用处理器。系统100进一步包括存储器116,用于存储信息和将由处理器111执行的指令。存储器116可包括随机存取存储器(“ram”)、只读存储器(“rom”)、诸如磁盘或光盘的静态存储器或任何其他类型的计算机可读介质的任何组合。

计算机可读介质可以是可由处理器111访问的任何可用的暂态和非暂态介质并且可以包括易失性和非易失性介质、可移除和不可移动介质、通信介质和存储介质。通信介质可以包括诸如载波或其他传输机制的调制数据信号中的计算机可读指令、数据结构、程序模块或其他数据并且可以包括本领域中已知的任何其他形式的信息传递介质。存储介质可以包括ram、闪存、rom、可擦可编程只读存储器(“eprom”)、电可擦除可编程只读存储器(“eeprom”)、寄存器、硬盘、可移动磁盘、只读光盘存储器(“cd-rom”)或本领域中已知的任何其他形式的存储介质。

在一个实施例中,存储器116存储当由处理器111执行时提供功能的软件模块。这些模块包括为系统100提供操作系统功能的操作系统117以及实施例中的装置的其余部分。模块进一步包括自动检测视频事件的视频事件检测模块118,如下面更详细公开的。在某些实施例中,视频事件检测模块118可以包括多个模块,其中,每个单独模块提供用于检测视频事件的特定的单独功能。例如,视频事件检测模块118可以包括检测模块,所述检测模块基于颜色和运动分析、视觉测距法或运动传感器或任何其他外部传感器来检测事件。系统100将通常包括一个或更多个附加的应用模块119,以包括附加功能,诸如immersion公司的“touchsense”应用,其将触觉效果整合入音频/视觉输入。

在发送和/或接收来自远程源的数据的实施例中,系统100进一步包括诸如网络接口卡的通信装置113,通信装置113提供诸如红外、无线电、wi-fi的移动无线网络通信或蜂窝网络通信。在其他实施例中,通信装置113提供诸如以太网连接或调制解调器的有线网络连接。

处理器111经由总线115进一步与诸如液晶显示器(“lcd”)的显示器120联接,用于向用户显示图形表示或用户界面。显示器120可以是配置为发送和接收来自处理器111的信号的诸如触摸屏的触摸敏感输入装置并且可以是多重触摸触摸屏。处理器111可以进一步与键盘或光标控制器124联接,以允许用户与诸如鼠标或输入笔(stylus)的系统100交互。

在一个实施例中,系统100进一步包括致动器122。处理器111可以将与所产生的触觉效果关联的触觉信号发送到致动器122,致动器122进而输出诸如振动触感触觉效果、静电摩擦触觉效果或变形触觉效果的触觉效果。致动器122包括致动器驱动电路。致动器122可以是例如电机、电磁致动器、音圈、形状记忆合金、电活性聚合物、螺线管、偏心旋转质量电机(“erm”)、线性谐振致动器(“lra”)、压电致动器、高带宽致动器、电活性聚合物(“eap”)致动器、静电摩擦显示器或超声振动发生器。在替代实施例中,除了致动器122(图1中未示出)之外,系统10可包括一个或多个附加致动器。致动器122是触觉输出装置的示例,其中,触觉输出装置是配置为响应于驱动信号而输出诸如振动触感触觉效果、静电摩擦触觉效果或变形触觉效果的触觉效果的装置。在替代实施例中,致动器122可以被某种其他类型的触觉输出装置取代。另外,在其他替代实施例中,系统100可不包括致动器122,并且与系统100分离的设备包括产生触觉效果的致动器或其他触觉输出装置,并且系统100通过通信装置113将所产生的触觉效果信号发送到该装置。

系统100可进一步与数据库130可操作地联接,其中,数据库130可以配置为存储由存储器116使用的数据。数据库130可以是可操作数据库、分析数据库、数据仓库、分布式数据库、终端用户数据库、外部数据库、导航数据库、内存数据库(in-memorydatabase)、面向文档数据库、实时数据库、关系数据库、面向对象数据库或本领域中已知的任何其他数据库。

在一个实施例中,系统100进一步包括一个或多个扬声器126。处理器111可以将音频信号发送到扬声器126,扬声器126进而输出音频效果。扬声器126可以是例如动态扬声器、电动扬声器、压电扬声器、磁致伸缩扬声器、静电扬声器、色带和平面磁性扬声器、弯曲波扬声器、平板扬声器、海尔气运式传感器(heilairmotiontransducer)、等离子弧扬声器(plasmaarcspeaker)和数字扬声器。

在一个实施例中,系统100进一步包括传感器128。传感器128可以配置为检测能量的形式或其他物理特性,诸如(但不限于)加速度、生物信号、距离、流量、力/压力/应变/弯曲、湿度、线性位置、取向/倾斜度、射频、旋转位置、旋转速率、开关的操纵、温度、振动或可见光强度。传感器128可进一步配置为将检测到的能量或其他物理性质转换成电信号或代表虚拟传感器信息的任何信号。传感器128可以是任何装置,诸如但不限于加速度计、心电图、脑电图、肌电描记术、眼动图、电腭动描记器(electropalatograph)、电流皮肤响应传感器、电容式传感器、霍尔效应传感器、红外传感器、超声传感器、压力传感器、光纤传感器、屈曲传感器(或弯曲传感器)、力敏感电阻器、载荷测量元件、lusensecps2155,微型压力传感器、压电传感器、应变计、湿度计、线性位置触摸传感器、线性电位计(或滑块)、线性可变差动变压器、罗盘、倾斜仪、磁性标签(或射频识别标签)、旋转编码器、旋转电位计、陀螺仪、通断开关、温度传感器(诸如,温度计、热电偶、电阻温度检测器、热敏电阻或温度传感集成电路)、麦克风、光度计、高度计、生物监视器或光敏电阻器。

通常,从感觉多媒体数据产生触觉效果的自动触觉转换算法,包括音频和/或视频数据,缺乏针对特定事件自定义或定制的效果。本公开中提出的实施例使用各种检测和关联的算法技术来动态地为特定视频事件定制触觉效果添加了能力。

图2是根据实施例的触觉效果产生系统200的框图。触觉效果产生系统200包括事件检测器210、数据收集器220、参数配置器230、触觉效果产生器240、致动器系统250和致动器255。

事件检测器210接收输入媒体。输入媒体可以是媒体文件,包括视频内容的数据流或任何其他类型的媒体内容文件。但是,至少输入媒体必须包含一些视频内容。一旦接收到输入媒体,事件检测器210将随后检测包含在接收到的媒体内容内的视频事件。这种检测是在接收到的输入媒体内使用基于颜色和运动分析、或基于视觉测距、或基于运动传感器或识别视频事件的开始时间和结束时间的任何其他外部传感器的事件检测算法来实现的,视频事件也被作为目标事件引用。在另一个实施例中,事件检测可以例如通过逐帧地观看输入媒体以识别视频事件何时开始以及它何时完成来人工完成。

数据收集器220基于检测到的每个视频事件的开始时间和结束时间来收集与任何识别的视频事件关联的数据。该关联数据或相关数据可以是从视频分析或其他信号处理算法而获得的任何类型的信息。此相关数据可包括与视频事件相关联的像素数据(例如,对象的大小)。它还可以是连续帧之间的像素数据中的改变(例如,对象或事件的大小改变和/或对象或事件的移动)的分析。相关数据还可以是运动分析的结果并且包括诸如光学流矢量的运动分析矢量的产生。如果输入媒体还包含音轨,则数据收集器220还可以收集与检测到的视频事件对应的音频数据,诸如音频的幅度和频率。

参数配置器230使用数据收集器220所收集的相关数据来配置将用于针对检测到的视频事件动态产生定制的触觉效果的各种参数。这些参数可以动态地调整触觉效果的参数,包括幅度、频率、持续时间、形状、暂停间隔、启动时间(attacktime)、启动水平(attacklevel)、衰减时间、衰减水平等。通过有效选择特征参数并优化效果产生算法,所得的触觉效果将高度匹配检测到的视频事件的特有特征。例如,参数配置器230可使用数据收集器220所收集的像素的数量来引用物体或事件的大小,其中更大的可导致更强触觉效果。另外,通过识别输入媒体的连续帧之间的物体或事件的像素数量差异可指示速率或扩展或移动,所以例如更大的扩展转化为更强的触觉效果或在对象或事件更靠近相机移动时,也产生更强的触觉效果。

可使用数据收集器220所收集的运动分析数据来确定运动分析矢量。矢量方向指示运动方向并且其值指示运动的速度。在实施例中,更大的方向改变可产生更强的触觉并且对象或事件的速度越大,动态产生的触觉效果越强烈。参数配置器230还可使用数据收集器220所收集的任何音频数据来配置参数。例如,检测到的视频事件的音轨的较高幅度可导致更强的触觉效果,其中,音频的频率对应于触觉效果的频率。

触觉效果产生器240选择适宜的特征参数来产生针对检测到的视频事件定制的触觉效果。触觉效果发生器240首先确定检测到的视频事件的类型。如果检测到的事件的类型是碰撞事件,则触觉效果产生器240将基于运动分析矢量来选择由参数配置器230配置的特征参数。运动分析矢量是作为产生用于碰撞事件的动态效果的参数的更好选择。如果事件的类型是爆炸事件,则触觉效果产生器240将选择基于像素数量或针对检测到的视频事件的输入媒体连续帧之间像素数量差异的特征参数。一旦触觉效果产生器240基于视频事件的类型选择了适宜的特征参数,则它将动态地产生触觉效果。具体地,触觉效果产生器240将产生一组触觉效果命令,这组触觉效果命令随后被传递到产生触觉效果的致动器系统250。

致动器系统250从触觉效果产生器240接收触觉命令或指令并且操作产生所期望的触觉效果的致动器255。致动器系统250还包括一个或多个驱动器。

图3是根据实施例的视频碰撞事件检测的插图。碰撞事件300包括三个帧310、320和330的序列,其中,检测到三个不同的碰撞事故。在这三个帧310、320和330中,视频碰撞事件300说明了篮球311与地板的碰撞。在这个示例中,篮球311正被跟踪并且使用视频处理算法来计算篮球311的方向和速率。视频处理算法检测篮球311与地板的碰撞,在正方形314、324和334中示出了篮球311的位置。运动分析矢量312、322和332指示篮球311的速率和方向。在实施例中,基于矢量速率的两个参数即矢量(速率)的值和矢量与地板之间的角度来产生触觉效果。将每个速率矢量的值单元化在与最小值0和最大值1之间。在实施例中,输出触觉效果是具有从最小值0到最大值1的单元化幅度的正弦波。垂直于地板的碰撞角越大,速率的值越高,从而将导致更强、更高的幅度和更尖锐、更高的频率和更短的持续时间、碰撞触觉效果。

帧310显示在碰撞角为大约35度、速率值为大约0.7的速率矢量312。在一个实施例中,这导致将输出触觉效果作为幅度为0.7、频率为50hz并且持续时间为40ms的正弦波输出。

帧320显示在碰撞角为大约45度、速率值为大约1.0的速率矢量322。在一个实施例中,这导致将触觉效果作为幅度为1.0、频率为66hz并且持续时间为30ms的正弦波输出。

帧330显示在碰撞角为大约90度、速率值为大约0.7的速率矢量332。在一个实施例中,这导致将触觉效果作为幅度为0.9、频率为80hz并且持续时间为25ms的正弦波输出。

图4a和图4b是根据实施例的视频爆炸事件的检测的插图。爆炸事件400包括五个帧的序列,图4a中示出410和420和图4b示出帧430、440和450。在实施例中,爆炸事件的输出触觉效果是幅度滑动(magnitude-sweep)触觉效果。假定帧410-450的序列的帧频是每秒30帧;针对一帧的幅度滑动触觉效果的持续时间是33ms。在一个实施例中,触觉的幅度被单元化并且范围从最小值0到最大值1。幅度随着检测到的爆炸区域中的像素数量的增大/减小而增大/减小。当爆炸区域开始减小或停止增大时,衰减因子(<1)被应用于幅度,这导致当幅度衰减到0时指示爆炸效果完成的时刻。衰减因子也基于像素的改变量而动态改变。

例如,在实施例中,帧410说明了爆炸区域有大约500个像素时爆炸事件的开始时刻。输出触觉效果是具有幅度为0.25,持续时间为33ms的幅度滑动触觉效果。

帧420说明了爆炸区域增至具有大约1000个像素的爆炸区域。输出触觉效果是幅度为0.5,持续时间为33ms的幅度滑动触觉效果。

帧430说明了爆炸区域持续增至具有超过2000个像素的爆炸区域。输出触觉效果是幅度为1.0,持续时间为33ms的幅度滑动触觉效果。此外,在帧430中,爆炸区域正停止扩张并且开始减小。然后,向帧440和450应用衰减因子(<1)。

帧440说明了爆炸区域减至具有大约800个像素的爆炸区域。输出触觉效果是幅度为0.4,持续时间为33ms的幅度滑动触觉效果。

帧450说明了爆炸结束,此时,区域保持相同大小,没有增大或减小。即使仍然检测到大约500像素的爆炸区域,幅度也衰减至0。输出触觉效果是幅度为0的幅度滑动触觉效果,指示爆炸效果结束。

图5是根据实施例的当动态产生触觉效果时具有图1的系统100的功能的方法500的流程图。在一个实施例中,图5的流程图的功能由存储在存储器或其他计算机可读或有形介质中并且由处理器执行的软件来实现。在其他实施例中,功能可由硬件(例如,通过使用专用集成电路(“asic”)、可编程门阵列(“pga”)、现场可编程门阵列(“fpga”)等)或硬件和软件的任何组合来执行。

方法500从接收输入媒体的510开始。如图2中讨论的,输入媒体可以是任何类型或协议,但包括至少视频数据。在实施例中,输入媒体通过通信装置113接收并且存储在数据库130中,在数据库130中,处理器111可启动对接收到的输入媒体的分析。

在520中,检测一个或多个视频事件。可使用视频事件检测模块118来实现此检测,视频事件检测模块118可利用各种事件检测算法,包括基于颜色和运动分析,或基于视觉测距法,或基于运动传感器或任何其他外部传感器-或通过逐帧观察输入媒体并且识别任何视频事件的开始时间和结束时间来人工进行的事件检测。

在530中,收集相关数据。相关数据是视频事件时间帧内的任何数据。相关数据可以包括像素数据或连续帧之间的像素数据差异。相关数据也可以是指示对象或事件的运动的速率和方向的运动分析数据。

在540中,配置特征参数。特征参数将用于动态产生和调整针对检测到的视频事件定制的触觉效果。在实施例中,特征参数的配置使用对输入媒体的每个帧内的检测到的对象或事件的像素数量进行计数的像素分析(例如,如图4a和图4b中所示),或使用分析检测到的事件或对象的速率和方向的运动分析(例如,如图3中所示)。

在550中,确定视频事件的类型。视频事件的类型将影响将用于产生与检测到的视频事件关联的触觉效果的配置参数的选择。视频事件可被分类为碰撞事件或爆炸事件。通常,运动分析矢量(例如,图3的矢量312)是作为碰撞事件的特征参数和基于像素计数的特征参数的更好选择,或改变连续帧中的像素计数,是用于爆炸事件的特征参数的更好选择。

在560中,选择一组特征参数。用于特征参数选择过程的算法允许有动态地调整触觉效果的能力,触觉效果包括其幅度、频率、持续时间、形状、暂停间隔、启动时间、启动水平、衰减时间、衰减水平等。通过有效选择特征参数并且优化效果产生算法,所产生的触觉效果将高度匹配目标事件的特有特征。

检测到的事件的特征参数可以是可从视频内容获得的所有类型的参数。进一步地,特征参数可以是图像像素的参数,包括颜色(例如,红绿蓝“rgb”值)、亮度和饱和度(例如,色调、饱和度、亮度“hsl”或色调、饱和度、值“hsv”的值)。在这种情况下,算法的输入参数通常是视频的一帧/多帧的某个区域或整个图像中的像素的颜色、亮度和/或饱和度的平均值。例如,根据针对某些检测到的事件(诸如,闪电)的亮度值来产生动态触觉。较高的亮度值映射于具有较高幅度、较高频率的触觉;较低的亮度值被映射于具有较低幅度和较低频率的触觉。

特征参数可以是匹配某些条件的像素数量的改变。例如,红色的像素数量、亮度高于100(亮度范围是0至255)的像素数量等。像素的不同数量可映射于不同的触觉参数。像素数量的改变可指的是大小改变、与相机的距离的改变、检测到的对象或事件的扩张或收缩。例如,较大的扩张对应于较强的触觉;当对象或事件更靠近相机时,触觉效果变得较强。

特征参数可以是输入媒体的连续帧之间的检测到的对象或事件的运动分析矢量,诸如光流矢量。矢量的方向指示运动方向,并且矢量的值指示运动的速度。例如,较大的方向改变对应于较强的触觉;较大的速度改变对应于较强的触觉。

作为算法的输入的特征参数的选择以及它们如何映射于输出触觉参数取决于检测到的不同事件的特性。该映射可以是线性/非线性/随机的,从而可以针对目标事件产生不同风格的触感。

在570中,基于如以上在560中描述的所选择的特征参数来自动产生触觉效果。例如,通过使用产生一组触觉效果命令的触觉效果产生器240来实现触觉效果的产生,这组触觉效果命令被传递到致动器系统250并且其中致动器系统250从触觉效果产生器240接收触觉命令或指令并且操作致动器255以产生所期望的触觉效果。

所提出的方法和系统接收包括其中检测到视频事件的视频数据的输入媒体。收集与检测到的视频事件关联的相关数据并且基于收集到的相关数据来配置一个或多个特征参数。还确定视频事件的类型并且基于视频事件的类型来选择一组特征参数。然后,基于所选择的这组特征参数来自动产生触觉效果。基于特定视频事件来自动产生自定义的、定制的效果的能力是高效的,其中,每个事件都有其特有的触觉。另外,所提出的方法是高度灵活的并且可以容易地与其他触觉产生方法合并,以创建各种各样的不同触觉。

本文中具体说明和/或描述了几个实施例。然而,应该理解,在不脱离本发明的精神和预期范围的情况下,所公开的实施例的修改和变化被以上教导覆盖并且在随附权利要求书的范围内。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1