掌桥专利:专业的专利平台
掌桥专利
首页

一种新的非接触式人机交互方法及系统

文献发布时间:2023-06-19 09:54:18


一种新的非接触式人机交互方法及系统

技术领域

本发明属于人机交互的技术领域,具体涉及一种新的非接触式人机交互方法及系统。

背景技术

目前,非接触式人机交互技术在互动游戏、互动博物馆、互动旅游馆以及VR/AR(虚拟现实/增强现实)等领域都有着广泛的应用,使用者在电脑显示屏、智能电视等显示区域前用各种非接触式的手势就可以与电子产品进行交互操作,比如可以用手势调节音量,这种无需鼠标操作的人机交互技术具有极大的市场价值及经济价值。

在公开号CN102841679A,发明名称为一种非接触式人机互动方法与装置的专利申请文件中,公开了一种非接触式人机互动的方法与装置,主要是利用了摄像机标定原理,其中需要获取摄像机的位置信息和方向信息计算标定结果,还需要引入重力传感模块和滑动测阻模块,硬件设计较为复杂。

而随着深度摄像机的出现和计算机视觉领域中深度学习技术的发展,基于深度摄像机的人机交互系统也越来越多。深度摄像机与普通摄像机的区别在于,除了能够获取平面图像信息,还可以获得拍摄对象的深度信息,也就是三维的位置和尺寸信息,使得整个计算系统能够获得环境和对象的三维立体数据。深度摄像机具备三维感测与识别的能力,经过进一步深化处理,还可以完成三维建模等应用。

发明内容

本发明实施例的目的在于提供一种新的非接触式人机交互方法,旨在解决现有技术中的利用摄像机标定原理进行非接触式人机交互存在的计算过程复杂并且硬件复杂的问题。

本发明实施例是这样实现的,提供一种新的非接触式人机交互方法,包括如下步骤:

S100、在深度摄像机的二维平面图像中,利用深度学习系统自动检测显示屏幕的三个顶点A、B、C和目标点F,得到各点的平面像素坐标;

S200、结合深度摄像机内参,将顶点A、B、C和目标点F的平面像素坐标转换为深度摄像机坐标系下的三维坐标;

S300、计算目标点F在显示屏幕上的投影点F’在深度摄像机坐标系下的三维坐标;

S400、计算投影点F’在显示屏幕上的平面像素坐标;

S500、识别目标点F的动作,调用相关系统鼠标接口进行鼠标事件触发。

进一步地,所述步骤S100包括如下子步骤:

S110、利用基于深度学习的目标检测算法对显示屏幕的顶点A、B、C进行自动检测,得到各点的平面像素坐标;

S120、建立一个两阶段的目标检测深度神经网络结构,对目标点F进行自动检测,包括:

S121、建立一个目标物体检测深度神经网络,用于检测二维平面图像中的目标物体,对检测到的目标物体区域进行扩展,并根据扩展后的区域定位目标物体;

S122、建立一个目标点检测深度神经网络,用于检测目标物体的目标点,并定位出目标点,得到目标点F的平面像素坐标。

进一步地,所述步骤S120还包括:建立一个双通道注意力机制的神经网络,用于提高检测目标点的定位精度。

进一步地,所述步骤S300包括:

根据顶点A、B、C,计算经过顶点A的屏幕平面的法向量n,根据线段FF’平行于法向量n和线段AF’垂直于法向量n,计算投影点F’的三维坐标。

进一步地,所述步骤S400包括:

计算投影点F’的平面像素坐标中横坐标u与纵坐标v之比,然后结合显示屏幕的屏幕分辨率,得到投影点F’的平面像素坐标。

进一步地,所述步骤S400包括:

分别计算投影点F’到线段AB的距离D

本发明实施例的另一目的在于提供一种新的非接触式人机交互系统,包括计算机、深度摄像机、显示屏幕,计算机分别与深度摄像机和显示屏幕连接,所述系统采用上述新的非接触式人机交互方法进行人机交互。

本发明实施例的又一目的在于提供一种计算机可读存储介质,其存储用于电子数据交换的程序,所述程序用于执行上述新的非接触式人机交互方法。

与现有技术相比,本发明提供的一种新的非接触式人机交互方法及系统的有益效果为:解决了无鼠标环境下利用手指指尖等可检测的目标物体对屏幕内容进行操控的问题,这种新的非接触式人机交互方法无需任何标定,具有计算量小、硬件设备简单的优点。本发明基于深度学习,通过深度摄像机获取二维平面信息、三维深度信息,计算得到目标物体在显示屏幕上的投影的坐标,触发鼠标事件,实现非接触式人机交互。

附图说明

为了更清楚地说明本发明实施例中的技术方案,下面将对实施例技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来说,在不付出创造性劳动的前提下,还可以根据这些附图得到其它的附图。

图1是本发明实施例提供的一种新的非接触式人机交互方法的流程图。

图2是本发明实施例中深度摄像机拍摄到的二维平面图像。

图3是本发明实施例中两阶段的目标检测深度神经网络结构的示意图。

图4是本发明实施例中深度摄像机、手指指尖与显示屏幕的位置关系示意图。

图5是本发明实施例中计算投影点F’在深度摄像机坐标系中的三维坐标的流程图。

图6是本发明实施例中触发鼠标双击事件时手指指尖的当前位置与原始位置的关系示意图。

图7是本发明实施例中触发鼠标双击事件的流程图。

图8是本发明实施例提供的一种新的非接触式人机交互系统的结构示意图。

具体实施方式

为了使本发明要解决的技术问题、技术方案及有益效果更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。

参考图1,图1是本发明实施例提供的一种新的非接触式人机交互方法的流程图,该方法包括以下步骤:

S100、在深度摄像机的二维平面图像中,利用深度学习系统自动检测显示屏幕的三个顶点A、B、C和目标点F,得到各点的平面像素坐标A(ua,va),B(ub,vb),C(uc,vc),F(u0,v0);

S200、结合深度摄像机内参,将各点的平面像素坐标转换为深度摄像机坐标系下的三维坐标,得到各点的三维坐标A(x

S300、计算目标点F在显示屏幕上的投影点F’在深度摄像机坐标系下的三维坐标F’(x′,y′,z′);

S400、计算投影点F’在显示屏幕上的平面像素坐标F’(u,v),包括:

分别计算投影点F’到线段AB的距离D

S500、识别目标点F的动作,在投影点F’的位置显示鼠标标记,调用相关系统鼠标接口进行鼠标事件触发,对显示屏幕进行操控。

图2是本发明实施例中深度摄像机拍摄到的二维平面图像,图像中显示了一块呈长方形的显示屏幕和手势为伸出食指的一只手。在本发明实施例中,将手指指尖作为目标点进行说明,在其他实施例中,还可以选择其他可检测的目标物体作为目标点。

参考图2,上述步骤S100包括如下子步骤:

S110、利用基于深度学习的目标检测算法(比如YOLO算法或SSD算法)对显示屏幕的三个顶点A、B、C进行自动检测,选择显示屏幕的三个顶点A、B、C构成屏幕平面,并以顶点A作为屏幕平面的像素坐标系的原点,得到各点的平面像素坐标A(ua,va),B(ub,vb),C(uc,vc);

S120、参考图3,建立一个两阶段的目标检测深度神经网络结构,对手指指尖F进行自动检测,包括:

S121、建立一个手指检测深度神经网络,用于检测二维平面图像中的手指,对检测到的手指区域进行扩展,并根据扩展后的区域定位手指;

S122、建立一个指尖检测深度神经网络,用于检测手指的指尖,并定位出指尖,得到手指指尖F的平面像素坐标F(u0,v0)。

为了提高检测指尖的定位精度,本发明实施例还建立了一个双通道注意力机制的神经网络。注意力机制是一种模拟人脑注意力的模型,利用有限的注意力快速筛选出重要信息,从而提高人脑在处理视觉信息上的效率与准确率。

参考图4,图4是本发明实施例中深度摄像机、手指指尖与显示屏幕的位置示意图。图中显示了手指指尖F在显示屏幕的投影点F’。

参考图5,上述步骤S300包括如下子步骤:

S310、根据顶点A、B、C,计算经过顶点A的屏幕平面的法向量n=(a,b,c),其中:

a=y

b=z

c=x

S320、设投影点F’在深度摄像机坐标系下的三维坐标为F’(x′,y′,z′),根据线段FF’平行于法向量n,得到方程组:

S330、根据线段AF’垂直于法向量n,得到方程:

a(x′-x

S340、联立方程组(*)和方程(**),得到t,将t代入方程组(*),即得到投影点F’的三维坐标F’(x′,y′,z′)。

具体地,上述步骤S500中的所述识别目标点F的动作包括:

当其他顶点A、B、C均固定不变时,使用者移动手指,利用上述步骤S100到S200重新计算手指指尖F的三维坐标。其中,目标点F的动作包括点击、双击、保持按下状态、按下后被释放等,对应触发的所述鼠标事件包括鼠标点击事件(click)、鼠标双击事件(dbclick)、鼠标按钮被按下时触发的事件(mousedown)、鼠标按钮被释放时触发的事件(mouseup)。

下面以触发鼠标双击事件为例进行说明。

图6是本发明实施例中触发鼠标双击事件时手指指尖的当前位置与手指指尖原始位置的关系示意图,图中D1、D2分别为手指指尖的当前位置到原始位置的距离,D1>D2。参考图6,本发明实施例中双击动作的定义为:手指指尖离开原始位置后又回到原始位置附近,所述手指指尖离开原始位置的定义为:手指指尖的位置与原始位置的距离大于D1,所述手指指尖回到原始位置附近的定义为:手指指尖的位置与原始位置的距离小于D2。

图7是本发明实施例中触发鼠标双击事件的流程图。参考图7,由于鼠标双击事件一般会在2秒内结束,这样在50帧图像序列内会出现一个点击动作。本发明实施例中通过每5帧图像检测手指指尖的坐标,并设置标记FAR=TRUE为第tn帧图像的指尖坐标与原始位置的距离大于D1,设置标记NEAR=TRUE为第tm帧(0

首先读取图像,判断是否距离FAR=TRUE过去了50帧图像也没有NEAR=TRUE,若是,则设置FAR=FALSE并且NEAR=FALSE,即如果第tn帧图像的手指指尖在离开原始位置后,直到第(tn+50)帧图像的手指指尖都没有回到原始位置附近,则对第tn帧图像的手指指尖进行归位;若否,则每5帧图像检测手指指尖的坐标,当检测到的手指指尖的坐标满足FAR=TRUE时,继续检测,直到手指指尖的坐标还满足NEAR=TRUE时,触发鼠标双击事件,并设置FAR=FALSE并且NEAR=FALSE,重复以上步骤。

设原始位置的手指指尖的三维坐标为(x

(x

(x

本发明实施例提供了一种非接触式人机交互方法,用以解决无鼠标环境下利用手指指尖等可检测的目标物体对屏幕内容进行操控的问题。这种新的非接触式人机交互方法无需任何标定,而是基于深度学习,通过深度摄像机获取二维平面信息、三维深度信息,计算得到目标物体在显示屏幕上的投影的坐标,触发鼠标事件,实现非接触式人机交互。具有计算量小、硬件设备简单的优点。

参考图8,本发明实施例还提供了一种新的非接触式人机交互系统,包括:计算机、深度摄像机、显示屏幕,计算机分别与深度摄像机和显示屏幕连接。该系统采用上述实施例的方法进行人机交互。深度摄像机采集显示屏幕的顶点的位置信息和目标点的位置信息,计算机用于根据深度摄像机采集到的位置信息计算目标点在显示屏幕上的投影的位置信息,并调用相关系统鼠标接口进行鼠标事件触发,对显示屏幕进行操控。

本发明实施例还提供一种计算机可读存储介质,其存储用于电子数据交换的程序,程序用于执行本发明的新的非接触式人机交互方法。

以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的原则之内所作的任何修改、等同替换和改进等,均应包含在本发明的保护范围之内。

相关技术
  • 一种新的非接触式人机交互方法及系统
  • 一种非接触式人机交互方法和系统
技术分类

06120112346476