具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
本发明实施例提供的一种智能终端操控方法可以由智能终端的处理器来执行,参见图1a,图1a示出了一种智能终端的硬件示意图。该智能终端包括一个或多个处理器40(图中仅示出一个)、存储器41、通信接口43、通信总线42以及显示屏44以及拍摄装置(图中未示出),该拍摄装置包括两个摄像头,分别为第一摄像头和第二摄像头。所述第一摄像头和第二摄像头平行设置在所述智能终端。本领域普通技术人员可以理解,图1a所示的结构仅为示意,其并不对智能终端4的结构造成限定。例如,智能终端4还可包括比图1a中所示更多或者更少的组件,或者具有与图1a所示不同的配置。
其中,所述第一摄像头和第二摄像头处于同一水平线上;
所述第一摄像头和第二摄像头,用于在预设时间拍摄至少一张包含用户行为的图像;
通信总线42用于智能终端4中各组成部件之间的通信。通信接口43用于插接外部设备,例如鼠标及键盘等,以接收用户输入的信息。
显示屏44用于显示智能终端识别出的目标手势操作以及目标手势操作对应的操作界面以及操作界面中显示出的音量调节菜单。
存储器41可用于存储软件程序以及模块,数据库,如本发明实施例中的标准姿态库、人脸特征库以及根据所述至少一张三维立体图像中每张三维立体图像中用户的手势和用户姿态,确定每张三维立体图像中用户的操作目标点;在预设时间内,根据所述至少一张三维立体图像中每张三维立体图像中用户的操作目标点确定用户目标操作轨迹;根据所述每张三维立体图像中的用户的操作目标点以及用户的手势确定与之对应的操控策略对应的程序指令/模块。存储器41可包括高速随机存储器,还可包括非易失性存储器,如一个或者多个磁性存储装置、闪存、或者其他非易失性固态存储器。在一些实例中,存储器41可进一步包括相对于处理器40远程设置的存储器,这些远程存储器可以通过网络连接至智能终端4。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。
处理器40通过运行存储在存储器41内的软件程序以及模块,从而执行各种功能应用以及数据处理,例如,处理器40通过调用存储器41中的对智能终端进行操控的应用程序,以实现快速而准确的对智能终端进行操控。
该智能终端可以为平板电脑、笔记本电脑、UMPC(Ultra-mobilePersonal Computer,超级移动个人计算机)、上网本、PDA(PersonalDigital Assistant,个人数字助理)以及智能电视等终端设备。
本发明实施例提供一种智能终端操控方法,如图1b所示,包括:
S101、若确定智能终端的显示界面显示出目标操作界面,则将预设时间内的N个拍摄时刻中每个拍摄时刻,第一摄像头和第二摄像头分别同时拍摄的包含用户行为的图像合成至少一张三维立体图像;所述用户行为至少包含用户手势和用户姿态;
S102、获取所述至少一张三维立体图像中每张三维立体图像中用户的手势和用户姿态;
S103、根据所述至少一张三维立体图像中每张三维立体图像中用户的手势和用户姿态,确定每张三维立体图像中用户的操作目标点;
S104、根据所述至少一张三维立体图像中每张三维立体图像中用户的操作目标点以及所述三维立体图像中用户的手势,从预设数据库中确定与所述每张三维立体图像中用户的操作目标点及所述三维立体图像中用户的手势对应的目标操控策略;其中,所述预设数据库中包括至少一个用户的手势,与每个所述用户的手势对应的至少一个操作目标点以及与每个所述操作目标点对应的操控策略;
S105、根据所述目标操控策略,对所述智能终端进行操控。
本发明实施例提供一种智能终端操控方法,在确定智能终端的显示界面显示出目标操作界面后,通过将第一摄像头和第二摄像头同一时刻分别拍摄的至少一张包含手势操作的图像合成三维立体图像,并基于所述至少一张三维立体图像中每张三维立体图像中用户的手势和用户姿态确定每张三维立体图像中用户的操作目标点,这样基于三维立体图像可以提高智能终端操控的精度,同时基于每张三维立体图像中用户的操作目标点以及所述三维立体图像中用户的手势,从预设数据库中确定与所述每张三维立体图像中用户的操作目标点及所述三维立体图像中用户的手势对应的目标操控策略,对智能终端进行操控,由于每个用户的手势对应多个操作目标点,每个操作目标点均具有对应的操控策略,使得对于同一个手势,当操作目标点不相同时,可以对应于不同的操控策略,这样可以确保对智能终端操控的实时性。本发明实施例仅基于第一摄像头和第二摄像头,即可高精度的识别用户的手势操作,从而操控智能电视,提高用户体验。
本发明实施例的一种智能终端操控方法的执行主体为终端的处理器,该智能终端可以为电视、电脑等,本发明实施例对此不作限定,该第一摄像头和第二摄像头用于获取手势操作的图像,该第一摄像头和第二摄像头可以是在终端上设置的摄像头。
本发明实施例中,该第一摄像头和第二摄像头感应用户是否在终端前进行手势操作,当第一摄像头和第二摄像头感应到用户进行手势操作时,获取预设时间内用户进行手势操作至少一张图像,另外,也可通过用户手动输入手势操作控制终端的开始信息,如用户按下在终端遥控器中设置启动手势识别技术的启动按键,再获取到所述启动按键触发的启动指令后,处理器控制所述第一摄像头和第二摄像头获取用户进行手势操作的至少一张图像。
其中,预设时间是指用户完成一个手势操作大概所需要的时间,可以是整个手势动作全部完成的时间,也可以是手势动作的主要部分的完成时间等,预设时间可以提前设定,如可将所述预设时间设置为200ms-500ms;具体可通过设置在所述处理器中的定时器以实现。在200ms-500ms的时间段内,将获取到的含手势操作的图像按获取的先后顺序缓存在终端的存储器中,在需要识别的时候,通过处理器从存储器中获取,由于第一摄像头和第二摄像头在1s内可以拍摄10~60个图像帧,优选的,是25~30个图像帧,由于第一摄像头和第二摄像头拍摄的手势操作是一个动态过程,故每一帧图像帧是有差异的,故在选择合成三维立体图像时,通过选取第一摄像头和第二摄像头在同一时刻拍摄的一帧图像,这样可以避免形成的三维立体图像与实际用户手势之间的差异,提高了识别精确性。
其中,根据摄像头的拍摄性能,在预设时间内总共包含P个拍摄时刻,每个拍摄时刻第一摄像头和第二摄像头都拍摄有照片,可以选取P个拍摄时刻所述第一摄像头和第二摄像头分别同时拍摄的包含手势操作的图像合成P张三维立体图像,也可以选取N个拍摄时刻拍摄的合成N张三维立体图像,其中P>N;
图像即为摄像头拍摄的一张图片,图像帧则为固定时间内连续拍摄的一系列图片,图像帧序列由一系列图像组成。
当然,在选择合成三维立体图像时,可以选择第一摄像头连续拍摄的几张图像以及第二摄像头连续拍摄的几张图像中每一张图像均合成三维立体图像(其中,第二摄像头拍摄的每张图像的时间均与第一摄像头中在同一时刻拍摄的照片对应)。
其中,对于将第一摄像头和第二摄像头在同一时刻分别拍摄的至少一张包含手势操作的图像合成三维立体图像的方式,本发明实施例对此不进行限定,由于对于第一摄像头和第二摄像头在预设时间内拍摄的每张图像合成三维立体图像的方式和原理均相同,本发明实施例仅以第一图像和第二图像为例进行说明,其中,第一图像和第二图像分别为在预设时间内由第一摄像头和第一摄像头在同一时刻分别拍摄的图像中的至少一张,并不具有任何指示性含义。
其中,本发明实施例对所述用户行为不进行限定,用于可以根据自己的习惯进行设置。
其中,本发明实施例中预设数据库中包括至少一个用户的手势,与每个所述用户的手势对应的至少一个操作目标点以及与每个所述操作目标点对应的操控策略可以为智能终端出厂时厂商存储在智能终端标准姿态特征库中的操作轨迹,也可以是用户自己根据自己的习惯在预设数据库中利用第一摄像头或者第二摄像头基于特定场景下的用户行为添加的图片。
其中,本发明实施例对所述预设手势和操作目标点的坐标以及操控策略不进行限定,示例性的,如表1所示:
当一张三维立体图像中的用户的手势为v手势时,若该用户的操作目标点为(x1,y1),则智能终端采用的操控策略为增加终端的亮度;当另一张三维立体图像中用户操作目标点为(x1,y1),但此时,该用户的手势为握拳,则智能终端采用的操控策略为音量增加,这样可以当用户在同一个操作目标点做不同的用户手势时,对智能终端进行操控。
其中,对于将第一摄像头和第二摄像头在同一时刻分别拍摄的至少一张包含用户行为的图像合成三维立体图像的方式,本发明实施例对此不进行限定,由于对于第一摄像头和第二摄像头在预设时间内拍摄的每张图像合成三维立体图像的方式和原理均相同,本发明实施例仅以第一图像和第二图像为例进行说明,其中,第一图像和第二图像分别为在预设时间内由第一摄像头和第一摄像头在同一时刻分别拍摄的图像中的至少一张,并不具有任何指示性含义。
示例性的,如图2所示,步骤S101可以通过以下方式实现:
S1011、获取所述第一图像中的每个像素点;
其中,对于获取第一图像的每个像素点的具体方式,本发明实施例在此不再赘述,可以通过现有技术来实现,例如,粒子滤波。
获取到第一图像的每个像素点以后,可以以所述第一图像和第二图像设置坐标系,则第一图像和第二图像上的每个像素点均可以用坐标的形式表示,当然还可以存在其他方式用以唯一标记第一图像和第二图像上相应的像素点,本发明实施例在此不再赘述。
需要说明的是,在获取三维立体图像的时候,还可以先提取所述第一图像的用户行为轮廓,在提取到用户行为轮廓以后,获取所述第一图像的用户行为轮廓中的每个像素点,基于每个所述用户行为轮廓中的每个像素点执行步骤S1012,这样可以进一步提高识别精度,避免在三维立体图像中引入背景或者干扰。
S1012、以所述第一图像的每个像素点为中心像素点建立预设窗口;其中,所述预设窗口包含按照预设距离,以所述中心像素点为中心的M个像素点;
为了清楚的介绍像素点与预设窗口之间的关系,如图3a所示,图3a为本发明实施例提供的一种以第一图像中任意一个像素点为中心像素点建立预设窗口的示意图,其预设窗口可以通过以所述中心像素点为中心,在所述中心像素点四周(上、下、左、由)各延长L个长度单位所包含的区域,即所述预设距离为2L,则上述Q个像素点即为以所述中心像素点四周各延长L个长度单位所包含的区域内的所有像素点;本发明实施例对所述L的具体大小不进行限定,可以根据实际需要达到的精度进行设定。
S1013、获取所述预设窗口的像素值;
由于预设窗口内包含Q个像素点,故所述预设窗口的像素值为Q个像素点像素值的总和,对于计算每个像素值的具体方式本发明实施例在此不再赘述,例如,若所述预设窗口为以任意一个像素点为中心像素点向左向右各一个像素点,则该预设窗口内包含5个像素点,该预设窗口的像素值为5个像素点像素值的总和。
S1014、根据所述预设窗口的像素值,从所述第二图像中提取与所述预设窗口的像素值差异值最小的区域为目标区域。
由于对于第一图像中每个像素点,以该像素点为中心像素点建立预设窗口,并根据预设窗口的像素值从所述第二图像中查到的目标区域的方式和原理均相同,故本发明实施例仅以第一像素点为中心像素点为例进行说明,该第一像素点为第二图像中的任意一个像素点,并不具有指示性含义。
示例性的,如图4所示,步骤S1014可以通过以下方式实现:
S10141、确定所述第一像素点在所述第一图像中的坐标,并以所述第一像素点为中心像素点建立预设窗口。
如图3a所示,该图3a中黑色实心方框为以第一像素点为中心像素点,在黑色实心方框外的边框(即图3a中指示的预设窗口)为以该第一像素点为中心像素点建立的预设窗口,其中,该预设窗口的大小可以根据实际需要达到的精度进行设定,本发明实施例在此不再赘述。
S10142、在保持所述第一像素点纵坐标不变的情况下,从所述第二图像中选取每个候选区域,所述候选区域的窗口距离与所述第一预设窗口大小相同,且所述候选区域为以所述第二图像中任意一个像素点为中心像素点建立的,所述候选区域内的每个像素点的纵坐标与所述第一像素点的纵坐标相同;
其中,所述候选区域的窗口距离是指候选区域内任意一个中心像素点,按照预设距离2L,以所述中心像素点为中心,在所述中心像素点四周(上、下、左、由)各延长L个长度单位所包含的区域。
S10143、计算每个所述候选区域的像素值,所述像素值是指候选区域内所有像素点的灰度值之和;
S10144、将所述候选区域的像素值与所述预设窗口的像素值的差异值最小的候选区域确定为目标区域。
其中,当获取到第一像素点的坐标时,可以将所述第一像素点从第二图像指向第一图像的方向,保持纵坐标不变的情况下,将第一像素点遍历所述第二图像中与所述第一像素点纵坐标相同,但横坐标不同的任何一个像素点,即将第一像素点保持纵坐标不变,将第一像素点从横轴沿第二图像指向第一图像的方向移动,并可以通过SAD(Sum of Absolute Difference)或SSD(Sumof Squared Difference)算法matching方式从第二图像中提取与所述预设窗口的像素值差异值最小的区域为目标区域。
示例性的,如图3b所示,图3b中示例出将第一像素点保持纵坐标不变时,从横轴沿第二图像指向第一图像的方向,将第一像素点移动时,第一像素点的像素值与第二图像中在与第一像素点纵坐标相同的每个像素点为中心像素点构成的预设窗口的像素值之间的差异值,由图3c可知,在d点所述第二图像中的预设窗口的像素值与第一像素点的像素值之间的差异值最小,故d点对应的预设窗口则为本发明实施例中的目标区域。
当然,为了减少计算量,在获取到第一像素点的坐标以后,可以从所述二图像中与所述第一像素点纵坐标相同,大于等于横坐标的候选区域中选取目标区域。
当然,本发明实施例也可以基于第二图像,在第一图像中选取与第二图像中任意一个像素点构建的预设窗口的像素值差异最小的区域为目标区域,此时,应按照第一图像指向第二图像的方向,保持纵坐标不变的情况下,将第二图像中的每个像素点构成的预设窗口遍历所述第一图像的候选区域,以获取目标区域。
S1015、确定每个所述目标区域的中心像素点;
S1016、将每个所述第一图像的中心像素点与所述目标区域的中心像素点进行匹配,获取与所述第一图像对应的三维立体图像。
优选的,为了提高识别精度,需要提取出所述第一图像中的用户行为轮廓,在此用户行为轮廓的基础上,获取每一个像素点的像素信息,并从三维立体图像中获取与之对应的像素点距离信息,由于用户的用户行为应处于同一平面,因而拥有相近的像素点距离信息,故在识别之前,可以对三维立体图像中用户行为对应的像素点距离进行均值操作,以便用户行为轮廓内的用户行为与背景等干扰信息进行分离,从而高精度的提取出用户的用户行为。
需要说明的是,本发明实施例中每个三维立体图像的大小均和与合成所述三维立体图像的二维图像的大小相同,所述第一图像中的每个像素点对应的最小差异值则为在三维立体图像各像素值。
其中,本发明实施例对所述步骤S102中确定智能终端的显示界面显示出目标操作界面的方式不进行限定,可以是用户通过遥控设备将智能终端得显示界面调整至目标操作界面,例如,当用户需要对智能终端的音量进行调整时,用户通过遥控器将智能终端的音量操作界面打开,当用户需要对智能终端的节目进行调整时,用户通过遥控器将智能终端的界面菜单界面打开等等。当然为了提高用户与智能终端之间的交互,本发明实施例还包括处理器将第一摄像头和第二摄像头分别同时拍摄的包含用户行为的图像合成至少一张三维立体图像,然后通过该至少一张三维立体图像识别出用户的手势操作,并在智能终端的显示屏上显示出于该手势操作对应的目标操作界面。
其中,本发明实施例对所述从每张三维立体图像中获取用户手势基点和用户姿态的方式不进行限定,可以通过现有技术中采用的识别技术进行识别,只要能获取到本发明实施例中的需要的手势基点和用户姿态即可。
示例性的,步骤S102可以通过以下方式实现:
S1021、获取所述至少一张三维立体图像中每张三维立体图像中的手势轮廓中M个像素点对应的三维坐标信息以及用户身体轮廓中Y个像素点的对应的三维坐标信息;
其中,M和Y均为大于1的正整数,本发明实施例对M和Y的具体值不进行限定,只要获取该M和Y的个像素点之后使得智能终端可以识别出该用户的手势轮廓和用户身体轮廓即可。
S1022、根据每张三维立体图像中包含的手势轮廓的M个像素点对应的三维坐标信息,将预设数据库中与所述手势轮廓对应的标准手势确定为用户的手势;
其中,所述预设数据库中包括至少一个手势轮廓以及与每个手势轮廓对应的三维坐标信息;
可以通过M个像素点对应的三维坐标信息与预设数据库中每个手势轮廓对应的三维坐标信息进行匹配,将该M个像素点对应的三维坐标信息与预设数据库中的至少一个手势轮廓对应的三维坐标信息之间的差异最小的手势轮廓确定为用户的手势。
S1023、根据每张三维立体图像中包含的用户姿态的Y个像素点的对应的三维坐标信息,将预设姿态特征库中与所述用户姿态对应的标准姿态确定为所述用户姿态。
具体判断过程类似于步骤S1022,本发明实施例在此不再赘述。
本发明实施例对步骤S103的具体实现方式不进行限定,仅是示例性的,步骤S103具体可以通过以下步骤实现:
S1031A、根据所述至少一张三维立体图像中每张三维立体图像包含的用户的手势和用户姿态,确定所述用户的手势基点以及用户姿态包括的至少一个关键点;
其中,本发明实施例中的关键点指代头部,眼部(左眼或者右眼),肘部,肩部。
其中,不同的手势对应不同的手势基点,本发明实施例对此不进行限定,可以根据需要进行设置。例如,当用户手势为握拳时,手势基点指代拳头的重心,当手势为如图5a所示的手势时,即只伸出食指时,手势基点在指尖。
S1032A、根据所述用户的手势基点以及用户姿态包括的至少一个关键点以及智能终端的显示屏所在的平面的三维空间内的平面方程,确定每张三维立体图像用户操作目标点。
需要说明的是,用户在操作智能终端时,首先人眼和手指的连线会与智能终端显示屏的平面有交点,这个交点作为判断的起始点,即基准交点,由于不同的用户姿态,对应用户不同的期望操作位置,比如当用户手指指向智能终端显示屏时,手肘和手指的连线与智能终端显示屏所在的平面方程相交的基准交点,更接近用户期待的位置,但是为了提高用户基准交点的精确坐标,仅通过手肘和手指的连线确定基准交点可能会存在误差,因此,还要结合人眼的相对位置因素,结合具体的用户姿态来确定每个关键点的计算权重。因此为了提高本发明实施例中用户操控的精度,本发明实施例中从用户姿态中至少确定两个关键点。
其中,每个关键点对应一个权重,本发明实施例对所述每个关键点对应的权重值不进行限定,具体可以根据用户姿态进行确定。
仅是示例性的,由于根据用户姿态中的每个关键点确定基准交点和参考交点的方式和原理均相同,本发明实施例仅以第一关键点和第二关键点为例进行说明。
一方面,步骤S1032A具体可以通过以下方式实现:
S1032A1、获取每张三维立体图像中用户的手势基点与第一关键点之间的连线和所述平面方程的基准交点,以及用户的手势基点与第二关键点之间的连线和所述平面方程的参考交点;
S1032A2、根据每个所述关键点对应的权重、所述基准交点的坐标以及所述参考交点的坐标,对所述基准交点的坐标进行调整;
S1032A3、将调整后的所述基准交点的坐标确定为用户操作目标点。
如图5a所示,图5a显示出了从一张三维立体图像中获取用户手势和姿态,图5b为通过上述方法确定的手势基点以及两个关键点。在图5b中仅以头部和肘部为关键点。图5c展示出了以图5b确定的手势基点以及两个关键点确定的用户操作目标点。
进一步可选的,本发明实施例还可以根据预设时间内的每张三维立体图像对应的用户的操作目标点确定用户目标操作轨迹,本发明实施例对用户目标操作轨迹具体不进行限定,可以根据用户在预设时间内的至少一张三维立体图像中每张三维立体图像中用户的操作目标点确定用户目标操作轨迹,该用户目标操作轨迹可以通过将每个三维立体图像中的用户操作目标点的坐标连起来构成用户目标操作轨迹。
该用户目标操作轨迹可以为拖拽、按下、抬起、抓取、指向、移动(向左移动,向右移动、向上移动、向下移动)、释放、旋转、多点操控等等,当然在标准姿态特征库中上述拖拽、按下、抬起、抓取、指向、移动、释放、旋转、多点操控均对应一个相应的预设操控策略。
本发明实施例对所述预设操控策略不进行限定,示例性的,本发明实施例仅以目标操作界面为调节音量为例进行说明,并不具有任何指示含义,当用户目标操作轨迹为向左移动时,该预设操作策略为实现智能终端的音量增加,当所述用户目标操作轨迹为向右移动时,该预设操作策略为实现智能终端的音量减少。
需要说明的时,在预设时间内,根据所述至少一张三维立体图像中每张三维立体图像中用户的操作目标点确定用户目标操作轨迹时,可以基于所述预设时间起始到终止时间内,每个时刻合成的三维立体图像,也可以在预设时间起始到终止时间内按照预设间隔选取一些三维立体图像,本发明实施例对此不进行限定。
当然,本发明实施例中的预设操控策略还可以为输入法,即当目标操作界面为书写板时,处理器根据在预设时间内,根据所述至少一张三维立体图像中每张三维立体图像中用户的操作目标点确定用户目标操作轨迹,并根据用户目标操作轨迹从标准姿态特征库中选择与用户目标操作轨迹匹配或者相近的汉字,本发明实施例对处理器如何识别用户操作轨迹为汉字的方式不进行限定,可以参考现有技术中的方法。
进一步可选的,步骤S105可以通过以下方式实现:
S1051、将所述与所述用户目标操作轨迹对应的预设操控策略生成第一控制消息,所述第一控制消息用于指示根据预设操控策略对所述智能终端进行操控;
其中,本发明实施例对所述预设操控策略不进行限定,智能终端中所有可以通过用户操控的方式都可以作为本发明实施例中的预设操控策略存储在标识姿态特征库中,例如,对音量的操控策略、对智能终端节目的操控策略,对智能终端颜色的操控策略等等。
本发明实施例对所述第一控制消息的具体形式不进行限定,该第一控制消息中包含与所述用户目标操作轨迹对应的预设操控策略。
S1052、将所述第一控制消息向与所述预设操控策略对应的控制设备发送,以使得所述控制设备根据所述第一控制消息对所述智能终端进行操控。
其中,与所述预设操控策略对应的控制设备本发明实施例不进行限定,当所述操控策略为调节音量时,该控制设备可以为音量调节装置,当所述操控策略为调节节目时,该控制设备可以为节目调节装置。
当然,当确定用户目标操作轨迹之后,处理器还可以根据所述用户目标操作轨迹从标准姿态特征库中选取与所述用户目标操作轨迹对应的预设操控策略,并将该预设操控策略生成第一控制消息,并将该第一控制消息发送给智能终端的相应的控制设备,该第一控制消息用于指示所述控制设备实现对所述智能终端的控制,示例性的,当所述用户目标操作轨迹为抬起时,该用户目标操作轨迹抬起对应的预设操控策略为音量减,则该第一控制消息用于指示智能终端的音量控制设备,将所述智能终端的音量进行递减。
其中,本发明实施例对确定所述智能终端的操作界面是否显示出目标操作界面的方式不进行限定,例如,当用户通过智能终端的遥控器打开智能终端的目标操作界面时,当智能终端的处理器接收到该用户输入的打开智能终端目标操作界面的指令时,将该目标操作界面显示在该智能终端的显示界面时,即确定所述智能终端的操作界面显示出目标操作界面,也可以是用户通过智能终端的手势识别功能打开智能终端的目标操作界面,当智能终端的处理器获取到用户手势识别的目标手势操作后,将该目标手势操作对应的目标操作界面显示在终端的显示界面时,即确定所述智能终端的操作界面显示出目标操作界面,当然也可以是其他方式打开智能终端的目标操作界面。
为了提高用户对智能终端操控的便利性,本发明实施例以户通过智能终端的手势识别打开智能终端的目标操作界面为例进行说明。
仅是示例性的,本发明实施例在步骤S101之前,还包括:
S106、在第一预设时间内,将预设时间内的N个拍摄时刻中每个拍摄时刻,第一摄像头和第二摄像头分别同时拍摄的包含第一用户行为的图像合成至少一张三维立体图像;所述第一用户行为至少包含用户手势操作;
S107、根据第一图像、与所述第一图像对应的三维立体图像以及标准手势特征库中的手势变化信息以及像素点距离信息,从所述标准手势特征库中确定目标手势操作;其中,所述第一图像为T个拍摄时刻所述第一摄像头拍摄的任意一张图像;
S108、根据所述目标手势操作与用户手势操作库中手势操作与操作界面之间的对应关系,确定目标操作界面;
S109、将所述目标操作界面显示在所述智能终端的显示界面。
其中,步骤S106具体可以通过以下方式实现:
S1061、提取所述第一图像中的用户手势操作轮廓及所述用户手势操作轮廓中每个像素的像素点信息;
S1062、根据所述用户手势操作轮廓中每个像素的像素点信息,在与所述第一图像对应的三维立体图像上,获取与所述用户手势操作轮廓中每个像素的像素点信息对应的像素点距离信息;
S1063、在预设时间内,将T个拍摄时刻所述第一摄像头和所述第二摄像头分别同时拍摄的包含用户手势操作的图像合成的至少一张三维立体图像的手势变化信息和像素点距离信息与标准手势特征库中的手势变化信息以及像素点距离信息进行匹配,选取目标手势动作。
进一步的,所述提取第一图像中的手势操作轮廓,包括:
S10611、采用肤色分割算法对第一图像进行肤色分割;
S10612、对进行肤色分割后的第一图像进行边缘检测;
其中,对于边缘检测的方式有多种,本发明实施例在此不再赘述示例性的,可以通过边缘检测算法来实现,本发明实施例在此不再赘述。
S10613、提取经过边缘检测后的第一图像的手势操作轮廓,获得所述第一图像中的手势操作轮廓。
对于手势操作轮廓的方式有多种,本发明实施例在此不再赘述,示例性的,该方法可以通过采用八邻域搜索法来实现。
可选的,S1063可以通过以下方式实现:
S10631A、在预设时间内,逐帧分析所述第一摄像头N个拍摄时刻中相邻时刻拍摄的图像的手势变化信息、与所述N个拍摄时刻所述第一摄像头和所述第二摄像头分别同时拍摄的包含手势操作的图像合成的N个三维立体图像的手势变化信息及像素点距离信息;
S10632A、将所述N个拍摄时刻中相邻时刻合成的三维立体图像的手势变化信息及像素点距离信息与标准手势特征库中手势变化信息以及用户手势的像素点距离信息进行比较;
S10633A、从所述标准手势特征库中选取与所述相邻的三维立体图像的手势变化信息及像素点距离信息差异最小的为目标手势动作。
如图6a所示,经过步骤S1061提取后的某一时刻第一摄像头拍摄的包含手势操作图像的手势操作轮廓,在进行手势操作轮廓提取后从该二维图像对应的三维立体图像上提取相应的手势操作如图6b所示,并根据预设时间内的手势变化信息以及像素点距离信息通过跟踪算法获取到目标手势,如图6c所示。
例如,该标准手势特征库中可以包含如下手势:如表2所示
预设手势 |
对应的操作指令 |
手势变化信息 |
像素点距离信息 |
握拳 |
关机 |
X1 |
Y1 |
巴掌 |
音量增 |
X2 |
Y2 |
v手势 |
音量减 |
X3 |
Y3 |
向侧曲腕 |
节目增加 |
X4 |
Y4 |
向下曲腕 |
节目减小 |
X5 |
Y5 |
大拇指 |
菜单 |
X6 |
Y6 |
当然,表2所示的每种手势对应的操作指令可以由用户通过终端的处理器进行修改。
具体在识别用户的手势操作时,可根据获取到的多个相邻的三维立体图像之间的手势变化信息以及像素点距离信息通过跟踪算法,例如,联合概率数据关联滤波器(JPDAF)、多假设跟踪(MHT)算法、动态多位分配算法等与标准手势特征库中的手势变化信息以及像素点距离信息进行匹配,以识别当前的用户手势操作,并执行与所述手势操作对应的预设手势相应的操作指令。当手势操作与标准手势特征库中一致时,则可产生相应的控制信号。例如,系统识别出用户的用户手势操作为握拳,该预设握拳手势在标准手势特征库中对应的指令为关机,则系统识别后,根据所述手势操作执行关机键。
进一步可选的,所述智能终端还包括人脸特征库,所述人脸特征库包括至少一张图片以及与所述每张图片对应的至少一张用户操作轨迹,所述图片中包含人脸信息;
另一方面,所述步骤S1063,包括:
S10631B、根据所述每个三维立体图像包含的人体轮廓信息从所述人脸特征库中获取目标图片;所述目标图片为所述人脸特征库中包含的每个图片所包含的人脸信息与每个三维立体图像包含的人体轮廓信息匹配的图片;
S10632B、根据所述目标图片从所述标准手势特征库中获取与所述目标图片对应的至少一张用户手势以及每张所述用户手势对应的手势变化信息以及像素点距离信息;
S10633B、将所述至少一张三维立体图像中相邻时刻合成的三维立体图像的手势变化信息及像素点距离信息与所述标准手势特征库中第一手势操作对应的手势变化信息以及像素点距离信息进行比较;
S10634B、从所述标准手势特征库中选取与所述相邻的三维立体图像的手势变化信息及像素点距离信息差异最小的为目标手势动作。
如图7所示,本发明实施例提供一种智能终端操控装置,包括:
判断单元701,用于判断智能终端的显示界面是否显示出目标操作界面
合成单元702,用于在所述判断单元确定智能终端的显示界面显示出目标操作界面,则将预设时间内的N个拍摄时刻中每个拍摄时刻,第一摄像头和第二摄像头分别同时拍摄的包含用户行为的图像合成至少一张三维立体图像;所述用户行为至少包含用户手势操作和用户姿态;
获取单元703,用于获取预设时间内所述至少一张三维立体图像中每张三维立体图像中用户的手势和用户姿态;
第一确定单元704,用于根据所述至少一张三维立体图像中每张三维立体图像中用户的手势和用户姿态,确定每张三维立体图像中用户的操作目标点;
第二确定单元705,用于根据所述至少一张三维立体图像中每张三维立体图像中用户的操作目标点以及所述每张三维立体图像中用户的手势,确定与所述每张三维立体图像中用户的操作目标点对应的目标操控策略;
操控单元706,用于根据所述每张三维立体图像中用户的操作目标点对应的目标操控策略,对所述智能终端进行操控.
本发明实施例提供一种智能终端操控装置,在确定智能终端的显示界面显示出目标操作界面后,通过将第一摄像头和第二摄像头同一时刻分别拍摄的至少一张包含手势操作的图像合成三维立体图像,并基于所述至少一张三维立体图像中每张三维立体图像中用户的手势和用户姿态确定每张三维立体图像中用户的操作目标点,这样基于三维立体图像可以提高智能终端操控的精度,同时基于每张三维立体图像中用户的操作目标点以及所述三维立体图像中用户的手势,从预设数据库中确定与所述每张三维立体图像中用户的操作目标点及所述三维立体图像中用户的手势对应的目标操控策略,对智能终端进行操控,由于每个用户的手势对应多个操作目标点,每个操作目标点均具有对应的操控策略,使得对于同一个手势,当操作目标点不相同时,可以对应于不同的操控策略,这样可以确保对智能终端操控的实时性。本发明实施例仅基于第一摄像头和第二摄像头,即可高精度的识别用户的手势操作,从而操控智能电视,提高用户体验。
可选的,所述获取单元703,包括:
获取模块,用于获取所述至少一张三维立体图像中每张三维立体图像中的手势轮廓以及用户身体轮廓中M个像素点的对应的三维坐标信息;其中,M大于等于1;
第一确定模块,用于根据每张三维立体图像中包含的手势轮廓,将预设数据库中与所述手势轮廓对应的标准手势确定为用户的手势;
第二确定模块,用于根据每张三维立体图像中包含的用户姿态,将预设姿态特征库中与所述用户姿态对应的标准姿态确定为所述用户姿态。
可选的,所述第一确定单元704,包括:
第一确定模块,用于根据所述至少一张三维立体图像中每张三维立体图像包含的用户的手势和用户姿态,确定所述用户的手势基点以及用户姿态中的至少一个关键点;
第二确定模块,用于根据所述用户的手势基点以及用户姿态中的至少一个关键点以及智能终端的显示屏所在的平面的三维空间内的平面方程,确定每张三维立体图像用户操作目标点。
可选的,所述第二确定模块,包括:
获取子模块,用于获取每张三维立体图像中用户的手势基点与第一关键点之间的连线和所述平面方程的基准交点,以及用户的手势基点与第二关键点之间的连线和所述平面方程的参考交点;
第一确定子模块,用于根据每个所述关键点对应的权重、所述基准交点的坐标以及所述参考交点的坐标,对所述基准交点坐标进行调整;
第二确定子模块,用于将调整后的所述基准交点的坐标确定为用户操作目标点。
可选的,所述装置还包括:所述合成单元,还用于在第一预设时间内,将预设时间内的N个拍摄时刻中每个拍摄时刻,第一摄像头和第二摄像头分别同时拍摄的包含第一用户行为的图像合成至少一张三维立体图像;所述第一用户行为至少包含用户手势操作;
第三确定单元,用于根据第一图像、与所述第一图像对应的三维立体图像以及标准手势特征库中的手势变化信息以及像素点距离信息,从所述标准手势特征库中确定目标手势操作;其中,所述第一图像为T个拍摄时刻所述第一摄像头拍摄的任意一张图像;
第四确定单元,用于根据所述目标手势操作与用户手势操作库中手势操作与操作界面之间的对应关系,确定目标操作界面;
显示单元,用于将所述目标操作界面显示在所述智能终端的显示界面。
所述第三确定单元,包括:
提取模块,用于提取所述第一图像中的用户手势操作轮廓及所述用户手势操作轮廓中每个像素的像素点信息;
第二获取模块,用于根据所述用户手势操作轮廓中每个像素的像素点信息,在与所述第一图像对应的三维立体图像上,获取与所述用户手势操作轮廓中每个像素的像素点信息对应的像素点距离信息;
选取模块,用于在预设时间内,将N个拍摄时刻所述第一摄像头和所述第二摄像头分别同时拍摄的包含用户手势操作的图像合成的至少一张三维立体图像的手势变化信息和像素点距离信息与标准手势特征库中的手势变化信息以及像素点距离信息进行匹配,选取目标手势动作。
可选的,所述智能终端还包括人脸特征库,所述人脸特征库包括至少一张图片以及与所述每张图片对应的至少一张用户手势操作,所述图片中包含人脸信息;
所述第三确定单元,包括:
第三获取模块,用于根据所述每个三维立体图像包含的人体轮廓信息从所述人脸特征库中获取目标图片;所述目标图片为所述人脸特征库中包含的每个图片所包含的人脸信息与每个三维立体图像包含的人体轮廓信息匹配的图片;
第四获取模块,用于根据所述目标图片从所述标准手势特征库中获取与所述目标图片对应的至少一张用户手势以及每张所述用户手势对应的手势变化信息以及像素点距离信息;
比较模块,用于将所述至少一张三维立体图像中相邻时刻合成的三维立体图像的手势变化信息及像素点距离信息与所述标准手势特征库中第一手势操作对应的手势变化信息以及像素点距离信息进行比较;
确定模块,用于从所述标准手势特征库中选取与所述相邻的三维立体图像的手势变化信息及像素点距离信息差异最小的为目标手势动作。
在本申请所提供的几个实施例中,应该理解到,所揭露的系统,装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理包括,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用硬件加软件功能单元的形式实现。
上述以软件功能单元的形式实现的集成的单元,可以存储在一个计算机可读取存储介质中。上述软件功能单元存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述方法的部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(Read-Only Memory,简称ROM)、随机存取存储器(Random Access Memory,简称RAM)、磁碟或者光盘等各种可以存储程序代码的介质。
最后应说明的是:以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。