一种基于徒手和单目摄像头实现人机交互的方法和装置制造方法

文档序号:6508142阅读:283来源:国知局
一种基于徒手和单目摄像头实现人机交互的方法和装置制造方法
【专利摘要】本发明公开了一种基于徒手和单目摄像头实现人机交互的方法和装置,以较为简单的硬件设备,在各种应用场景中实现复杂指令的输出。所述方法包括:采集徒手图像,所述徒手图像包括用户单手的徒手图像或双手的徒手图像;检测所述徒手图像中不同形状的手的尺寸和/或位置以及所述尺寸的变化和/或所述位置的变化;根据所述尺寸的变化和/或所述位置的变化,生成相应的操作指令输出至终端,以使所述终端执行与所述操作指令相应的操作。本发明实施例提供的方法需要的设备简单,成本低廉,稳定性好,徒手即可实现对鼠标的基本操作以及对触摸屏的基本操作,因此执行效率也较高。
【专利说明】一种基于徒手和单目摄像头实现人机交互的方法和装置
【技术领域】
[0001]本发明涉及人工智能领域,具体涉及一种基于徒手和单目摄像头实现人机交互的方法和装置。
【背景技术】
[0002]目前在世界范围内人机交互技术主要集中在通过传统的硬件设备、语音识别和视觉交互技术。传统的硬件设备,例如触摸屏、鼠标和键盘等;语音识别技术,即通过对人发出的语音进行识别,形成操作指令,例如Apple公司的Siri和讯飞公司的语点等;视觉交互技术主要研究通过计算机视觉和人工智能技术,实现人机交互。
[0003]在视觉交互技术中,微软公司的Kinect技术通过多目摄像头和深度传感器,通过一种光编码(light coding)技术实现识别人体,将人的肢体运动翻译为计算机指令。三星公司推出的SmartTV系列电视机,通过使用语音和手势相结合的方法对电视进行操作。另外,现有的视觉交互技术主要集中在手势识别方法和系统上。
[0004]现有的人机交互技术中,除了常规的交互方式外,还可以通过语音对计算机发送指令,也可以通过传感器感知人的动作。通过语音交互的方式,容易受到噪音、口音以及距离远近的影响,并且语音的交互没有方向性,只能实现简单的指令、选择。通过传感器感知人的动作这一交互方式中,典型的方式是通过数据手套或者携带各种传感器(例如加速度、红外、磁场传感器),通过捕获手的动作,然后翻译成计算机指令,然而,这种通过传感器获取的手势,成本很高,不能徒手操作,应用场景相对收到限制。

【发明内容】

[0005]本发明实施例提供一种基于徒手和单目摄像头实现人机交互的方法和装置,以较为简单的硬件设备,在各种应用场景中实现复杂指令的输出。
[0006]一种基于徒手和单目摄像头实现人机交互的方法,所述方法包括:
[0007]采集徒手图像,所述徒手图像包括用户单手的徒手图像或双手的徒手图像;
[0008]检测所述徒手图像中不同形状的手的尺寸和/或位置以及所述尺寸的变化和/或所述位置的变化;
[0009]根据所述尺寸的变化和/或所述位置的变化,生成相应的操作指令输出至终端,以使所述终端执行与所述操作指令相应的操作。
[0010]一种基于徒手和单目摄像头实现人机交互的装置,所述装置包括:
[0011]图像采集模块,用于采集徒手图像,所述徒手图像包括用户单手的徒手图像或双手的徒手图像;
[0012]检测模块,用于检测所述徒手图像中不同形状的手的尺寸和/或位置以及所述尺寸的变化和/或所述位置的变化;
[0013]输出模块,用于根据所述尺寸的变化和/或所述位置的变化,生成相应的操作指令输出至终端,以使所述终端执行与所述操作指令相应的操作。[0014]从上述本发明实施例可知,采集徒手图像可以使用常用的图像采集设备例如单目摄像头实现,并且,用户是徒手在图像采集设备面前动作,当检测到徒手图像中手的尺寸和/或位置以及所述尺寸的变化和/或所述位置的变化后,可以根据所述尺寸的变化和/或所述位置的变化,生成相应的操作指令输出至终端。与现有技术提供的人机交互技术需要用户额外增加成本较高的设备例如数据手套相比,本发明实施例提供的方法需要的设备简单,成本低廉,稳定性好,徒手即可实现对鼠标的基本操作以及对触摸屏的基本操作,因此执行效率也较高。
【专利附图】

【附图说明】
[0015]图1是本发明实施例提供的基于徒手和单目摄像头实现人机交互的方法的基本流程示意图;
[0016]图2是本发明实施例提供的基于徒手和单目摄像头实现人机交互的装置逻辑结构示意图;
[0017]图3是本发明另一实施例提供的基于徒手和单目摄像头实现人机交互的装置逻辑结构示意图;
[0018]图4是本发明另一实施例提供的基于徒手和单目摄像头实现人机交互的装置逻辑结构示意图;
[0019]图5是本发明另一实施例提供的基于徒手和单目摄像头实现人机交互的装置逻辑结构示意图;
[0020]图6是本发明另一实施例提供的基于徒手和单目摄像头实现人机交互的装置逻辑结构示意图;
[0021]图7是本发明另一实施例提供的基于徒手和单目摄像头实现人机交互的装置逻辑结构示意图;
[0022]图8是本发明另一实施例提供的基于徒手和单目摄像头实现人机交互的装置逻辑结构示意图。
【具体实施方式】
[0023]本发明实施例提供一种基于徒手和单目摄像头实现人机交互的方法,包括:采集徒手图像,所述徒手图像包括用户单手的徒手图像或双手的徒手图像;检测所述徒手图像中不同形状的手的尺寸和/或位置以及所述尺寸的变化和/或所述位置的变化;根据所述尺寸的变化和/或所述位置的变化,生成相应的操作指令输出至终端,以使所述终端执行与所述操作指令相应的操作。本发明实施例还提供相应的基于徒手和单目摄像头实现人机交互的装置。以下分别进行详细说明。
[0024]本发明实施例的基于徒手和单目摄像头实现人机交互的方法的基本流程可参考图1,主要包括步骤:
[0025]S101,采集徒手图像。
[0026]在本发明实施例中,所谓徒手,也就是裸手,是指没有安装或穿戴任何设备的手,即在实现本发明的技术方案过程中,用户的手自始至终没有安装或穿戴任何设备进行操作;徒手图像是指目标物主要是用户的徒手构成的图像,包括用户单手的徒手图像或双手的徒手图像。采集徒手图像可以通过外接普通的家用摄像头,也可以直接使用终端上提供的摄像头实现,摄像头的类型可以是单目摄像头,本发明可以对摄像头的类型不加限制。
[0027]S102,检测所述徒手图像中不同形状的手的尺寸和/或位置以及所述尺寸的变化和/或所述位置的变化。
[0028]在实现本发明方法的过程中,徒手图像中不同形状的手包括掌状单手和拳状单手,所谓掌状单手即单手的五个指头张开,其和掌心基本处于同一平面,所谓拳状单手即单手的五个指头并拢且向掌心方向弯曲。拳状单手或掌状单手相对于图像采集设备(例如单目摄像头)在同一平面内左右移动时,会引起徒手图像中拳状单手或掌状单手的尺寸和/或位置的变化。可以采用图像处理硬件设备或软件模块检测所述徒手图像中拳状单手或掌状单手的尺寸和/或位置以及所述尺寸的变化和/或所述位置的变化。为了描述方便,本发明实施例中将徒手图像中掌状单手的尺寸使用S表示,拳状单手的位置使用C表示,掌状单手的位置使用P表示,鼠标指针在屏幕的位置使用T表示,当前一帧徒手图像中S相对于前一帧徒手图像中S的变化使用Z S表示,当前一帧徒手图像中P相对于前一帧徒手图像中P的变化使用」P表示,当前一帧徒手图像中C相对于前一帧徒手图像中C的变化使用」C表不。
[0029]S103,根据徒手图像中不同形状的手的尺寸的变化和/或所述位置的变化,生成相应的操作指令输出至终端,以使所述终端执行与所述操作指令相应的操作。
[0030]在本发明一个实施例中,采集徒手图像为采集用户单手的徒手图像,终端执行与所生成操作指令相应的操作包括执行对鼠标指针的移动,检测徒手图像中不同形状的手的尺寸和/或位置以及尺寸的变化和/或所述位置的变化为:检测所述徒手图像中掌状单手的尺寸S和位置P以及所述尺寸S的变化」S和所述位置P的变化」P。相应地,作为本发明一个实施例,根据所述尺寸的变化和/或所述位置的变化,生成相应的操作指令输出至终端,以使所述终端执行与所述操作指令相应的操作包括如下步骤SOl和步骤S02:
[0031]S01,若掌状单手的尺寸S的变化」S小于第一阈值Mls且掌状单手的位置P在同一平面内存在变化 P,则通过几何映射方法将所述经过变化后的位置映射为鼠标指针在屏幕中的位置T ;
[0032]S02,根据所述映射结果,向所述终端输出第一操作指令以使所述终端根据所述第一操作指令移动所述鼠标指针。作为本发明一个实施例,几何映射方法如下:假设掌状单手的位置P={x,y},图像的长为W1,宽为Ii1,屏幕的长为W2,宽为h2,图形设备(例如,鼠标指针)在屏幕上的位置为 t={m, η},则 Iii=XXw2ZV1, r=yXlVhp
[0033]需要说明的是,本发明所述的终端可以是传统的个人电脑(Personal Computer,PC)、手机和平板电脑等等,这些终端的输入设备既可以是传统的键盘、鼠标等,也可以是触屏。
[0034]在本发明一个实施例中,检测徒手图像中不同形状的手的尺寸和/或位置以及所述尺寸的变化和/或所述位置的变化可以是:检测所述徒手图像中掌状单手的尺寸S、位置P、所述尺寸S的变化Z S和所述位置P的变化Z S以及拳状单手的位置C和所述位置C的变化」C。
[0035]在检测徒手图像中不同形状的手的尺寸和/或位置以及所述尺寸的变化和/或所述位置的变化为检测徒手图像中掌状单手的尺寸S、位置P、所述尺寸S的变化」S和所述位置P的变化Z S以及拳状单手的位置C和所述位置C的变化Z C这一实施例中,终端执行与所生成操作指令相应的操作包括执行对鼠标的点击,例如,单击或双击。用户可通过移动掌状单手,控制鼠标移动,将鼠标或者触摸位置标志移动到想要点击的位置时,另外一只手变成拳状单手并保持时间 T1秒不动,然后拳状单手的拳状消匿,例如,将拳状单手离开图像采集设备(例如,单目摄像头等)或者改变拳状单手的形状(例如,变成掌状单手),则实现单击动作。用户可通过移动掌状单手,控制鼠标移动,将鼠标或者触摸位置标志移动到想要点击的位置时,另外一只手变成拳状单手并保持时间 h秒不动,然后拳状单手的拳状消匿,例如,将拳状单手离开图像采集设备(例如,单目摄像头等)或者改变拳状单手的形状(例如,变成掌状单手);接着拳状已消匿的单手迅速变回拳状单手,时间t’ 后,再将拳状单手的拳状消匿,例如,将拳状单手离开图像采集设备(例如,单目摄像头等)或者改变拳状单手的形状(例如,变成掌状单手),从而实现双击动作。上述用户的双手的形状、位置变化被转化为操作指令,即相应于终端执行与所生成操作指令相应的操作包括执行对鼠标的点击的实施例,作为本发明另一实施例,根据徒手图像中不同形状的手的尺寸的变化和/或位置的变化,生成相应的操作指令输出至终端,以使终端执行与所述操作指令相应的操作包括S21和S22:
[0036]S21,根据徒手图像中掌状单手的尺寸S和位置P以及所述尺寸S的变化」S和所述位置P的变化Z P,获得检测的结果为鼠标指针移动至屏幕上需要点击的位置且采集的结果为此时用户一单手变成拳状。
[0037]鼠标指针移动的实现过程已在前述实施例的步骤SOl和步骤S02中说明,本实施例中鼠标指针移动至屏幕上需要点击的位置的实现过程可参考前述说明,此处不再赘述。通过掌状单手的尺寸、位置变化实现将鼠标指针移动至屏幕上需要点击的位置时,用户的另一单手变成拳状,即图像采集设备采集的结果为此时用户一单手变成拳状。
[0038]S22,若检测的结果还包括在时间Z &内拳状单手仅发生一次变化过程CP,则向终端输出第二操作指令以使所述终端根据所述第二操作指令执行对鼠标的单击,若检测的结果还包括在时间」t2内拳状单手连续两次发生变化过程CP,则向终端输出第三操作指令以使所述终端根据所述第二操作指令执行对鼠标的双击。
[0039]上述实施例中,时间Z t2应该足够短,其大小应该与传统人机交互方法中双击物理的鼠标时前后两次单击的间隔时间相当。需要说明的是,上述实施例中,变化过程Cp为鼠标指针移至屏幕上需要点击的位置后,在时间t后拳状单手的拳状消匿,且在消匿前所述拳状单手的位置C的变化Z C小于预设阈值。对拳状单手的位置C的变化Z C限制在一定范围之内,是为了确保拳状单手不致乱动。
[0040]在检测徒手图像中不同形状的手的尺寸和/或位置以及所述尺寸的变化和/或所述位置的变化为检测徒手图像中掌状单手的尺寸S、位置P、所述尺寸S的变化」S和所述位置P的变化Z S以及拳状单手的位置C和所述位置C的变化Z C这一实施例中,终端执行与所生成操作指令相应的操作包括对对象的拖拽。用户可通过移动掌状单手,控制鼠标移动,将鼠标移动至想要拖拽的图标或者文件上时,另外一只手变成拳状单手并保持时间Z T秒不动,在时间Z T秒后,控制鼠标或者触摸为摁下方式,然后拳状单手继续保持不动,移动掌状单手,实现拖拽,当拖拽 到目标位置后,将将拳状单手的拳状消匿,例如,将拳状单手离开图像采集设备(例如,单目摄像头等)或者改变拳状单手的形状(例如,变成掌状单手),释放摁下动作,变成抬起。上述用户的手的动作被转化为操作指令,即相应于终端执行与所生成操作指令相应的操作包括对对象的拖拽的实施例,作为本发明另一实施例,根据徒手图像中不同形状的手的尺寸的变化和/或位置的变化,生成相应的操作指令输出至终端,以使终端执行与所述操作指令相应的操作包括如下S31至S35:
[0041]S31,根据徒手图像中掌状单手的尺寸S和位置P以及所述尺寸S的变化」S和位置P的变化Z P,获得检测的结果为鼠标指针移动至屏幕上需要拖拽的对象且采集的结果为此时用户一单手变成拳状。
[0042]S32,在获得检测的结果为在时间」t3内所述拳状单手的位置C的变化」C小于第二阈值M2s时,记录对所述对象的选定。
[0043]S33,根据徒手图像中掌状单手的尺寸S和位置P以及所述尺寸S的变化」S和所述位置P的变化Z P,获得检测的结果为鼠标指针移动至目标位置。
[0044]上述S31和S33中鼠标指针移动的实现过程已在前述实施例的步骤SOl和步骤S02中说明,本实施例中鼠标指针移动至屏幕上需要拖拽的对象和目标位置的实现过程可参考前述说明,此处不再赘述。
[0045]S34,在目标位置检测到所述拳状单手的拳状消匿时,记录对所述对象的释放。
[0046]S35,向终端输出第四操作指令以使所述终端根据所述第四操作指令执行对所述对象的拖拽。
[0047]在检测徒手图像中不同形状的手的尺寸和/或位置以及所述尺寸的变化和/或所述位置的变化为检测徒手图像中掌状单手的尺寸S、位置P、所述尺寸S的变化」S和所述位置P的变化Z S以及拳状单手的位置C和所述位置C的变化Z C这一实施例中,终端执行与所生成操作指令相应的操作包括执行对鼠标左键或右键的长摁。用户通过掌状单手的移动控制鼠标移动,将鼠标移动到目标位置,然后另外一只单手变成拳状单手保持不动,同时掌状单手也保持不动一段时间后,实现长摁操作。上述用户的手的动作被转化为操作指令,即相应于终端执行与所述操作指令相应的操作包括执行对鼠标左键或右键的长摁的实施例,作为本发明另一实施例,根据徒手图像中不同形状的手的尺寸的变化和/或位置的变化,生成相应的操作指令输出至终端,以使终端执行与所述操作指令相应的操作包括如下 S41 至 S44:
[0048]S41,根据徒手图像中掌状单手的尺寸S和位置P以及所述尺寸S的变化」S和所述位置P的变化Z P,获得检测的结果为鼠标指针移动至屏幕上的目标位置且采集的结果为此时用户一单手变成拳状。
[0049]上述S41中鼠标指针移动的实现过程已在前述实施例的步骤SOl和步骤S02中说明,本实施例中鼠标指针移动至屏幕上的目标位置的实现过程可参考前述说明,此处不再赘述。需要说明的是,屏幕上的目标位置可以是屏幕上的一块空白区域,也可以是屏幕上某个目标对象所在位置。
[0050]S42,在获得检测的结果为在时间Z t4内拳状单手的位置C的变化Z C小于第二阈值M2s,且掌状单手的位置P的变化」P小于第三阈值M3s时,记录对所述目标位置的选定。
[0051]S43,保持对所述目标位置的选定至一段时间。
[0052]S44,向终端输出第五操作指令以使所述终端根据所述第五操作指令执行对所述鼠标左键或右键的长摁。[0053]在检测徒手图像中不同形状的手的尺寸和/或位置以及所述尺寸的变化和/或所述位置的变化为检测徒手图像中掌状单手的尺寸S、位置P、所述尺寸S的变化」S和所述位置P的变化Z S以及拳状单手的位置C和所述位置C的变化Z C这一实施例中,终端执行与所生成操作指令相应的操作包括执行点击鼠标右键的操作。用户可通过移动掌状单手,控制鼠标移动,将鼠标移动至屏幕上目标位置时,用户双手中一单手为掌状即成为掌状单手,另一单手为拳状即成为拳状单手,然后在t秒内,原先的掌状单手变成拳状单手,原先的拳状单手变成掌状单手,实现摁下鼠标右键动作;再将已变成拳状的单手恢复为掌状单手,将已变成掌状的单手恢复为拳状单手,执行鼠标右键弹起动作,最终实现鼠标的右键操作。上述用户的手的动作被转化为操作指令,即相应于终端执行与所述操作指令相应的操作包括执行点击鼠标右键的操作的实施例,作为本发明另一实施例,根据徒手图像中不同形状的手的尺寸的变化和/或位置的变化,生成相应的操作指令输出至终端,以使终端执行与所述操作指令相应的操作包括包括如下S51至S54:
[0054]S51,根据徒手图像中掌状单手的尺寸S和位置P以及所述尺寸S的变化」S和所述位置P的变化Z P,获得检测的结果为鼠标指针移动至屏幕上目标位置且采集的结果为此时用户双手中一单手为掌状,另一单手为拳状。
[0055]上述S51中鼠标指针移动的实现过程已在前述实施例的步骤SOl和步骤S02中说明,本实施例中鼠标指针移动至屏幕上的目标位置的实现过程可参考前述说明,此处不再赘述。
[0056]S52,在时间Z t5内获取的采集的结果为所述掌状单手和拳状单手先各自变换形状一次,然后变换形状的单手各自再变换形状一次,所述变换形状为由掌状变成拳状或者由拳状变成掌状。
[0057]S53,向终端输出第六操作指令以使所述终端根据所述第六操作指令执行点击鼠标右键的操作。
[0058]在检测徒手图像中不同形状的手的尺寸和/或位置以及所述尺寸的变化和/或所述位置的变化为检测徒手图像中掌状单手的尺寸S、位置P、所述尺寸S的变化」S和所述位置P的变化Z S以及拳状单手的位置C和所述位置C的变化Z C这一实施例中,终端执行与所生成操作指令相应的操作包括执行对对象的放大或缩小。用户通过将掌状单手和拳状单手同时置于图像采集设备可以采集的范围之内,然后在时间t秒内,掌状单手和拳状单手背向移动,即可实现对网页或者图片等对象的放大操作。用户通过将掌状单手和拳状单手同时置于图像采集设备可以采集的范围之内,然后在时间t’秒内,掌状单手和拳状单手相向移动,即可实现对网页或者图片等对象的缩小操作。上述用户掌状单手和拳状单手的动作被转化为操作指令,即相应于终端执行与所述操作指令相应的操作包括执行对对象的放大或缩小的实施例,作为本发明另一实施例,根据徒手图像中不同形状的手的尺寸的变化和/或位置的变化,生成相应的操作指令输出至终端,以使终端执行与所述操作指令相应的操作包括包括如下S61至S64:
[0059]S61,获得采集的结果为用户双手中一单手为掌状,另一单手为拳状,或者根据所述徒手图像中掌状单手的尺寸S和位置P以及所述尺寸S的变化」S和所述位置P的变化 P,获得检测的结果为所述鼠 标指针移动至屏幕上目标对象且采集的结果为此时用户双手中一单手为掌状,另一单手为拳状。[0060]S62,若检测的结果为掌状单手的位置P的变化Z P的方向和拳状单手的位置C的变化Z C的方向相反,且掌状单手的位置P与拳状单手的位置C之间的距离变大,则向终端输出第七操作指令以使所述终端根据所述第七操作指令对页面或者目标对象执行放大的操作。
[0061]S63,若检测的结果为掌状单手的位置P的变化Z P的方向和拳状单手的位置C的变化Z C的方向相反,且掌状单手的位置P与拳状单手的位置C之间的距离变小,则向终端输出第八操作指令以使所述终端根据所述第八操作指令对页面或者所述目标对象执行缩小的操作。
[0062]需要说明的是,掌状单手的位置P的变化Z P和拳状单手的位置C的变化Z C都是矢量,因此有方向性,当掌状单手的位置P的变化Z P的方向和拳状单手的位置C的变化Z C的方向相反时,表明掌状单手和拳状单手是相向移动或背向移动,而到底是相向移动还是背向移动,还要取决于掌状单手的位置P与拳状单手的位置C之间的距离。在本发明实施例中,若检测的结果为掌状单手的位置P的变化Z P的方向和拳状单手的位置C的变化Z C的方向相反,且掌状单手的位置P与拳状单手的位置C之间的距离变大,表明掌状单手和拳状单手是是相向移动,则向终端输出第七操作指令以使所述终端根据所述第七操作指令对页面或者所述目标对象执行放大的操作;若检测的结果为掌状单手的位置P的变化 P的方向和拳状单手的位置C的变化Z C的方向相反,且掌状单手的位置P与拳状单手的位置C之间的距离变小,表明掌状单手和拳状单手是背向移动,则向终端输出第八操作指令以使所述终端根据所述第八操作指令对页面或者所述目标对象执行缩小的操作。
[0063]从上述本发明实施例提供的基于徒手和单目摄像头实现人机交互的方法可知,采集徒手图像可以使用常用的图像采集设备例如单目摄像头实现,并且,用户是徒手在图像采集设备面前动作,当检测到徒手图像中手的尺寸和/或位置以及所述尺寸的变化和/或所述位置的变化后,可以根据所述尺寸的变化和/或所述位置的变化,生成相应的操作指令输出至终端。与现有技术提供的人机交互技术需要用户额外增加成本较高的设备例如数据手套相比,本发明实施例提供的方法需要的设备简单,成本低廉,稳定性好,单手徒手即可实现对鼠标的基本操作以及对触摸屏的基本操作,因此执行效率也较高。
[0064]下面对用于执行上述基于徒手和单目摄像头实现人机交互的方法的本发明实施例的基于基于徒手和单目摄像头实现人机交互的装置进行说明,其基本逻辑结构参考图2,主要包括图像采集模块201、检测模块202和输出模块203,各模块详细说明如下:
[0065]图像采集模块201,用于采集徒手图像,所述徒手图像包括用户单手的徒手图像或双手的徒手图像;
[0066]检测模块202,用于检测所述徒手图像中不同形状的手的尺寸和/或位置以及所述尺寸的变化和/或所述位置的变化;
[0067]输出模块203,用于根据徒手图像中不同形状的手的尺寸的变化和/或所述位置的变化,生成相应的操作指令输出至终端,以使所述终端执行与所述操作指令相应的操作。
[0068]需要说明的是,以上附图2示例的基于徒手和单目摄像头实现人机交互的装置的实施方式中,各功能模块的划分仅是举例说明,实际应用中可以根据需要,例如相应硬件的配置要求或者软件的实现的便利考虑,而将上述功能分配由不同的功能模块完成,即将所述基于徒手和单目摄像头实现人机交互的装置的内部结构划分成不同的功能模块,以完成以上描述的全部或者部分功能。而且,实际应用中,本实施例中的相应的功能模块可以是由相应的硬件实现,也可以由相应的硬件执行相应的软件完成,例如,前述的图像采集模块,可以是具有执行前述采集徒手图像的硬件,例如图像采集器,也可以是能够执行相应计算机程序从而完成前述功能的一般处理器或者其他硬件设备;再如前述的检测模块,可以是具有执行前述检测所述徒手图像中不同形状的手的尺寸和/或位置以及所述尺寸的变化和/或所述位置的变化功能的硬件,例如检测器,也可以是能够执行相应计算机程序从而完成前述功能的一般处理器或者其他硬件设备(本说明书提供的各个实施例都可应用上述描述原则)。
[0069]附图2示例的图像采集模块201具体用于采集用户单手的徒手图像,检测模块202具体用于检测所述徒手图像中掌状单手的尺寸S和位置P以及所述尺寸S的变化」S和所述位置P的变化」P,输出模块203可以包括映射单元301和第一输出单元302,如附图3所示本发明另一实施例提供的基于徒手和单目摄像头实现人机交互的装置,其中:
[0070]映射单元301,用于若徒手图像中掌状单手的尺寸S的变化」S小于第一阈值Mls且所述位置P在同一平面内存在所述变化 P,则通过几何映射方法将所述经过变化后的位置映射为鼠标指针在屏幕中的位置T ;
[0071]第一指令输出单元302,用于根据所述映射结果,向所述终端输出第一操作指令以使所述终端根据所述第一操作指令移动所述鼠标指针。
[0072]附图2示例的检测模块202具体用于检测徒手图像中掌状单手的尺寸S、位置P、所述尺寸S的变化Z S和所述位置P的变化Z S以及拳状单手的位置C和所述位置C的变化』C。
[0073]基于检测模块202具体用于检测徒手图像中掌状单手的尺寸S、位置P、所述尺寸S的变化Z S和所述位置P的变化Z S以及拳状单手的位置C和所述位置C的变化Z C的实施例,附图2示例的基于徒手和单目摄像头实现人机交互的装置中,终端执行与所述操作指令相应的操作包括对鼠标的单击或者双击,输出模块203可以包括第一获取单元401、第二指令输出单元402和第三指令输出单元403,如附图4所示本发明另一实施例提供的基于徒手和单目摄像头实现人机交互的装置,其中:
[0074]第一获取单元401,用于根据徒手图像中掌状单手的尺寸S和位置P以及所述尺寸S的变化Z S和所述位置P的变化Z P,获得检测的结果为鼠标指针移动至屏幕上需要点击的位置且采集的结果为此时用户一单手变成拳状;
[0075]第二指令输出单元402,用于若检测的结果还包括在时间」内拳状单手仅发生一次变化过程CP,则向终端输出第二操作指令以使所述终端根据所述第二操作指令执行对所述鼠标的单击;
[0076]第三指令输出单元403,用于若检测的结果还包括在时间」t2内拳状单手连续两次发生所述变化过程CP,则向终端输出第三操作指令以使所述终端根据所述第二操作指令执行对所述鼠标的双击;
[0077]附图4示例的基于徒手和单目摄像头实现人机交互的装置中,变化过程Cp为鼠标指针移至屏幕上需要点击的位置后,在时间 t后拳状单手的拳状消匿,且在消匿前拳状单手的位置C的变化Z C小于预设阈值。所谓拳状单手的拳状消匿,既可以指拳状单手离开图像采集设备的采集范围即无法采集到拳状单手,也可以指拳状单手变成非拳状单手,例如,变成掌状单手。
[0078]基于检测模块202具体用于检测徒手图像中掌状单手的尺寸S、位置P、所述尺寸S的变化Z S和所述位置P的变化Z S以及拳状单手的位置C和所述位置C的变化Z C的实施例,附图2示例的基于徒手和单目摄像头实现人机交互的装置中,终端执行与操作指令相应的操作包括对对象的拖拽,输出模块203可以包括第二获取单元501、第一记录单元502、第三获取单元503、第二记录单元504和第四指令输出单元505,如附图5所示本发明另一实施例提供的基于徒手和单目摄像头实现人机交互的装置,其中:
[0079]第二获取单元501,用于根据所述徒手图像中掌状单手的尺寸S和位置P以及所述尺寸S的变化Z S和所述位置P的变化Z P,获得检测的结果为所述鼠标指针移动至屏幕上需要拖拽的对象且采集的结果为此时用户一单手变成拳状;
[0080]第一记录单元502,用于在获得检测的结果为在时间」t3内所述拳状单手的位置C的变化」C小于第二阈值M2s时,记录对所述对象的选定;
[0081 ] 第三获取单元503,用于根据所述徒手图像中掌状单手的尺寸S和位置P以及所述尺寸S的变化Z S和所述位置P的变化Z P,获得检测的结果为所述鼠标指针移动至目标位置;
[0082]第二记录单元504,用于在所述目标位置检测到所述拳状单手的拳状消匿时,记录对所述对象的释放;
[0083]第四指令输出单元505,用于向所述终端输出第四操作指令以使所述终端根据所述第四操作指令执行对所述对象的拖拽。
[0084]基于检测模块202具体用于检测徒手图像中掌状单手的尺寸S、位置P、所述尺寸S的变化Z S和所述位置P的变化Z S以及拳状单手的位置C和所述位置C的变化Z C的实施例,附图2示例的基于徒手和单目摄像头实现人机交互的装置中,终端执行与操作指令相应的操作包括执行对鼠标左键或右键的长摁,输出模块203可以包括第四获取单元601、第三记录单元602、选定保持单元603和第五指令输出单元604,如附图6所示本发明另一实施例提供的基于徒手和单目摄像头实现人机交互的装置,其中:
[0085]第四获取单元601,用于根据所述徒手图像中掌状单手的尺寸S和位置P以及所述尺寸S的变化Z S和所述位置P的变化Z P,获得检测的结果为所述鼠标指针移动至屏幕上的目标位置且采集的结果为此时用户一单手变成拳状。需要说明的是,屏幕上的目标位置可以是屏幕上的一块空白区域,也可以是屏幕上某个目标对象所在位置;
[0086]第三记录单元602,用于在获得检测的结果为在时间」t4内所述拳状单手的位置C的变化」C小于第二阈值M2s,且所述掌状单手的位置P的变化」P小于第三阈值M3s时,记录对所述目标位置的选定;
[0087]选定保持单元603,用于保持对所述目标位置的选定至一段时间;
[0088]第五指令输出单元604,用于向所述终端输出第五操作指令以使所述终端根据所述第五操作指令执行对所述鼠标左键或右键的长摁。
[0089]基于检测模块202具体用于检测徒手图像中掌状单手的尺寸S、位置P、所述尺寸S的变化Z S和所述位置P的变化Z S以及拳状单手的位置C和所述位置C的变化Z C的实施例,附图2示例的基于徒手和单目摄像头实现人机交互的装置中,终端执行与操作指令相应的操作包括点击鼠标右键的操作,输出模块203可以包括第五获取单元701、第六获取单元702和第六指令输出单元703,如附图7所示本发明另一实施例提供的基于徒手和单目摄像头实现人机交互的装置,其中:
[0090]第五获取单元701,用于根据所述徒手图像中掌状单手的尺寸S和位置P以及所述尺寸S的变化Z S和所述位置P的变化Z P,获得检测的结果为所述鼠标指针移动至屏幕上目标位置且采集的结果为此时用户双手中一单手为掌状,另一单手为拳状;
[0091]第六获取单元702,用于在时间Z t5内获取的采集的结果为所述掌状单手和拳状单手先各自变换形状一次,然后所述变换形状的单手各自再变换形状一次,所述变换形状为由掌状变成拳状或者由拳状变成掌状;
[0092]第六指令输出单元703,用于向所述终端输出第六操作指令以使所述终端根据所述第六操作指令执行点击鼠标右键的操作。
[0093]基于检测模块202具体用于检测徒手图像中掌状单手的尺寸S、位置P、所述尺寸S的变化Z S和所述位置P的变化Z S以及拳状单手的位置C和所述位置C的变化Z C的实施例,附图2示例的基于徒手和单目摄像头实现人机交互的装置中,终端执行与操作指令相应的操作包括执行对对象的放大或缩小,输出模块203可以包括第七获取单元801、第七指令输出单元802和第八指令输出单元803,如附图8所示本发明另一实施例提供的基于徒手和单目摄像头实现人机交互的装置,其中:
[0094]第七获取单元801,用于获得采集的结果为用户双手中一单手为掌状,另一单手为拳状,或者根据所述徒手图像中掌状单手的尺寸S和位置P以及所述尺寸S的变化」S和所述位置P的变化Z P,获得检测的结果为所述鼠标指针移动至屏幕上目标对象且采集的结果为此时用户双手中一单手为掌状,另一单手为拳状;
[0095]第七指令输出单元802,用于若所述检测的结果为所述掌状单手的位置P的变化 P的方向和所述拳状单手的位置C的变化Z C的方向相反,且所述掌状单手的位置P与所述拳状单手的位置C之间的距离变大,则向所述终端输出第七操作指令以使所述终端根据所述第七操作指令对页面或者所述目标对象执行放大的操作;
[0096]第八指令输出单元803,用于若所述检测的结果为所述掌状单手的位置P的变化 P的方向和所述拳状单手的位置C的变化Z C的方向相反,且所述掌状单手的位置P与所述拳状单手的位置C之间的距离变小,则向所述终端输出第八操作指令以使所述终端根据所述第八操作指令对页面或者所述目标对象执行缩小的操作。
[0097]需要说明的是,上述装置各模块/单元之间的信息交互、执行过程等内容,由于与本发明方法实施例基于同一构思,其带来的技术效果与本发明方法实施例相同,具体内容可参见本发明方法实施例中的叙述,此处不再赘述。
[0098]本领域普通技术人员可以理解上述实施例的各种方法中的全部或部分步骤是可以通过程序来指令相关的硬件来完成,该程序可以存储于一计算机可读存储介质中,存储介质可以包括:只读存储器(ROM,Read Only Memory)、随机存取存储器(RAM,RandomAccess Memory)、磁盘或光盘等。
[0099]以上对本发明实施例所提供的一种基于徒手和单目摄像头实现人机交互的方法和装置进行了详细介绍,本文中应用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮 助理解本发明的方法及其核心思想;同时,对于本领域的一般技术人员,依据本发明的思想,在【具体实施方式】及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本发明的限制。
【权利要求】
1.一种基于徒手和单目摄像头实现人机交互的方法,其特征在于,所述方法包括:采集徒手图像,所述徒手图像包括用户单手的徒手图像或双手的徒手图像;检测所述徒手图像中不同形状的手的尺寸和/或位置以及所述尺寸的变化和/或所述位置的变化;根据所述尺寸的变化和/或所述位置的变化,生成相应的操作指令输出至终端,以使所述终端执行与所述操作指令相应的操作。
2.根据权利要求1所述的方法,其特征在于,所述采集徒手图像为采集用户单手的徒手图像;所述检测所述徒手图像中不同形状的手的尺寸和/或位置以及所述尺寸的变化和/或所述位置的变化为:检测所述徒手图像中掌状单手的尺寸S和位置P以及所述尺寸S的变化」S和所述位置P的变化」P ;所述根据所述尺寸的变化和/或所述位置的变化,生成相应的操作指令输出至终端,以使所述终端执行与所述操作指令相应的操作包括:若所述尺寸S的变化」S小于第一阈值Mls且所述位置P在同一平面内存在所述变化 P,则通过几何映射方法将所述经过变化后的位置映射为鼠标指针在屏幕中的位置T;根据所述映射结果,向所述终端输出第一操作指令以使所述终端根据所述第一操作指令移动所述鼠标指针。
3.根据权利要求1所述的方法,其特征在于,所述检测所述徒手图像中不同形状的手的尺寸和/或位置以及所述尺寸的变化和/或所述位置的变化为:检测所述徒手图像中掌状单手的尺寸S、位置P、所述尺寸S的变化」S和所述位置P的变化Z S以及拳状单手的位置C和所述位置C的变化Z C。
4.根据权利要求3所述的方法,其特征在于,所述终端执行与所述操作指令相应的操作包括对鼠标的单击或者双击;所述根据所述尺寸的变化和/或所述位置的变化,生成相应的操作指令输出至终端,以使所述终端执行与所述操作指令相应的操作包括:根据所述徒手图像中掌状单手的尺寸S和位置P以及所述尺寸S的变化」S和所述位置P的变化Z P,获得检测的结果为所述鼠标指针移动至屏幕上需要点击的位置且采集的结果为此时用户一单手变成拳状;若所述检测的结果还包括在时间Z 内所述拳状单手仅发生一次变化过程Cp,则向所述终端输出第二操作指令以使所述终端根据所述第二操作指令执行对所述鼠标的单击,若所述检测的结果还包括在时间Z t2内所述拳状单手连续两次发生所述变化过程Cp,则向所述终端输出第三操作指令以使所述终端根据所述第二操作指令执行对所述鼠标的双击;所述变化过程Cp为所述鼠标指针移至屏幕上需要点击的位置后,在时间Z t后所述拳状单手的拳状消匿,且在消匿前所述拳状单手的位置C的变化Z C小于预设阈值。
5.根据权利要求3所述的方法,其特征在于,所述终端执行与所述操作指令相应的操作包括对对象的拖拽;所述根据所述尺寸的变化和/或所述位置的变化,生成相应的操作指令输出至终端,以使所述终端执行与所述操作指令相应的操作包括:根据所述徒手图像中掌状单手的尺寸S和位置P以及所述尺寸S的变化」S和所述位置P的变化Z P,获得检测的结果为所述鼠标指针移动至屏幕上需要拖拽的对象且采集的结果为此时用户一单手变成拳状;在获得检测的结果为在时间Z t3内所述拳状单手的位置C的变化Z C小于第二阈值M2s时,记录对所述对象的选定;根据所述徒手图像中掌状单手的尺寸S和位置P以及所述尺寸S的变化」S和所述位置P的变化Z P,获得检测的结果为所述鼠标指针移动至目标位置;在所述目标位置检测到所述拳状单手的拳状消匿时,记录对所述对象的释放;向所述终端输出第四操作指令以使所述终端根据所述第四操作指令执行对所述对象的拖拽。
6.根据权利要求3所述的方法,其特征在于,所述终端执行与所述操作指令相应的操作包括执行对鼠标左键或右键的长摁;所述根据所述尺寸的变化和/或所述位置的变化,生成相应的操作指令输出至终端,以使所述终端执行与所述操作指令相应的操作包括:根据所述徒手图像中掌状单手的尺寸S和位置P以及所述尺寸S的变化」S和所述位置P的变化Z P,获得检测的结果为所述鼠标指针移动至屏幕上的目标位置且采集的结果为此时用户一单手变成拳状;在获得检测的结果为在时间Z t4内所述拳状单手的位置C的变化Z C小于第二阈值M2s,且所述掌状单手的位置P的变化」P小于第三阈值M3s时,记录对所述目标位置的选定;保持对所述目标位置的.选定至一段时间;向所述终端输出第五操作指令以使所述终端根据所述第五操作指令执行对所述鼠标左键或右键的长摁。
7.根据权利要求3所述的方法,其特征在于,所述终端执行与所述操作指令相应的操作包括执行点击鼠标右键的操作;所述根据所述尺寸的变化和/或所述位置的变化,生成相应的操作指令输出至终端,以使所述终端执行与所述操作指令相应的操作包括:根据所述徒手图像中掌状单手的尺寸S和位置P以及所述尺寸S的变化」S和所述位置P的变化Z P,获得检测的结果为所述鼠标指针移动至屏幕上目标位置且采集的结果为此时用户双手中一单手为掌状,另一单手为拳状;在时间Z t5内获取的采集的结果为所述掌状单手和拳状单手先各自变换形状一次,然后所述变换形状的单手各自再变换形状一次,所述变换形状为由掌状变成拳状或者由拳状变成掌状;向所述终端输出第六操作指令以使所述终端根据所述第六操作指令执行点击鼠标右键的操作。
8.根据权利要求3所述的方法,其特征在于,所述终端执行与所述操作指令相应的操作包括执行对对象的放大或缩小;所述根据所述尺寸的变化和/或所述位置的变化,生成相应的操作指令输出至终端,以使所述终端执行与所述操作指令相应的操作包括:获得采集的结果为用户双手中一单手为掌状,另一单手为拳状,或者根据所述徒手图像中掌状单手的尺寸S和位置P以及所述尺寸S的变化」S和所述位置P的变化」P,获得检测的结果为所述鼠标指针移动至屏幕上目标对象且采集的结果为此时用户双手中一单手为掌状,另一单手为拳状;若所述检测的结果为所述掌状单手的位置P的变化 P的方向和所述拳状单手的位置C的变化Z C的方向相反,且所述掌状单手的位置P与所述拳状单手的位置C之间的距离变大,则向所述终端输出第七操作指令以使所述终端根据所述第七操作指令对页面或者所述目标对象执行放大的操作;若所述检测的结果为所述掌状单手的位置P的变化Z P的方向和所述拳状单手的位置C的变化Z C的方向相反,且所述掌状单手的位置P与所述拳状单手的位置C之间的距离变小,则向所述终端输出第八操作指令以使所述终端根据所述第八操作指令对页面或者所述目标对象执行缩小的操作。
9.一种基于徒手和单目摄像头实现人机交互的装置,其特征在于,所述装置包括:图像采集模块,用于采集徒手图像,所述徒手图像包括用户单手的徒手图像或双手的徒手图像;检测模块,用于检测所述徒手图像中不同形状的手的尺寸和/或位置以及所述尺寸的变化和/或所述位置的变化;输出模块,用于根据所述尺寸的变化和/或所述位置的变化,生成相应的操作指令输出至终端,以使所述终端执行与所述操作指令相应的操作。
10.根据权利要求9所述的装置,其特征在于,所述图像采集模块具体用于采集用户单手的徒手图像;所述检测模块具体用于检测所述徒手图像中掌状单手的尺寸S和位置P以及所述尺寸S的变化」S和所述位置P的变化」P ;所述输出模块包括:映射单元,用于若所述尺寸S的变化」S小于第一阈值Mls且所述位置P在同一平面内存在所述变化 P,则通过几何映射方法将所述经过变化后的位置映射为鼠标指针在屏幕中的位置T ;第一指令输出单元,用于根据所述映射结果,向所述终端输出第一操作指令以使所述终端根据所述第一操作指令移动所述鼠标指针。
11.根据权利要求9所述的装置,其特征在于,所述检测模块具体用于检测所述徒手图像中掌状单手的尺寸S、位置P、所述尺寸S的变化」S和所述位置P的变化」S以及拳状单手的位置C和所述位置C的变化」C。
12.根据权利要求11所述的装置,其特征在于,所述终端执行与所述操作指令相应的操作包括对鼠标的单击或者双击,所述输出模块包括:第一获取单元,用于根据所述徒手图像中掌状单手的尺寸S和位置P以及所述尺寸S的变化Z S和所述位置P的变化Z P,获得检测的结果为所述鼠标指针移动至屏幕上需要点击的位置且采集的结果为此时用户一单手变成拳状;第二指令输出单元,用于若所述检测的结果还包括在时间Z 内所述拳状单手仅发生一次变化过程Cp,则向所述终端输出第二操作指令以使所述终端根据所述第二操作指令执行对所述鼠标的单击;第三指令输出单元,用于若所述检测的结果还包括在时间Z t2内所述拳状单手连续两次发生所述变化过程CP,则向所述终端输出第三操作指令以使所述终端根据所述第二操作指令执打对所述鼠标的双击;所述变化过程Cp为所述鼠标指针移至屏幕上需要点击的位置后,在时间Z t后所述拳状单手的拳状消匿,且在消匿前所述拳状单手的位置C的变化Z C小于预设阈值。
13.根据权利要求11所述的装置,其特征在于,所述终端执行与所述操作指令相应的操作包括对对象的拖拽,所述输出模块包括:第二获取单元,用于根据所述徒手图像中掌状单手的尺寸S和位置P以及所述尺寸S的变化Z S和所述位置P的变化Z P,获得检测的结果为所述鼠标指针移动至屏幕上需要拖拽的对象且采集的结果为此 时用户一单手变成拳状;第一记录单元,用于在获得检测的结果为在时间Z t3内所述拳状单手的位置C的变化」C小于第二阈值M2s时,记录对所述对象的选定;第三获取单元,用于根据所述徒手图像中掌状单手的尺寸S和位置P以及所述尺寸S的变化Z S和所述位置P的变化Z P,获得检测的结果为所述鼠标指针移动至目标位置;第二记录单元,用于在所述目标位置检测到所述拳状单手的拳状消匿时,记录对所述对象的释放;第四指令输出单元,用于向所述终端输出第四操作指令以使所述终端根据所述第四操作指令执行对所述对象的拖拽。
14.根据权利要求11所述的装置,其特征在于,所述终端执行与所述操作指令相应的操作包括执行对鼠标左键或右键的长摁,所述输出模块包括:第四获取单元,用于根据所述徒手图像中掌状单手的尺寸S和位置P以及所述尺寸S的变化Z S和所述位置P的变化Z P,获得检测的结果为所述鼠标指针移动至屏幕上的目标位置且采集的结果为此时用户一单手变成拳状;第三记录单元,用于在获得检测的结果为在时间Z t4内所述拳状单手的位置C的变化」C小于第二阈值M2s,且所述掌状单手的位置P的变化」P小于第三阈值M3s时,记录对所述目标位置的选定;选定保持单元,用于保持对所述目标位置的选定至一段时间;第五指令输出单元,用于向所述终端输出第五操作指令以使所述终端根据所述第五操作指令执行对所述鼠标左键或右键的长摁。
15.根据权利要求11所述的装置,其特征在于,所述终端执行与所述操作指令相应的操作包括执行点击鼠标右键的操作,所述输出模块包括:第五获取单元,用于根据所述徒手图像中掌状单手的尺寸S和位置P以及所述尺寸S的变化Z S和所述位置P的变化Z P,获得检测的结果为所述鼠标指针移动至屏幕上目标位置且采集的结果为此时用户双手中一单手为掌状,另一单手为拳状;第六获取单元,用于在时间 t5内获取的采集的结果为所述掌状单手和拳状单手先各自变换形状一次,然后所述变换形状的单手各自再变换形状一次,所述变换形状为由掌状变成拳状或者由拳状变成掌状;第六指令输出单元,用于向所述终端输出第六操作指令以使所述终端根据所述第六操作指令执行点击鼠标右键的操作。
16.根据权利要求11所述的装置,其特征在于,所述终端执行与所述操作指令相应的操作包括执行对对象的放大或缩小,所述输出模块包括:第七获取单元,用于获得采集的结果为用户双手中一单手为掌状,另一单手为拳状,或者根据所述徒手图像中掌状单手的尺寸S和位置P以及所述尺寸S的变化」S和所述位置P的变化Z P,获得检测的结果为所述鼠标指针移动至屏幕上目标对象且采集的结果为此时用户双手中一单手为掌状,另一单手为拳状;第七指令输出单元,用于若所述检测的结果为所述掌状单手的位置P的变化Z P的方向和所述拳状单手的位置C的变化Z C的方向相反,且所述掌状单手的位置P与所述拳状单手的位置C之间的距离变大,则向所述终端输出第七操作指令以使所述终端根据所述第七操作指令对页面或者所述目标对象执行放大的操作;第八指令输出单元,用于若所述检测的结果为所述掌状单手的位置P的变化Z P的方向和所述拳状单手的位置C的变化Z C的方向相反,且所述掌状单手的位置P与所述拳状单手的位置C之间的距离变小,则向所述终端输出第八操作指令以使所述终端根据所述第八操作指令对页面 或者所述目标对象执行缩小的操作。
【文档编号】G06F3/01GK103440034SQ201310363286
【公开日】2013年12月11日 申请日期:2013年8月19日 优先权日:2013年8月19日
【发明者】庞建新, 程俊 申请人:中国科学院深圳先进技术研究院
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1