CN112506341B - 一种振动效果的生成方法、装置、终端设备及存储介质 - Google Patents
一种振动效果的生成方法、装置、终端设备及存储介质 Download PDFInfo
- Publication number
- CN112506341B CN112506341B CN202011392359.XA CN202011392359A CN112506341B CN 112506341 B CN112506341 B CN 112506341B CN 202011392359 A CN202011392359 A CN 202011392359A CN 112506341 B CN112506341 B CN 112506341B
- Authority
- CN
- China
- Prior art keywords
- data stream
- vibration
- peak point
- local peak
- acquiring
- 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.)
- Active
Links
Images
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
Abstract
本发明提供了振动效果的生成方法、装置、终端设备及存储介质。该方法包括:获取振动数据流;获取所述振动数据流的包络曲线上局部峰值点的位置和大小;根据所述局部峰值点的大小获取所述振动数据流的强度值;根据所述局部峰值点的位置,获取相邻局部峰值点的频谱曲线;根据所述频谱曲线上峰值点所在的频率,获取尖锐度值;将所述强度值和尖锐度值的对应关系写入触觉振动接口可识别的文件中。本发明可以降低数据转换的耗时及人工成本。
Description
【技术领域】
本发明涉及终端设备交互技术领域,尤其涉及一种振动效果的生成方法、装置、终端设备及存储介质。
【背景技术】
触觉振动(CoreHaptics)接口可以向应用程序添加自定义的触觉反馈,从而大大增强了人机互动的丰富性。方便开发人员在iOS系统下调用以实现丰富的振动效果。对于任意数据流形式的振动数据,其无法通过触觉振动接口进行播放。这样需要将振动数据转换为触觉振动接口可识别的数据。
对于设计人员而言,触觉振动接口只开放了强度和尖锐度这两个自由度进行振动效果的设计。这样对于一些长时间的已知振动效果,如通过音效转换得到的振动数据,就需要找到一种从“逐点振动数据”到“强度(intensity)+尖锐度(sharpness)的参数化描述”的转换方法。
现有技术中,通常这种逐点的振动效果的长度都较大,且采用手动进行转换,而手动转换会非常耗时,且人工成本较高。
因此,有必要提供一种自动的转换方法。
【发明内容】
本发明的目的在于提供一种振动效果的生成方法,用于解决现有技术中手动转换会非常耗时,而且人工成本较高的问题。
为达上述之一或部分或全部目的或是其他目的,本发明实施例的第一方面提出了一种马达非线性参数的测试方法,包括:
获取振动数据流;
获取所述振动数据流的包络曲线上局部峰值点的位置和大小;
根据所述局部峰值点的大小获取所述振动数据流的强度值;
根据所述局部峰值点的位置,获取相邻局部峰值点的频谱曲线;
根据所述频谱曲线上峰值点所在的频率,获取尖锐度值;
将所述强度值和尖锐度值的对应关系写入触觉振动接口可识别的文件中。
在其中一个实施例中,所述振动数据流包括位移数据,所述获取振动数据流,包括:
将所述位移数据进行最大位移归一化,得到相对位移数据。
在其中一个实施例中,所述获取所述振动数据流的包络曲线上局部峰值点的位置和大小,包括:
获取所述相对位移数据的包络曲线;
获取所述包络曲线上局部局部峰值点的位置和大小。
在其中一个实施例中,所述根据所述局部峰值点的位置,获取相邻局部峰值点的频谱曲线,包括:
获取当前局部峰值点的位置;
获取下一个局部峰值点的位置;
根据所述当前局部峰值点的位置和下一个局部峰值点的位置,获取所述当前局部峰值点到下一个局部峰值点的频谱曲线。
在其中一个实施例中,所述根据所述频谱曲线上峰值点所在的频率,获取尖锐度值,包括:
获取所述频谱曲线上的峰值点所在的频率;
将所述峰值点所在的频率按照所述尖锐度值的范围进行归一化,得到相对频率值;
根据所述相对频率值得到对应的尖锐度值。
在其中一个实施例中,在所述获取振动数据流之前,所述方法还包括:
获取当前数据流;
若所述当前数据流为非振动数据流,则将所述非振动数据流转换为所述振动数据流。
在其中一个实施例中,所述若所述当前数据流为非振动数据流,则将所述非振动数据流转换为所述振动数据流,包括:
若所述当前数据流为非振动数据流,将所述非振动数据流的频率范围映射到所述振动数据流的振动频率范围。
本发明实施例的第二方面提供了一种振动效果的生成装置,包括:
第一获取模块,用于获取振动数据流;
第二获取模块,用于获取所述振动数据流的包络曲线上局部峰值点的位置和大小;
第三获取模块,用于根据所述局部峰值点的大小获取所述振动数据流的强度值;
第四获取模块,用于根据所述局部峰值点的位置,获取相邻局部峰值点的频谱曲线;
第五获取模块,用于根据所述频谱曲线上峰值点所在的频率,获取尖锐度值;
写入模块,用于将所述强度值和尖锐度值的对应关系写入触觉振动接口可识别的文件中。
本发明实施例的第三方面提供了一种计算机可读的存储介质,其上存储有计算机程序,当所述计算机程序在计算机上执行时,使得所述计算机执行如上所述的振动效果的生成方法。
本发明实施例的第四方面提供了一种终端设备,包括存储器、处理器以及存储在所述存储器中并可在所述处理器上运行的计算机程序,其特征在于,所述处理器执行所述计算机程序时实现如上所述的振动效果的生成方法的步骤。
本发明实施例提供了一种振动效果的生成方法、装置、终端设备及存储介质,通过该方法,可以获取振动数据流的包络曲线上局部峰值点的位置和大小。然后,根据局部峰值点的大小获取振动数据流的强度值;根据局部峰值点的位置,获取相邻局部峰值点的频谱曲线。之后,根据频谱曲线上峰值点所在的频率,获取尖锐度值。最后,将强度值和尖锐度值的对应关系写入触觉振动接口可识别的文件中,该方法的流程均是自动完成的,不需要手工转换。且本发明实施例中,触觉振动接口能自动识别文件中的强度值和尖锐度值的对应关系,从而将振动效果播放出来。因此,本发明实施例可以降低数据转换的耗时及人工成本。
【附图说明】
图1为本发明实施例一提供的振动效果的生成方法的流程示意图;
图2为本发明实施例二提供的振动效果的生成方法的流程示意图;
图3为本发明实施例三提供的振动效果的生成装置的结构示意图;
图4为本发明实施例四提供的终端设备的结构示意图。
【具体实施方式】
下面结合附图和实施方式对本发明作进一步说明。
触觉振动接口是一种全新的应用程序接口(Application Program Interface,API),可以向应用程序添加自定义的触觉反馈,从而大大增强了人机互动的丰富性。通过触觉振动接口,可以让应用程序播放由称为触觉事件的基本构建块制作的自定义触觉模式。事件可以是瞬态的(Transient),如切换开关获得的反馈,也可以是连续的(continuous),如来自铃声的振动。开发人员既可以独立使用瞬态或连续模式,也可以根据两者的精确组合来构建丰富的模式。当然,该触觉振动接口也可以用于播放自定义音频内容。
对于任意数据流形式的振动数据,其无法通过触觉振动接口进行播放。这样需要将振动数据转换为触觉振动接口可识别的数据。
对于设计人员而言,触觉振动接口只开放了强度和尖锐度这两个自由度进行振动效果的设计。这样对于一些长时间的已知振动效果,如通过音效转换得到的振动数据,就需要找到一种从“逐点振动数据”到“强度+尖锐度的参数化描述”的转换方法。
现有技术中,通常这种逐点的振动效果的长度都较大,且采用手动进行转换,而手动转换会非常耗时,且人工成本较高。
因此,有必要提供一种自动的转换方法,让触觉振动接口可以将期望的振动效果播放出来。
图1为本发明实施例一提供的振动效果的生成方法的流程示意图,如图1所示,本实施例一提供的振动效果的生成方法,可以包括如下步骤:
步骤101、获取振动数据流。
本实施例的执行主体为振动效果的生成装置,该振动效果的生成装置可具体为终端设备,如智能手机、平板电脑、桌上型计算机、笔记本等。
本实施例中,获取振动数据流,振动数据流具有一定的频率范围,比如振动数据流的带宽为30Hz~500Hz。该频率范围表征的是人手能够感知的振动频率范围。通常采用位移数据来表征振动的数据流。
步骤102、获取振动数据流的包络曲线上局部峰值点的位置和大小。
每个事件都有两个属性,这些属性控制触觉事件参数(CHHapticEventParameter)表示的触觉。每个属性都有一个参数ID和一个介于0和1之间的值,如ID为.hapticIntensity的参数表示感觉的强度;参数值越高,则感觉的强度越强。ID为.hapticSharpness的参数表示一种物理质量,即尖锐度,该物理质量在比例尺的高端具有精确的机械感。在低端,它具有更圆润的有机感觉。需要说明的是,强度值与尖锐度值均采用相对值,均是介于0和1之间的值。
在触觉振动接口中,无论选择生成自定义触觉的哪种构建块,都可以控制其强度和尖锐度。强度会改变触觉的幅度或力度,尖锐度可以使用户确定触觉体验的特征。例如,可以使用尖锐度来传达清晰、精确和机械的体验(尖锐度值→1),或者传达柔和、圆润和自然的体验(尖锐度值→0)。
振动数据流可以是瞬态数据流,也可以是连续数据流,或者瞬态数据流和连续数据流组合的数据流。
为了获取振动数据流中不同点的强度值,即触觉强度控制点(HapticIntensityControl)。需要提取振动数据流的包络曲线,在该包络曲线上找到局部峰值点的位置和大小,即找到局部峰值点的横坐标和纵坐标,其中,横坐标为时间,纵坐标为强度值。可知,局部峰值点的位置为局部峰值点在包络曲线上的横坐标,可以用于下一步频率信息的提取,局部峰值点的大小为局部峰值点在包络曲线上的纵坐标,可以用于提取强度信息。该部分的数据处理可以在软件中进行,比如在MATLAB软件中进行。使用软件进行数据处理,可以节省人工成本,同时提高数据处理效率和准确度。
步骤103、根据局部峰值点的大小获取振动数据流的强度值。
在获取到振动数据流的包络曲线上局部峰值点的位置和大小后,根据局部峰值点的大小,即根据局部峰值点在包络曲线上的纵坐标,可以直接得到振动数据流的强度值。该强度值为相对值,其大小介于0和1之间。这样就可以使强度值被限定在一定的范围内,从而消除奇异样本数据导致的不良影响,还可以防止数据溢出。
步骤104、根据局部峰值点的位置,获取相邻局部峰值点的频谱曲线。
为了获取不同点的尖锐度值,即触觉尖锐度控制点(HapticSharpnessControl)。在获取到振动数据流的包络曲线上局部峰值点的位置和大小后,可以根据局部峰值点的位置,获取相邻局部峰值点的频谱曲线,即该局部峰值点与其相邻的局部峰值点的频谱曲线。当存在多个局部峰值点时,可以分别获取相邻两个局部峰值点的频谱曲线,即分段获取每相邻两个局部峰值点的频谱曲线。这样在后续就可以获取到多个不同点的尖锐度值。
步骤105、根据频谱曲线上峰值点所在的频率,获取尖锐度值。
频谱是指一个时域的信号在频域下的表示方式,可以针对信号进行傅立叶变换而得,所得的结果可以是振幅频谱,该振幅频谱以振幅为纵轴,频率为横轴,表示振幅随频率变化的情形。基于此,在获取到相邻局部峰值点的频谱曲线后,可以找到频谱曲线上峰值点对应的频率,振幅的绝对值最大的点为峰值点,因此,根据振幅的绝对值最大的点对应的频率,就可以直接得到频谱曲线上峰值点对应的频率。
尖锐度描述的是与频率成分有关的感觉,是振动数据流中高频能量与总能量的对比,尖锐度随振动数据流高频分量的增加而增加,随低频分量的增加而减小。因此,根据频谱曲线上峰值点所在的频率,可以得到尖锐度值。由于频谱曲线是相邻两个局部峰值点的频谱曲线,当存在多个局部峰值点时,则会得到不同点的尖锐度值。
步骤106、将强度值和尖锐度值的对应关系写入触觉振动接口可识别的文件中。
在触觉振动接口中,可以通过触觉参数曲线(CHHapticParameterCurve)在参数值之间进行线性插值以确保其平滑过渡,适合用来进行自定义曲线的设计。触觉参数曲线定义了多点触觉效果。
在得到了每个点的强度值和尖锐度值之后,需要将这两部分信息通过触觉参数曲线的方式写入到触觉振动接口可以识别的文件中,如可以是.AHAP格式的文件,然后将上述可以表达振动效果的强度值和尖锐度值以参数化的形式存放在.AHAP格式的文件中,.AHAP格式的文件以JSON的形式进行描述。通常需要简单的脚本即可实现该功能,用于驱动终端设备的马达进行振动,从而播放出设计人员期望的振动效果。
可以理解的是,本发明实施例中,终端设备可以获取振动数据流的包络曲线上局部峰值点的位置和大小。然后,根据局部峰值点的大小获取振动数据流的强度值;根据局部峰值点的位置,获取相邻局部峰值点的频谱曲线。之后,根据频谱曲线上峰值点所在的频率,获取尖锐度值。最后,将强度值和尖锐度值的对应关系写入触觉振动接口可识别的文件中,该方法的流程均是自动完成的,不需要手工转换。且本发明实施例中,触觉振动接口能自动识别文件中的强度值和尖锐度值的对应关系,从而将振动效果播放出来。因此,本发明实施例可以降低数据转换的耗时及人工成本。
图2为本发明实施例二提供的振动效果的生成方法的流程示意图,如图2所示,本实施例二提供的振动效果的生成方法,可以包括如下步骤:
步骤201、获取当前数据流。
本实施例的执行主体为振动效果的生成装置,该振动效果的生成装置可具体为终端设备,如智能手机、平板电脑、桌上型计算机、笔记本等。
本实施例中,终端设备可以获取当前数据流。
步骤202、若当前数据流为非振动数据流,则将非振动数据流转换为振动数据流。
当获取到当前数据流后,判断当前数据流是否为振动数据流,若当前数据流为非振动数据流,比如,该非振动数据流可以是音频数据流,也可以是其它一些效果文件,如动画效果文件等。当判断出当前数据流为非振动数据流后,为了能得到可以让触觉振动接口识别的数据,首先需要将非振动数据流转换为振动数据流,该振动数据流可以是位移数据,或者除位移数据之外的其它振动数据流,以便于后续的由振动数据流向强度和尖锐度两个参数的转换。
由于非振动数据流与振动数据流的频率范围是不同的,以音频数据流为例,通常音频数据的带宽为20Hz~20kHz,而振动数据流的带宽为30Hz~500Hz。前者表征的是人耳能够听到的声音范围,而后者表征的是人手能够感知的振动频率范围。因此,在将非振动数据流转换为振动数据流时,需要将非振动数据流的频率范围映射到振动数据流的振动频率范围。通过将非振动数据流转换为振动数据流时,可以扩大本发明的适用范围,即振动数据流可以转换为表示振动效果的强度和尖锐度等参数,对于非振动数据流,可以将其转换为振动数据流后,再将转换后的振动数据流转换为表示振动效果的强度和尖锐度等参数。因此本发明既适用于非振动数据流,也可以适用于振动数据流,其应用较为广泛。
基于此,在一种实施例方式中,若当前数据流为非振动数据流,则将非振动数据流转换为振动数据流,可以包括:
若当前数据流为非振动数据流,将非振动数据流的频率范围映射到振动数据流的振动频率范围。
在进行频率范围映射时,可以采用特征映射或频率移动等方法进行不同频率范围的数据转换,由于是已有的方法,在此不再赘述。
步骤203、将位移数据进行最大位移归一化,得到相对位移数据。
需要注意的是,由于触觉振动接口中的强度参数为相对值,为了与其对应,因此需要将位移数据进行最大位移Xmax的归一化,得到相对位移值,也即将位移数据转换为介于0和1之间的相对位移数据。这样就可以使位移数据被限定在一定的范围内,从而消除奇异样本数据导致的不良影响,还可以防止数据溢出。
步骤204、获取相对位移数据的包络曲线。
在将位移数据进行归一化后,得到相对位移数据。针对该相对位移数据,可以将相对位移数据的包络曲线的信息提取出来,例如通过envelope命令将相对位移数据的包络曲线的信息提取出来,具体是使用MATLAB软件中的包络函数如envelope函数,直接生成信号包络并修改其计算方式,如可以调整用于求得分析信号包络的希尔伯特(Hilbert)滤波器的长度,因为使用太小的滤波器长度会导致包络失真,因此通过调整希尔伯特滤波器的长度,可以防止信号包络失真。由此,就可以得到相对位移数据的包络曲线。
步骤205、获取包络曲线上局部局部峰值点的位置和大小。
当获取到相对位移数据的包络曲线后,可以找到该包络曲线上的局部峰值点,然后,可以获取该包络曲线上的局部峰值点的位置和大小,例如通过寻找峰值函数(findpeaks)来获取局部峰值的位置和大小,即可以获取该包络曲线上的局部峰值点的横坐标和纵坐标,其横坐标为时间,纵坐标为强度值。需要说明的是,当存在多个局部局部峰值点时,可以获取到多个不同局部局部峰值点的位置和大小。其中,大小表示了强度信息,位置用于下一步的频率信息的提取。
步骤206、根据局部峰值点的大小获取振动数据流的强度值。
根据局部峰值点的大小(即纵坐标)可以获取振动数据流的强度值,
步骤206的具体实施例可以参阅步骤103的实施例,在此不再进行赘述。
步骤207、获取当前局部峰值点的位置。
由于获取到的局部峰值点可能存在多个,多个局部峰值点的位置为idx_k,k=1、2、3……。获取当前局部峰值点的位置,比如,当前局部峰值点的位置为第i个位置,即idx_k(i)。
步骤208、获取下一个局部峰值点的位置。
由于频谱曲线是分段得到的,每一段频谱曲线是相邻两个局部峰值点的频谱曲线,因此,在获取到当前局部峰值点的位置idx_k(i)后,还需要获取下一个局部峰值点的位置idx_k(i+1),该下一个局部峰值点是与当前局部峰值点的位置相邻的局部峰值点,通过获取下一个局部峰值点的位置idx_k(i+1),以便于求取该两个相邻局部峰值点的频谱曲线。
步骤209、根据当前局部峰值点的位置和下一个局部峰值点的位置,获取当前局部峰值点到下一个局部峰值点的频谱曲线。
在获取到当前局部峰值点的位置idx_k(i)和下一个局部峰值点的位置idx_k(i+1)后,可以求取当前局部峰值点的位置idx_k(i)到下一个局部峰值点idx_k(i+1)的频谱曲线,即进行快速傅氏变换:
X=fft(x(idx_k(i):idx_k(i+1)))
其中,X为频谱曲线,x(idx_k(i))表示信号为idx_k(i)时刻取值的函数,fft为快速傅氏变换,是离散傅氏变换的快速算法,将时域函数转换为频域函数,当然也可以采用拉普拉斯变换将时域函数转换为频域函数。在频谱曲线上,横坐标为频率,纵坐标为幅度(振幅)。
这里仅仅给出了其中两个相邻局部峰值点频谱曲线的获取方式,由于可能会存在多个局部峰值点,则其它相邻局部峰值点的频谱曲线的获取方式与此相同,即针对不同的相邻局部峰值点,可以分段进行快速傅氏变换,在此不再赘述,这样就可以完成对不同相邻局部峰值点的频谱曲线的分段获取。
步骤210、获取频谱曲线上的峰值点所在的频率。
在得到频谱曲线上,找到频谱曲线上的峰值点,即求解X的绝对值,找到最大绝对值,该最大绝对值对应的点就是峰值点。接下来,根据该峰值点的横坐标的位置,可以获取到该峰值点所在的频率,即主能量频率。当存在多个峰值点时,可以得到多个峰值点对应的多个频率,由于每段频谱曲线均会有一个主能量频率,因此可以得到多段频谱曲线对应的多个主能量频率。
步骤211、将峰值点所在的频率按照尖锐度值的范围进行归一化,得到相对频率值。
在得到频谱曲线上的峰值点所在的频率后,将峰值点所在的频率基于触觉振动接口的尖锐度值的范围进行归一化,如将频率映射到[80,230]的频率范围,对于超过频率上限的频率,用上限将其归一化频率为1,将低于下限的频率,用下限归一化频率为0,经过归一化后,可以得到相对频率值。这样就可以使频率被限定在一定的范围内,从而消除奇异样本数据导致的不良影响,还可以防止数据溢出。
步骤212、根据相对频率值得到对应的尖锐度值。
尖锐度描述的是与频率成分有关的感觉,是振动数据流中高频能量与总能量的对比,尖锐度随振动数据流高频分量的增加而增加,随低频分量的增加而减小。因此,根据频谱曲线上峰值点所在的频率对应的相对频率值,可以得到尖锐度值。由于频谱曲线是相邻两个局部峰值点的频谱曲线,当存在多个局部峰值点时,则会得到不同点的尖锐度值。
步骤213、将强度值和尖锐度值的对应关系写入触觉振动接口可识别的文件中。
步骤213的具体实施例可以参阅步骤106的实施例,在此不再进行赘述。
作为一个示例,比如,通过定义连续振动(HapticContinuous)的时长0.055625s,其基础强度值为1,基础尖锐度值为0;再定义参数曲线(ParameterCurve)的强度控制点和尖锐度控制点,来进行分段定义:其中每个点的强度值和基础强度值相乘,每个点的尖锐度值和基础尖锐度值相加。这样实现将逐点的振动数据流(如位移数据)离线转换为触觉振动接口的参数曲线类型中的参数,转换后的参数可以写入AHAP文件中。
可以理解的是,本发明实施例中,对于任意数据流形式的振动数据流(如位移数据),或者非振动数据流,它本身是无法通过触觉振动接口进行播放的,必须要将振动数据流转换为一定规则的数据,或者,现将非振动数据流转换为振动数据流,然后将振动数据流转换为一定规则的数据,如触觉参数曲线。本发明实施例中,从强度和尖锐度两个维度进行了计算和转换,最终得到了触觉振动接口可以识别的抽象化数据,便于在终端设备上播放振动效果。该方法的流程均是自动完成的,不需要手工转换。且本发明实施例中,触觉振动接口能自动识别文件中的强度值和尖锐度值的对应关系,从而将振动效果播放出来。因此,本发明实施例可以降低数据转换的耗时及人工成本。
图3为本发明实施例三提供的振动效果的生成装置的结构示意图,如图3所示,本实施例提供的振动效果的生成装置,包括以下模块:
第一获取模块301,用于获取振动数据流;
第二获取模块302,用于获取振动数据流的包络曲线上局部峰值点的位置和大小;
第三获取模块303,用于根据局部峰值点的大小获取振动数据流的强度值;
第四获取模块304,用于根据局部峰值点的位置,获取相邻局部峰值点的频谱曲线;
第五获取模块305,用于根据频谱曲线上峰值点所在的频率,获取尖锐度值;
写入模块306,用于将强度值和尖锐度值的对应关系写入触觉振动接口可识别的文件中。
本实施例三提供的一种振动效果的生成装置,用于实现实施例一所述的振动效果的生成方法,其中各个模块的功能可以参考方法实施例中相应的描述,其实现原理和技术效果类似,此处不再赘述。
图4是本发明实施例四提供的终端设备的示意图。如图4所示,该实施例的终端设备40包括:处理器400、存储器401以及存储在所述存储器401中并可在所述处理器400上运行的计算机程序402,例如振动效果的生成程序。所述处理器400执行所述计算机程序402时实现上述各个振动效果的生成方法实施例中的步骤,例如图1所示的步骤101至106。或者,所述处理器400执行所述计算机程序402时实现上述各装置实施例中各模块的功能,例如图3所示模块301至306的功能。
示例性的,所述计算机程序402可以被分割成一个或多个模块/单元,所述一个或者多个模块/单元被存储在所述存储器401中,并由所述处理器400执行,以完成本发明。所述一个或多个模块/单元可以是能够完成特定功能的一系列计算机程序指令段,该指令段用于描述所述计算机程序402在所述终端设备40中的执行过程。例如,所述计算机程序402可以被分割成第一获取模块、第二获取模块、第三获取模块、第四获取模块、第五获取模块和写入模块(虚拟装置中的单元模块),各模块具体功能如下:
第一获取模块,用于获取振动数据流;
第二获取模块,用于获取振动数据流的包络曲线上局部峰值点的位置和大小;
第三获取模块,用于根据局部峰值点的大小获取振动数据流的强度值;
第四获取模块,用于根据局部峰值点的位置,获取相邻局部峰值点的频谱曲线;
第五获取模块,用于根据频谱曲线上峰值点所在的频率,获取尖锐度值;
写入模块,用于将强度值和尖锐度值的对应关系写入触觉振动接口可识别的文件中。
所述终端设备40可以是智能手机、平板电脑、桌上型计算机、笔记本等计算设备。所述终端设备40可包括,但不仅限于,处理器400、存储器401。本领域技术人员可以理解,图4仅仅是终端设备40的示例,并不构成对终端设备40的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件,例如所述终端设备40还可以包括输入输出设备、网络接入设备、总线等。
所称处理器400可以是中央处理单元(Central Processing Unit,CPU),还可以是其他通用处理器、数字信号处理器(Digital Signal Processor,DSP)、专用集成电路(Application Specific Integrated Circuit,ASIC)、现成可编程门阵列(FieldProgrammable Gate Array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。
所述存储器401可以是所述终端设备40的内部存储单元,例如终端设备40的硬盘或内存。所述存储器401也可以是所述终端设备40的外部存储设备,例如所述终端设备40上配备的插接式硬盘,智能存储卡(Smart Media Card,SMC),安全数字(Secure Digital,SD)卡,闪存卡(Flash Card)等。进一步地,所述存储器401还可以既包括所述终端设备40的内部存储单元也包括外部存储设备。所述存储器401用于存储所述计算机程序以及所述终端设备40所需的其他程序和数据。所述存储器401还可以用于暂时地存储已经输出或者将要输出的数据。
所属领域的技术人员可以清楚地了解到,为了描述的方便和简洁,仅以上述各功能单元、模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能单元、模块完成,即将所述终端设备的内部结构划分成不同的功能单元或模块,以完成以上描述的全部或者部分功能。实施例中的各功能单元、模块可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中,上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。另外,各功能单元、模块的具体名称也只是为了便于相互区分,并不用于限制本发明的保护范围。上述系统中单元、模块的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
在上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述或记载的部分,可以参见其它实施例的相关描述。
本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、或者计算机软件和电子硬件的结合来实现。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本发明的范围。
在本发明所提供的实施例中,应该理解到,所揭露的装置/终端设备和方法,可以通过其它的方式实现。例如,以上所描述的装置/终端设备实施例仅仅是示意性的,例如,所述模块或单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通讯连接可以是通过一些接口,装置或单元的间接耦合或通讯连接,可以是电性,机械或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
所述集成的模块/单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明实现上述实施例方法中的全部或部分流程,也可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于一计算机可读存储介质中,该计算机程序在被处理器执行时,可实现上述各个方法实施例的步骤。其中,所述计算机程序包括计算机程序代码,所述计算机程序代码可以为源代码形式、对象代码形式、可执行文件或某些中间形式等。所述计算机可读介质可以包括:能够携带所述计算机程序代码的任何实体或装置、记录介质、U盘、移动硬盘、磁碟、光盘、计算机存储器、只读存储器(Read-Only Memory,ROM)、随机存取存储器(RandomAccess Memory,RAM)、电载波信号、电信信号以及软件分发介质等。需要说明的是,所述计算机可读介质包含的内容可以根据司法管辖区内立法和专利实践的要求进行适当的增减,例如在某些司法管辖区,根据立法和专利实践,计算机可读介质不包括电载波信号和电信信号。
应理解,上述实施例中各步骤的序号的大小并不意味着执行顺序的先后,各过程的执行顺序应以其功能和内在逻辑确定,而不应对本发明实施例的实施过程构成任何限定。
以上实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。
以上所述的仅是本发明的实施方式,在此应当指出,对于本领域的普通技术人员来说,在不脱离本发明创造构思的前提下,还可以做出改进,但这些均属于本发明的保护范围。
Claims (10)
1.一种振动效果的生成方法,其特征在于,包括:
获取振动数据流;
获取所述振动数据流的包络曲线上局部峰值点的位置和大小;
根据所述局部峰值点的大小获取所述振动数据流的强度值;
根据所述局部峰值点的位置,获取相邻局部峰值点的频谱曲线;
根据所述频谱曲线上峰值点所在的频率,获取尖锐度值;
将所述强度值和所述尖锐度值的对应关系通过触觉参数曲线的方式写入触觉振动接口可识别的文件中。
2.根据权利要求1所述的振动效果的生成方法,其特征在于,所述振动数据流包括位移数据,所述获取振动数据流,包括:
将所述位移数据进行最大位移归一化,得到相对位移数据。
3.根据权利要求2所述的振动效果的生成方法,其特征在于,所述获取所述振动数据流的包络曲线上局部峰值点的位置和大小,包括:
获取所述相对位移数据的包络曲线;
获取所述包络曲线上局部峰值点的位置和大小。
4.根据权利要求3所述的振动效果的生成方法,其特征在于,所述根据所述局部峰值点的位置,获取相邻局部峰值点的频谱曲线,包括:
获取当前局部峰值点的位置;
获取下一个局部峰值点的位置;
根据所述当前局部峰值点的位置和下一个局部峰值点的位置,获取所述当前局部峰值点到下一个局部峰值点的频谱曲线。
5.根据权利要求4所述的振动效果的生成方法,其特征在于,所述根据所述频谱曲线上峰值点所在的频率,获取尖锐度值,包括:
获取所述频谱曲线上的峰值点所在的频率;
将所述峰值点所在的频率按照所述尖锐度值的范围进行归一化,得到相对频率值;
根据所述相对频率值得到对应的尖锐度值。
6.根据权利要求1所述的振动效果的生成方法,其特征在于,在所述获取振动数据流之前,所述方法还包括:
获取当前数据流;
若所述当前数据流为非振动数据流,则将所述非振动数据流转换为所述振动数据流。
7.根据权利要求6所述的振动效果的生成方法,其特征在于,所述若所述当前数据流为非振动数据流,则将所述非振动数据流转换为所述振动数据流,包括:
若所述当前数据流为非振动数据流,将所述非振动数据流的频率范围映射到所述振动数据流的振动频率范围。
8.一种振动效果的生成装置,其特征在于,包括:
第一获取模块,用于获取振动数据流;
第二获取模块,用于获取所述振动数据流的包络曲线上局部峰值点的位置和大小;
第三获取模块,用于根据所述局部峰值点的大小获取所述振动数据流的强度值;
第四获取模块,用于根据所述局部峰值点的位置,获取相邻局部峰值点的频谱曲线;
第五获取模块,用于根据所述频谱曲线上峰值点所在的频率,获取尖锐度值;
写入模块,用于将所述强度值和所述尖锐度值的对应关系通过触觉参数曲线的方式写入触觉振动接口可识别的文件中。
9.一种终端设备,包括存储器、处理器以及存储在所述存储器中并可在所述处理器上运行的计算机程序,其特征在于,所述处理器执行所述计算机程序时实现如权利要求1至7中任一项所述的振动效果的生成方法的步骤。
10.一种计算机可读的存储介质,其上存储有计算机程序,其特征在于,当所述计算机程序在计算机上执行时,使得所述计算机执行如权利要求1至7中任一项所述的振动效果的生成方法。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011392359.XA CN112506341B (zh) | 2020-12-01 | 2020-12-01 | 一种振动效果的生成方法、装置、终端设备及存储介质 |
PCT/CN2020/137713 WO2022116297A1 (zh) | 2020-12-01 | 2020-12-18 | 一种振动效果的生成方法、装置、终端设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011392359.XA CN112506341B (zh) | 2020-12-01 | 2020-12-01 | 一种振动效果的生成方法、装置、终端设备及存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN112506341A CN112506341A (zh) | 2021-03-16 |
CN112506341B true CN112506341B (zh) | 2022-05-03 |
Family
ID=74968546
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202011392359.XA Active CN112506341B (zh) | 2020-12-01 | 2020-12-01 | 一种振动效果的生成方法、装置、终端设备及存储介质 |
Country Status (2)
Country | Link |
---|---|
CN (1) | CN112506341B (zh) |
WO (1) | WO2022116297A1 (zh) |
Families Citing this family (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115378302B (zh) * | 2021-05-20 | 2023-12-12 | 荣耀终端有限公司 | 线性马达的控制方法、装置、设备及可读存储介质 |
EP4117170A4 (en) * | 2021-05-20 | 2023-09-20 | Honor Device Co., Ltd. | METHOD AND DEVICE FOR ADJUSTING THE VIBRATION WAVEFORM OF A LINEAR MOTOR |
CN116300415A (zh) * | 2022-09-07 | 2023-06-23 | 瑞声开泰声学科技(上海)有限公司 | 一种多个振动器的输出一致性控制方法、装置和电子设备 |
CN115390673A (zh) * | 2022-09-13 | 2022-11-25 | 武汉市聚芯微电子有限责任公司 | 振动数据的生成方法、装置、电子设备和存储介质 |
CN116067602B (zh) * | 2023-03-06 | 2023-07-14 | 西安航天动力研究所 | 一种随机振动信号生成方法、装置及电子设备 |
Citations (14)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
TW462900B (en) * | 2000-10-11 | 2001-11-11 | China Steel Corp | Vibration diagnosis method for abnormality or malfunctions of roller of hot rolling machine for steel strip |
JP2004294173A (ja) * | 2003-03-26 | 2004-10-21 | Hiroshima Univ | 食品物性測定方法及びその装置 |
CN101394439A (zh) * | 2008-11-10 | 2009-03-25 | 深圳华为通信技术有限公司 | 自动控制终端振动强度的方法、终端 |
CN101424975A (zh) * | 2001-10-09 | 2009-05-06 | 伊默逊股份有限公司 | 基于计算机设备的音频输出的触发触觉的方法 |
EP2846227A2 (en) * | 2013-09-06 | 2015-03-11 | Immersion Corporation | Systems and methods for generating haptic effects associated with transitions in audio signals |
EP2846228A2 (en) * | 2013-09-06 | 2015-03-11 | Immersion Corporation | Systems and methods for generating haptic effects associated with an envelope in audio signals |
CN105163262A (zh) * | 2015-09-30 | 2015-12-16 | 南京师范大学 | 一种扬声器异音检测方法及检测系统 |
US9374478B1 (en) * | 2013-12-03 | 2016-06-21 | Marvell International Ltd. | Adaptive image sharpening |
WO2018146305A1 (fr) * | 2017-02-13 | 2018-08-16 | Centre National De La Recherche Scientifique | Methode et appareil de modification dynamique du timbre de la voix par decalage en fréquence des formants d'une enveloppe spectrale |
CN108430003A (zh) * | 2018-03-30 | 2018-08-21 | 广东欧珀移动通信有限公司 | 音效补偿方法和装置、可读存储介质、终端 |
CN109241838A (zh) * | 2018-07-27 | 2019-01-18 | 重庆理工大学 | 基于心理声学客观参数的变速器质量评价方法 |
CN109410907A (zh) * | 2017-08-18 | 2019-03-01 | 比亚迪股份有限公司 | 云轨的噪音处理方法、装置、设备及存储介质 |
CN111552378A (zh) * | 2020-03-31 | 2020-08-18 | 瑞声科技(新加坡)有限公司 | 振动信号的生成方法、装置、终端及存储介质 |
CN111796790A (zh) * | 2019-04-09 | 2020-10-20 | 深圳市冠旭电子股份有限公司 | 一种音效调节方法、装置、可读存储介质及终端设备 |
Family Cites Families (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR101498623B1 (ko) * | 2008-06-25 | 2015-03-04 | 엘지전자 주식회사 | 휴대 단말기 및 그 제어방법 |
CN102024481B (zh) * | 2009-09-14 | 2013-01-09 | 展讯通信(上海)有限公司 | 从音频文件提取振动信息的方法、装置以及振动装置 |
KR20140115648A (ko) * | 2013-03-21 | 2014-10-01 | 삼성전자주식회사 | 햅틱 엔진을 이용하여 햅틱 효과를 제공하는 단말 장치 및 그 제어 방법 |
US20200012347A1 (en) * | 2018-07-09 | 2020-01-09 | Immersion Corporation | Systems and Methods for Providing Automatic Haptic Generation for Video Content |
CN110010151A (zh) * | 2018-12-31 | 2019-07-12 | 瑞声科技(新加坡)有限公司 | 一种音频信号处理方法及设备、存储介质 |
CN111111157B (zh) * | 2019-12-20 | 2023-12-01 | 瑞声科技(新加坡)有限公司 | 马达触感信号生成方法和马达触感信号生成接口 |
CN111897427A (zh) * | 2020-07-29 | 2020-11-06 | 东南大学 | 基于触觉感知仿生特性的硬度触觉再现方法 |
-
2020
- 2020-12-01 CN CN202011392359.XA patent/CN112506341B/zh active Active
- 2020-12-18 WO PCT/CN2020/137713 patent/WO2022116297A1/zh active Application Filing
Patent Citations (14)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
TW462900B (en) * | 2000-10-11 | 2001-11-11 | China Steel Corp | Vibration diagnosis method for abnormality or malfunctions of roller of hot rolling machine for steel strip |
CN101424975A (zh) * | 2001-10-09 | 2009-05-06 | 伊默逊股份有限公司 | 基于计算机设备的音频输出的触发触觉的方法 |
JP2004294173A (ja) * | 2003-03-26 | 2004-10-21 | Hiroshima Univ | 食品物性測定方法及びその装置 |
CN101394439A (zh) * | 2008-11-10 | 2009-03-25 | 深圳华为通信技术有限公司 | 自动控制终端振动强度的方法、终端 |
EP2846227A2 (en) * | 2013-09-06 | 2015-03-11 | Immersion Corporation | Systems and methods for generating haptic effects associated with transitions in audio signals |
EP2846228A2 (en) * | 2013-09-06 | 2015-03-11 | Immersion Corporation | Systems and methods for generating haptic effects associated with an envelope in audio signals |
US9374478B1 (en) * | 2013-12-03 | 2016-06-21 | Marvell International Ltd. | Adaptive image sharpening |
CN105163262A (zh) * | 2015-09-30 | 2015-12-16 | 南京师范大学 | 一种扬声器异音检测方法及检测系统 |
WO2018146305A1 (fr) * | 2017-02-13 | 2018-08-16 | Centre National De La Recherche Scientifique | Methode et appareil de modification dynamique du timbre de la voix par decalage en fréquence des formants d'une enveloppe spectrale |
CN109410907A (zh) * | 2017-08-18 | 2019-03-01 | 比亚迪股份有限公司 | 云轨的噪音处理方法、装置、设备及存储介质 |
CN108430003A (zh) * | 2018-03-30 | 2018-08-21 | 广东欧珀移动通信有限公司 | 音效补偿方法和装置、可读存储介质、终端 |
CN109241838A (zh) * | 2018-07-27 | 2019-01-18 | 重庆理工大学 | 基于心理声学客观参数的变速器质量评价方法 |
CN111796790A (zh) * | 2019-04-09 | 2020-10-20 | 深圳市冠旭电子股份有限公司 | 一种音效调节方法、装置、可读存储介质及终端设备 |
CN111552378A (zh) * | 2020-03-31 | 2020-08-18 | 瑞声科技(新加坡)有限公司 | 振动信号的生成方法、装置、终端及存储介质 |
Also Published As
Publication number | Publication date |
---|---|
WO2022116297A1 (zh) | 2022-06-09 |
CN112506341A (zh) | 2021-03-16 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN112506341B (zh) | 一种振动效果的生成方法、装置、终端设备及存储介质 | |
US10429933B2 (en) | Audio enhanced simulation of high bandwidth haptic effects | |
JP6250985B2 (ja) | マッピングを用いた音をハプティック効果に変換するシステム | |
CN106095384B (zh) | 一种音效调节方法及用户终端 | |
CN111785238B (zh) | 音频校准方法、装置及存储介质 | |
CN104426495A (zh) | 音频信号处理装置、方法和程序 | |
CN103294447A (zh) | 一种生成随机数的方法和装置 | |
US20230032417A1 (en) | Game special effect generation method and apparatus, and storage medium and electronic device | |
CN112017687A (zh) | 一种骨传导设备的语音处理方法、装置及介质 | |
CN107705776A (zh) | 一种智能钢琴左右键盘分区使用的系统与方法 | |
KR20180063227A (ko) | 오디오 컨텐츠의 동적 변경 | |
CN105321526A (zh) | 音频处理方法和电子设备 | |
CN105244041A (zh) | 歌曲试唱的评价方法及装置 | |
CN109697083B (zh) | 数据的定点化加速方法、装置、电子设备及存储介质 | |
CN107481727A (zh) | 一种基于电音基调控制的音频信号处理方法及系统 | |
CN111964583A (zh) | 马达振动位移估测方法、装置及介质 | |
CN110070885B (zh) | 音频起始点检测方法和装置 | |
US11297430B2 (en) | Terminal device, apparatus and method for simulating the characteristic of an audio processor, and computer-readable storage medium | |
CN105575414A (zh) | 歌词文件的生成方法及装置 | |
CN105739995A (zh) | 模拟弹奏方法及模拟弹奏模块 | |
CN112748897B (zh) | 车载系统的音量调试方法、装置及设备 | |
CN110992969B (zh) | 一种电子耳蜗的滤波器组配置方法及装置 | |
CN112837670A (zh) | 语音合成方法、装置及电子设备 | |
CN112825245B (zh) | 实时修音方法、装置及电子设备 | |
CN114265500A (zh) | 一种基于传感器技术的虚拟现实增强方法及系统 |
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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |