识别操作事件的方法和装置
技术领域
本发明涉及模式识别技术领域,具体而言,特别涉及一种识别操作事件的方法和装置。
背景技术
智能电视是顺应电视机“高清化”、“网络化”、“智能化”的趋势而出现的一种智能多媒体终端,随着智能电视的发展,手势在操控智能电视上的应用越来越广泛,通过手势操控智能电视给用户带来了方便及更好的用户体验。
在通过手势操控智能电视的过程中,首先要根据手在移动过程中的手点生成手势轨迹,进而识别轨迹,根据识别到的轨迹进行智能电视的控制。其中,在根据手点生成手势轨迹时,由于手容易上下抖动,导致生成手势轨迹后,手势识别的准确性差。
同时,在使用操作杆等其他操作工具进行智能电视的操作控制时,同样也存在上述类似的问题,由于操作杆的抖动而导致生成的移动轨迹不平滑,操作事件识别的准确性差。
针对现有技术中操作事件识别的准确性差的问题,目前尚未提出有效的解决方法。
发明内容
本发明的主要目的在于提供一种识别操作事件的方法和装置,以解决现有技术中操作事件识别的准确性差的问题。
根据本发明的一个方面,提供了一种识别操作事件的方法,该方法包括:获取目标对象在移动过程中的采样点;根据拟合点列表中预设N个点进行曲线拟合得到拟合曲线;判断采样点与拟合曲线的距离是否大于预设的第一阈值;若采样点与拟合曲线的距离大于第一阈值,则将采样点映射到拟合曲线上,以得到采样点在拟合曲线上的映射点,并将映射点保存至拟合点列表;若采样点与拟合曲线的距离小于或等于第一阈值,则将采样点保存至拟合点列表;以及根据拟合点列表中的点识别目标对象的操作事件。
进一步地,根据预设N个点进行曲线拟合得到拟合曲线的步骤具体为:对拟合点列表中第n+1个点至第N+n个点进行曲线拟合得到拟合曲线,其中,n为自然数。
进一步地,根据预设N个点进行曲线拟合得到拟合曲线的步骤具体为:对拟合点列表中第nm+1个点至第N+nm个点进行曲线拟合得到拟合曲线,其中,n和m均为大于0自然数且0<m≤N。
进一步地,拟合曲线是通过最小二乘法进行曲线拟合得到的曲线。
进一步地,拟合点列表中的点包含三维坐标系中的坐标信息。
进一步地,判断采样点与拟合曲线的距离是否大于预设的第一阈值的步骤具体为:去除拟合曲线和采样点的三维坐标中的相应一个坐标轴的坐标以得到二维平面上的投影点;判断二维平面内采样点的投影点与拟合曲线的投影线的距离是否大于第一阈值。
进一步地,若采样点与拟合曲线的距离大于第一阈值,则将采样点映射到拟合曲线上,以得到采样点在拟合曲线上的映射点具体为:将采样点在二维平面内投影点的二维坐标中对应目标对象移动方向的坐标轴的坐标代入拟合曲线函数,以得到映射点。
根据本发明的一个方面,提供了一种识别操作事件的装置,该装置包括:获取模块,用于获取目标对象在移动过程中的采样点;拟合模块,用于根据拟合点列表中预设N个点进行曲线拟合得到拟合曲线;判断模块,用于判断采样点与拟合曲线的距离是否大于预设的第一阈值;第一处理模块,用于当采样点与拟合曲线的距离大于第一阈值时,将采样点映射到拟合曲线上,以得到采样点在拟合曲线上的映射点,并将映射点保存至拟合点列表;第二处理模块,用于当采样点与拟合曲线的距离小于或等于第一阈值,将采样点保存至拟合点列表;以及识别模块,用于根据拟合点列表中的点识别目标对象的操作事件。
进一步地,拟合模块具体执行的步骤为:对拟合点列表中第n+1个点至第N+n个点进行曲线拟合得到拟合曲线,其中,n为自然数。
进一步地,拟合模块具体执行的步骤为:对拟合点列表中第nm+1个点至第N+nm个点进行曲线拟合得到拟合曲线,其中,n和m均为大于0自然数且0<m≤N。
进一步地,拟合曲线是通过最小二乘法进行曲线拟合得到的曲线。
进一步地,拟合点列表中的点包含三维坐标系中的坐标信息。
进一步地,判断模块包括:坐标处理子模块,用于去除拟合曲线和采样点的三维坐标中的相应一个坐标轴的坐标以得到二维平面上的投影点;判断子模块,用于判断二维平面内采样点的投影点与拟合曲线的投影线的距离是否大于第一阈值。
进一步地,第一处理模块具体执行的步骤为:将采样点在二维平面内投影点的二维坐标中对应目标对象移动方向的坐标轴的坐标代入拟合曲线函数,以得到映射点。
通过本发明,获取目标对象在移动过程中的采样点后,对采样点加以平滑处理,以消除抖动,最终根据处理后的采样点识别目标对象的操作事件。具体地,在采集到采样点之后,根据拟合点列表中预设N个点进行曲线拟合得到拟合曲线,判断采样点与拟合曲线的距离是否大于预设的第一阈值,若采样点与拟合曲线的距离大于第一阈值,则将采样点映射到拟合曲线上,以得到采样点在拟合曲线上的映射点,并将映射点保存至拟合点列表,若采样点与拟合曲线的距离小于或等于第一阈值,则将采样点保存至拟合点列表,根据拟合点列表中的点识别目标对象的操作事件,从而当采集到的采样点与拟合曲线的距离大于第一阈值时,也即目标对象由于人的操作而抖动时,通过拟合曲线上的点来替代抖动的点,消除了抖动,进而增加操作事件识别的准确性。
上述说明仅是本发明技术方案的概述,为了能够更清楚了解本发明的技术手段,而可依照说明书的内容予以实施,并且为了让本发明的上述和其它目的、特征和优点能够更明显易懂,以下特举本发明的具体实施方式。
附图说明
通过阅读下文优选实施方式的详细描述,各种其他的优点和益处对于本领域普通技术人员将变得清楚明了。附图仅用于示出优选实施方式的目的,而并不认为是对本发明的限制。而且在整个附图中,用相同的参考符号表示相同的部件。在附图中:
图1是根据本发明实施例1的识别操作事件的方法的流程图;
图2是根据本发明实施例2的识别操作事件的方法的流程图;
图3是根据本发明实施例5的手势轨迹的生成装置的框图。
具体实施方式
下面结合附图和具体实施方式对本发明做进一步说明。需要指出的是,在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互组合。
本发明提供一种识别操作事件的方法,应用于智能终端,如智能电视等。该智能终端连接一监视器,用于获取目标对象的位置信息,该监视器可以为现有技术中任何能在三维空间识别出三维数据的仪器,如体感摄像头,也可以为空间定位传感器,如红外摄像头,以获取目标对象的位置信息。该监视器和该智能终端可以通过USB连接,也可以安装在智能终端上。该监视器捕获到目标对象后,可通过采集目标对象的图像数据进行识别,分析目标对象的位置信息,并将所述位置信息发送给智能终端;也可将采集的图像数据直接发送给智能终端,由智能终端对图像数据进行识别,获取目标对象的位置信息;还可通过空间定位传感器的红外探测器和激光测距器获取目标对象的位置信息。
本发明获取位置信息亦可采用已有的图像识别算法来对图像中的目标对象进行识别获取,比如采用kinect、PrimeSense以及tof方法,获取目标对象在三维坐标系中的点信息,故在此不再赘述。
在本申请实施例中,描述了对目标对象在移动过程中的采样点进行平滑处理,并根据处理后的点识别目标对象的操作事件的过程,该过程可应用于智能电视的控制当中,由于在识别操作事件时消除了目标对象的抖动,从而能够增加操作事件识别的准确性,增加智能电视控制的可靠性。
需要说明的是,下述各实施例中的步骤顺序并不限定于步骤标号。
实施例1
本发明实施例1提供了一种识别操作事件的方法,该方法主要描述获取目标对象在移动过程中的采样点,对采样点进行平滑处理后加入至拟合点列表,最终根据拟合点列表中的点识别目标对象的操作事件的过程,参见图1,该方法可以包括以下步骤:
步骤S202:获取目标对象在移动过程中的采样点。
具体地,该实施例中的目标对象可以为操作者的手、头部或者其他肢体,也可以为操作者携带的其他器具,如操纵杆、游戏杆、感应手套等。在目标对象的移动过程中,对目标对象所处的位置进行采样,得到目标对象在移动过程中的采样点,通常以一定的时间间隔依次获取采样点,如,每隔0.1s获取一个采样点;该时间间隔可以根据系统需要进行设置,如希望对目标对象的操作事件识别更加准确,则间隔时间设置为较短,否则设置为较长,也可依据监视器、数据处理器的性能而定,例如,当识别器或数据处理器性能强大,速度快时,间隔时间可设定得较短。
步骤S204:根据拟合点列表中预设N个点进行曲线拟合得到拟合曲线。
该拟合点列表中的点包括符合预设条件的采样点,也包括不符合预设条件的采样点通过平滑处理后的映射点。当还未完成首次曲线拟合时,可将采样到的采样点保存至拟合点列表中,直至拟合列表中点的个数达到N时进行第一次曲线拟合;当已存在拟合曲线时,则执行步骤S206至步骤S210,将符合预设条件的采样点保存至拟合点列表,将不符合预设条件的采样点进行平滑处理,处理后得到的映射点保存至拟合点列表。
具体地,当首次获取的采样点数量小于N时,每获取一个采样点便将其保存至拟合点列表,当获取到第N个采样点时,将该第N个采样点保存至拟合点列表并将该N个点进行第一次曲线拟合。第一次曲线拟合后当拟合点列表中增加新点时,可以在每增加一个新点便拟合一次,也即,每增加一个新点,就将拟合点列表中最新的N个点进行一次曲线拟合,具体地,在采集到第N个点时,对第1个点至第N个点进行曲线拟合;在采集到第N+1个点时,对第2个点至第N+1个点进行曲线拟合;在采集到第N+2个点时,对第3个点至第N+2个点进行曲线拟合;……也即,该方法中进行曲线拟合的点为第n+1个点至第N+n个点,n为自然数。
也可以第一次曲线拟合后,当拟合点列表中增加的新点的个数达到预设个数m个点时再进行曲线拟合,当新增的点的个数不足预设个数m个时,则对前m个点不进行曲线拟合。也即,以m为拟合步长,拟合点列表中的新点达到拟合步长时进行曲线拟合,例如,若m大于1,对于拟合点列表中前N个点进行第一次曲线拟合,在拟合点列表中的新点为第N+1个点时,则对拟合点列表中第1个点至第N个点不进行曲线拟合;在拟合点列表中的新点达到第一个拟合步长时,也即在拟合点列表中的新点达到第N+m个点时,对拟合点列表中第m+1个点至第N+m个点进行曲线拟合;在拟合点列表中的新点达到第二个拟合步长时,也即在拟合点列表中的新点到第N+2m个点时,对拟合点列表中第2m+1个点至第N+2m个点进行曲线拟合;在拟合点列表中的新点达到第三个拟合步长时,也即在拟合点列表中的新点达到第N+3m个点时,对拟合点列表中的第3m+1个点至第N+3m个点进行曲线拟合;……也即,在拟合点列表中的新点达到第N+nm个点时,该方法中进行曲线拟合的点为第nm+1个点至第N+nm个点,其中,n和m均为大于0自然数且0<m≤N,nm表示n与m的乘积。
其中,在该步骤S204中进行曲线拟合时,优选采用最小二乘法进行曲线拟合,曲线拟合准确率高。
其中,为了更好的反映目标对象所在的位置,本发明在监视器所在位置建立一三维坐标系,本实施例所获取的采样点包含所述目标对象在该三维坐标系中的坐标信息(x,y,z),该拟合点列表中的点包含所述目标对象在三维坐标系中的坐标信息。
步骤S206:判断采样点与拟合曲线的距离是否大于预设的第一阈值。
针对每个采样点,通过该步骤中判断采样点与最新一条拟合曲线的距离来判断采样点是否为奇异点,若采样点与最新的拟合曲线的距离大于预定的第一阈值,确定该采样点为奇异点,也即该采样点是由于操作者手的抖动或其他原因而产生的抖动点,否则该采样点是正常的采样点。确定该采样点为奇异点时,执行步骤S208,若该采样点为正常点时,执行步骤S210。
具体地,在实现该步骤S206时,首先去除采样点和拟合曲线中各点的三维坐标信息中相应的一个坐标轴的坐标得到采样点和拟合曲线中各点在剩余二维坐标的二维平面内的投影点,然后判断所述二维平面内所述采样点的投影点与所述拟合曲线的投影线的距离是否大于所述第一阈值。
步骤S208:若采样点与拟合曲线的距离大于第一阈值,则将采样点映射到拟合曲线上,以得到采样点在拟合曲线上的映射点,并将映射点保存至拟合点列表。
若采样点为奇异点,通过该步骤将采样点映射到拟合曲线上,得到采样点在拟合曲线上的映射点,利用映射点代替采样点,从而消除了目标对象在移动过程中产生的奇异点,达到平滑目标对象的移动轨迹的目的。
具体地,在S206中去除采样点和拟合曲线中各点的三维坐标信息中相应的一个坐标轴的坐标得到采样点和拟合曲线中各点的二维坐标,即得到采样点和拟合曲线在二维平面内的投影点,将所述采样点的二维坐标对应目标对象移动方向的坐标轴的坐标带入拟合曲线函数以得到所述采样点的映射点,所述映射点包含三维坐标系中的坐标信息,将该映射点的坐标信息保存至拟合点列表中。
步骤S210:若采样点与拟合曲线的距离小于或等于第一阈值,则将采样点保存至拟合点列表。
每采样到一个采样点,经过步骤S206判断后,进一步采用步骤S208或步骤S210处理,在处理之后均会在拟合点列表中增加一个点,因而在拟合点列表中任意一个点为目标对象在移动过程中的采样点或采样点对应的映射点。
步骤S212:根据拟合点列表中的点识别目标对象的操作事件。
在根据拟合点列表中的点识别目标对象的操作事件时,可首先通过拟合点列表中的点生成目标对象的移动轨迹,具体地,可以在采样过程中实时利用拟合点列表中的点生成移动轨迹,也可以在采样完成后利用拟合点列表中的点生成移动轨迹,最终根据生成的移动轨迹来识别目标对象的操作事件。
优选地,可采用如下的方式判断采样是否完成:
若连续第二预设个数相邻采样点之间的距离小于预设的第二阈值,则可确定采样完成,也即一次操作事件完成,此时利用拟合点列表中的点生成移动轨迹;或者若连续预设时间段内相邻采样点之间的距离均小于第二阈值,则可确定采样完成,也即一次操作事件完成,此时利用拟合点列表中的点生成移动轨迹。
采样该实施例提供的识别操作事件的方法,能够消除采样点中的奇异点,也即能够消除操作产生的抖动,能够增加操作事件识别的准确性。
实施例2
本发明实施例2提供了一种识别操作事件的方法,该方法主要描述采集用户手在移动过程中的手点,并根据采集到的手点生成手势轨迹,进而通过识别手势轨迹来识别操作事件的过程,参见图2,该方法可以包括以下步骤:
步骤S102:采集手在移动过程中的手点。
在手开始移动后,以预定的采集频率采集手点,例如每秒采集30个点。采集到的手点可以通过三维笛卡尔坐标(x,y,z)表示,也即,每秒可以得到通过三维笛卡尔坐标(x,y,z)表示的30个手点。
步骤S104:判断手点与当前的拟合曲线的距离是否大于预设的第一阈值。
每采集到一个手点,均会计算该手点与当前的拟合曲线之间的距离,并判断这一距离是否大于预设的第一阈值,在该距离大于第一阈值时执行步骤S106,在该距离小于或等于第一阈值时执行步骤S108。
其中,当前的拟合曲线是对拟合点列表中第一预设个数的点进行曲线拟合得到的曲线,具体可采用现有技术中任意的曲线拟合的方法。例如,按照预设周期,每间隔预定时间或拟合点列表中每增加预定个数的点时,执行曲线拟合步骤的模块或单元对拟合点列表中最新第一预设个数的点通过最小二乘法进行一次曲线拟合,从而对于采集到的每一个手点,最新得到的拟合曲线即为该手点当前的拟合曲线。具体如,拟合点列表中每增加5个点时,执行曲线拟合的模块或单元对拟合点列表中最新10个点便进行一次曲线拟合。
在计算该手点与当前的拟合曲线之间的距离时,需要将手点映射至拟合曲线所在的平面,优选地,该平面可为被控的智能电视屏幕所在的平面。例如,被控的智能电视屏幕所在的平面为竖直平面,采集到的手点通过三维笛卡尔坐标(x,y,z)表示,则首先将手点的三维笛卡尔坐标(x,y,z)的z坐标去除,得到手点的二维坐标(x,y),也即完成将手点映射至竖直平面的过程。
步骤S106:若手点与拟合曲线的距离大于第一阈值,则将手点映射到拟合曲线上,以得到手点在拟合曲线上的映射点,并将映射点加入拟合点列表。
与手非抖动时采集到的手点相比,手在抖动时采集到的手点必然会较大的偏离正常的手势轨迹,因而,若判断的结果是手点与拟合曲线的距离大于第一阈值时,该手点即为手在抖动时采集到的手点,此时将手点映射到拟合曲线上,将手点在拟合曲线上的映射点替代手点而加入至拟合点列表,也即消除了手的抖动。
其中,在实现将手点映射到拟合曲线上时,可将手点的一个坐标,例如手点二维坐标的x坐标,代入拟合曲线的表达式y=f(x)中,得到一个y值,从而手点二维坐标的x坐标与该y值构成该手点对应的映射点的坐标,消除了手的上下抖动。
步骤S108:若手点与拟合曲线的距离小于或等于第一阈值,则将手点加入拟合点列表。
若判断的结果是手点与拟合曲线的距离小于或等于第一阈值时,该手点并非是手在抖动时采集到的手点,此时直接将手点加入至拟合点列表。
步骤S110:利用拟合点列表中的点生成手势轨迹。
在手点采集完成后,将拟合点列表中的点生成曲线,得到手势轨迹。或者,实时根据当前拟合点列表中的点生成部分手势轨迹,并且边生成边显示,用户也可实时看到智能电视接收到的手势。
优选地,每采集到一个手点时,判断该手点与相邻的前一个手点之间的距离,若该距离小于预设的第二阈值,开始计时或计数,当有连续第二预设个数相邻手点之间的距离小于预设的第二阈值,或者,连续预设时间段内相邻手点之间的距离均小于第二阈值,表明手已经停止移动,此时利用拟合点列表中的点生成手势轨迹。
步骤S112:识别手势轨迹以识别手势对应的操作事件。
采用该实施例提供的识别操作事件的方法,在采集到手点后,通过判断手点与当前的拟合曲线的距离是否大于预设的第一阈值来确定该手点是否为手抖动过程中采集的手点,若手点与拟合曲线的距离大于第一阈值,也即该手点是手抖动过程中采集的手点,则通过手点在拟合曲线上的映射点代替手点加入拟合点列表,若手点与拟合曲线的距离小于或等于第一阈值,也即该手点不是手抖动过程中采集的手点,则将手点直接加入拟合点列表,最终通过拟合点列表中的点生成手势轨迹,识别手势轨迹以达到识别操作事件的目的,从而在手抖动时,通过拟合曲线上的点来替代抖动的点,消除了手的抖动,达到平滑手点抖动的目的,使得生成的手势轨迹更加平滑,进而增加手势识别的准确性,可以适应用户不同的使用场景,例如无论沙发距离智能电视的远近,用户都可以方便地通过手势体感操控。
其中,当开始采集到的手点的个数小于第一预设个数时,此时由于手点个数不足以进行曲线拟合,可将采集到的手点直接加入拟合点列表;当已采集到的手点的个数大于或等于第一预设个数时,再对拟合点列表中第一预设个数的点进行曲线拟合。
实施例3
本发明实施例3提供了一种识别操作事件的方法,该方法主要描述采集用户手在移动过程中的手点,得到采样点,并根据采样点生成手势轨迹,进而通过识别手势轨迹来识别操作事件的过程,该方法可以包括以下步骤:
步骤S302:将开始采集到的10个采样点直接放入拟合点列表;
步骤S304:在采集到第11个采样点时,利用拟合点列表中最新的10个点(也即开始采集到的10个采样点)形成第一条拟合曲线;
步骤S306:比较第11个采样点与第一条拟合曲线的距离是否大于阈值,若大于,将第11个采样点映射到第一条拟合曲线上,得到映射点,并将映射点加入拟合点列表,若不大于,直接将第11个采样点加入拟合点列表;
步骤S308:在采集到第12个采样点时,利用拟合点列表中最新的10个点(也即开始采集到的2-10个采样点和第11个采样点或其映射点)形成第二条拟合曲线;
步骤S310:比较第12个采样点与第二条拟合曲线的距离是否大于阈值,若大于,将第12个采样点映射到第二条拟合曲线上,得到映射点,并将映射点加入拟合点列表,若不大于,直接将第12个采样点加入拟合点列表;
步骤S312:以此类推,直到采样完毕,根据拟合点列表中所有的点生成手势轨迹。
步骤S314:识别手势轨迹以识别手势对应的操作事件。
例如预存多个手势轨迹与操作事件的对应关系,在识别手势轨迹时,将生成的手势轨迹与预存的该对应关系进行匹配,匹配到的对应关系所包含的操作事件即为手势轨迹对应的操作事件。
实施例4
本发明实施例4提供了一种识别操作事件的方法,该方法主要描述采集用户手在移动过程中的手点,得到采样点,并根据采样点生成手势轨迹,进而通过识别手势轨迹来识别操作事件的过程,该方法可以包括以下步骤:
步骤S402:将开始采集到的10个采样点直接放入拟合点列表;
步骤S404:在采集到第11个采样点时,利用拟合点列表中最新的10个点(也即开始采集到的10个采样点)形成第一条拟合曲线;
步骤S406:比较第11个采样点与第一条拟合曲线的距离是否大于阈值,若大于,将第11个采样点映射到第一条拟合曲线上,得到映射点,并将映射点加入拟合点列表,若不大于,直接将第11个采样点加入拟合点列表;
步骤S408:在采集到第12个采样点时,暂不进行曲线拟合;
步骤S410:比较第12个采样点与第一条拟合曲线的距离是否大于阈值,若大于,将第12个采样点映射到第一条拟合曲线上,得到映射点,并将映射点加入拟合点列表,若不大于,直接将第12个采样点加入拟合点列表;
步骤S412:在采集到第13至15个采样点时,与第12个采样点的处理方式相同;
步骤S414:在采集到第16个采样点时,用拟合点列表中最新的10个点(也即开始采集到的6-10个采样点和第11至15个采样点本身或映射点)形成第二条拟合曲线;
步骤S416:比较第16个采样点与第二条拟合曲线的距离是否大于阈值,若大于,将第16个采样点映射到第二条拟合曲线上,得到映射点,并将映射点加入拟合点列表,若不大于,直接将第16个采样点加入拟合点列表;
步骤S418:在采集到第17个采样点时,暂不进行曲线拟合;
步骤S420:比较第17个采样点与第二条拟合曲线的距离是否大于阈值,若大于,将第17个采样点映射到第二条拟合曲线上,得到映射点,并将映射点加入拟合点列表,若不大于,直接将第17个采样点加入拟合点列表;
步骤S422:在采集到第18至20个采样点时,与第17个采样点的处理方式相同;
步骤S424:以此类推,直到采样完毕,根据拟合点列表中所有的点生成手势轨迹。
步骤S426:识别手势轨迹以识别手势对应的操作事件。
以上是对本发明所提供的识别操作事件的方法进行的描述,下面将对本发明提供的识别操作事件的装置进行描述,需要说明的是,本发明所提供的任意一种识别操作事件的装置均可执行本发明所提供的识别操作事件的方法。
实施例5
图3是根据本发明实施例的识别操作事件的装置的框图,如图3所示,该识别操作事件的装置包括获取模块10、拟合模块20、判断模块30、第一处理模块40、第二处理模块50和识别模块60。
其中,获取模块10用于获取目标对象在移动过程中的采样点,例如以预定的采集频率采集手在移动过程中的手点,每秒采集30个点。采集到的手点可以通过三维笛卡尔坐标(x,y,z)表示,也即,每秒可以得到通过三维笛卡尔坐标(x,y,z)表示的30个手点。
拟合模块20用于根据拟合点列表中预设N个点进行曲线拟合得到拟合曲线,其中,拟合点列表中的点可以为手点或手点对应的映射点,具体由第一处理模块和第二处理模块增加拟合点列表中的点。拟合模块20在进行曲线拟合时,可采用最小二乘法进行拟合。例如,按照预设周期,每间隔预定时间或拟合点列表中每增加预定个数的点时,拟合模块20对拟合点列表中N个点通过最小二乘法进行一次曲线拟合,从而对于采集到的每一个手点,最新得到的拟合曲线即为该手点当前的拟合曲线。具体如,拟合点列表中每增加5个点时,拟合模块20对拟合点列表中最新10个点便进行一次曲线拟合。
判断模块30用于判断采样点与拟合曲线的距离是否大于预设的第一阈值。每采集到一个采样点,也即手点,判断模块30均会计算该手点与当前的拟合曲线之间的距离,并判断这一距离是否大于预设的第一阈值,在计算该手点与当前的拟合曲线之间的距离时,需要将手点映射至拟合曲线所在的平面,优选地,该平面可为被控的智能电视屏幕所在的平面。例如,被控的智能电视屏幕所在的平面为竖直平面,采集到的手点通过三维笛卡尔坐标(x,y,z)表示,则首先将手点的三维笛卡尔坐标(x,y,z)的z坐标去除,得到手点的二维坐标(x,y),也即完成将手点映射至竖直平面的过程。
若采样点与拟合曲线的距离大于第一阈值,第一处理模块40用于将采样点映射到拟合曲线上,以得到采样点在拟合曲线上的映射点,并将映射点加入拟合点列表。由于与手非抖动时采集到的手点相比,手在抖动时采集到的手点必然会较大的偏离正常的手势轨迹,因而,若判断模块30的结果是手点与拟合曲线的距离大于第一阈值时,则该手点即为手在抖动时采集到的手点,此时将手点映射到拟合曲线上,将手点在拟合曲线上的映射点替代手点而加入至拟合点列表,从而消除了手的抖动。其中,在实现将手点映射到拟合曲线上时,可将手点的一个坐标,例如手点二维坐标的x坐标,代入拟合曲线的表达式y=f(x)中,得到一个y值,从而手点二维坐标的x坐标与该y值构成该手点对应的映射点的坐标,消除了手的上下抖动。
若采样点与拟合曲线的距离小于或等于第一阈值,第二处理模块50将采样点加入拟合点列表,说明手点并非是手在抖动时采集到的手点,此时第二处理模块40直接将手点加入至拟合点列表。
识别模块60用于根据拟合点列表中的点识别目标对象的操作事件。具体可以先将拟合点列表中的点生成目标对象的移动轨迹,例如生成手势轨迹,然后通过识别移动轨迹来识别目标对象的操作事件。
采用该实施例提供的识别操作事件的装置,获取模块10在获取到采样点后,通过判断模块30判断采样点与拟合曲线的距离是否大于预设的第一阈值来确定该采样点是否为需要处理的奇异点,若采样点与拟合曲线的距离大于第一阈值,也即该采样点为需要处理的奇异点,则第一处理模块40通过采样点在拟合曲线上的映射点代替采样点加入拟合点列表,若采样点与拟合曲线的距离小于或等于第一阈值,也即该采样点不为需要处理的奇异点,则第二处理模块50将采样点直接加入拟合点列表,最终识别模块60根据拟合点列表中的点识别目标对象的操作事件,从而当手抖动时,通过拟合曲线上的点来替代抖动的点,消除了手的抖动,达到平滑手点抖动的目的,增加手势识别的准确性,可以适应用户不同的使用场景,例如无论沙发距离智能电视的远近,用户都可以方便地通过手势体感操控。
优选地,拟合模块20具体执行的步骤为:对拟合点列表中第n+1个点至第N+n个点进行曲线拟合得到拟合曲线,其中,n为自然数。也即,每获取到一个采样点,均要进行一次曲线拟合,采用该优选实施例,能够提高识别装置的准确性。
优选地,拟合模块20具体执行的步骤为:对拟合点列表中第nm+1个点至第N+nm个点进行曲线拟合得到拟合曲线,其中,n和m均为大于0自然数且0<m≤N。也即,每隔m个采样点,进行一次曲线拟合,采用该优选实施例,能够提高识别装置的处理效率。
需要说明的是,上述装置实施例属于优选实施例,所涉及的模块并不一定是本申请所必须的。
本说明书中的各个实施例均采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似的部分互相参见即可。对于本申请的装置实施例而言,由于其与方法实施例基本相似,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
以上所述,仅为本发明较佳的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉该技术的人在本发明所揭露的技术范围内,可轻易想到的变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应该以权利要求的保护范围为准。