CN104020853A - 基于Kinect的操纵网络浏览器的***及方法 - Google Patents

基于Kinect的操纵网络浏览器的***及方法 Download PDF

Info

Publication number
CN104020853A
CN104020853A CN201410283898.8A CN201410283898A CN104020853A CN 104020853 A CN104020853 A CN 104020853A CN 201410283898 A CN201410283898 A CN 201410283898A CN 104020853 A CN104020853 A CN 104020853A
Authority
CN
China
Prior art keywords
event
information
interbedded formation
interface
kinect
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.)
Pending
Application number
CN201410283898.8A
Other languages
English (en)
Inventor
张庆丰
董侠
张嘉昕
汤中伟
林烈峰
容玉钿
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Jinan University
Original Assignee
Jinan University
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Jinan University filed Critical Jinan University
Priority to CN201410283898.8A priority Critical patent/CN104020853A/zh
Publication of CN104020853A publication Critical patent/CN104020853A/zh
Pending legal-status Critical Current

Links

Landscapes

  • User Interface Of Digital Computer (AREA)

Abstract

本发明公开了一种基于Kinect的操纵网络浏览器的***及方法,通过支撑层、逻辑处理层和交互层三层体系结构实现,所述***包括数据流接收模块、动作信息获取模块、动作信息处理模块和显示模块;所述方法包括在支撑层接收Kinect传感器的原始数据流;通过Kinect传感器的原始数据流获取用户的相关信息,并根据用户的相关信息触发相应的事件,将与事件对应的动作信息发送给逻辑处理层;在逻辑处理层对支撑层发送的动作信息进行处理,并将处理结果发送给交互层;在交互层利用浏览界面或输入界面显示逻辑处理层发送的处理结果。本发明***及方法在用Kinect操纵网络浏览器时,可以通过手势实现对网络浏览器的基本控制和文本信息的输入。

Description

基于Kinect的操纵网络浏览器的***及方法
技术领域
本发明涉及一种操纵网络浏览器的***及方法,尤其是一种基于Kinect的操纵网络浏览器的***及方法。属于人机交互领域。
背景技术
2010年,微软公司正式发布了Kinect。Kinect是一款新型3D体感摄像设备。它可以获得骨骼、深度等原始感测数据流,对人的动作进行追踪和检测,以完成对计算机的控制。这种即时动态捕捉用户的肢体信息实现的人机交互方式具有一定的革命意义。同时,Kinect因其紧凑的,廉价的和易于使用的特点,必定会在世界范围内普及,成为一款家用的计算机辅助设备。
目前,市面上存在一些针对Kinect且与网络浏览器有关的应用开发,具体如下:
1)微软研究院有一个免费的JavaScript API——Kinected Browser。Kinect的数据可用于JavaScript或者DOM的编程。Xbox360上的IE浏览器可以使用Kinect手势操作。麻省理工学院的一个团队开发了Depthjs,允许使用Kinect进行网页浏览操作,包括点击、前进、后退、页面滚动、平移和放大。但是,这些项目都没有实现手势输入,用户进行网页浏览时难免会遇到需要进行输入的时候,如果要求用户使用手势来操作网页浏览器,而使用键盘进行输入,这显然是非常别扭的,不便于人机交互。
2)中国专利申请号为201110388900.4的基于手势识别的会议演示交互方法,它是通过采集图像中演示控制区域内的数据,识别身处演示控制区域内用户的手势,然后从控制手势集合中获取对应的控制命令,并通过其控制会议演示内容的输出。但演示者只能控制PPT的前进、后退、播放、停止等,并不能在PPT上进行标记操作,即不能在PPT上书写,也没有提供一些辅助的功能例如放大镜等,对于远程操作者来说会造成一定的操作难度。
3)中国专利申请号为201180061879.5的发明是英特尔公司提出的用于与网络浏览器上的内容交互的方法、装置和***,它提出的是一种宏观的概念,而且重点研究用户手势的识别,工具也不只是针对Kinect。
发明内容
本发明的目的是为了解决上述现有技术的缺陷,提供一种基于Kinect的操纵网络浏览器的***,该***在用Kinect操纵网络浏览器时,可以通过手势实现对网络浏览器的基本控制和文本信息的输入。
本发明的另一目的在于提供一种基于Kinect的操纵网络浏览器的方法。
本发明的目的可以通过采取如下技术方案达到:
基于Kinect的操纵网络浏览器的***,所述***通过支撑层、逻辑处理层和交互层三层体系结构实现,具体包括:
数据流接收模块,用于在支撑层接收Kinect传感器的原始数据流;
动作信息获取模块,用于在支撑层通过Kinect传感器的原始数据流获取用户的相关信息,并根据用户的相关信息触发相应的事件,将与事件对应的动作信息发送给逻辑处理层;
动作信息处理模块,用于在逻辑处理层对支撑层发送的动作信息进行处理,并将处理结果发送给交互层;
显示模块,用于在交互层利用浏览界面或输入界面显示逻辑处理层发送的处理结果。
作为一种优选方案,所述数据流接收模块中接收的原始数据流包括彩色图像数据流、深度图像数据流和骨骼信息数据流。
作为一种优选方案,所述动作信息获取模块具体包括:
数据流获取单元,用于获取深度图像数据流和骨骼信息数据流;
坐标转换单元,用于自动追踪用户手部的移动,并把深度坐标和骨骼坐标转换成二维的坐标,将手部的位置映射为屏幕上的坐标点;
信息提取单元,用于将从深度图像数据流和骨骼信息数据流中提取的信息进行保存;
手部状态判断单元,用于实时监听手部状态,并对手部状态进行判断,当手部处于握拳状态时,触发输入事件,将输入信息发送给逻辑处理层;当手部位置的Z坐标发生变化而XY坐标变化较小时,触发按压点击事件,将按压点击信息发送给逻辑处理层。
作为一种优选方案,所述动作信息处理模块具体包括:
输入信息判断与处理单元,用于对支撑层发送的输入信息进行判断,若输入信息是在浏览界面的手势信息,根据转换表将手势映射为实际的操作,并向交互层发送操作结果;若输入信息是在输入界面的轨迹信息,根据手部移动过程的数据信息生成墨迹集合,对墨迹进行分析,并向交互层发送墨迹信息和候选字集合;
按压点击信息判断与处理单元,用于对支撑层发送的按压点击信息进行判断,若按压点击信息是在浏览界面按压放大按钮、前进按钮、后退按钮或输入界面切换按钮的点击信息,或是在输入界面按压中英文切换按钮、识别按钮或浏览界面切换按钮的点击信息,触发相应的事件,并且这个事件触发另一个可为交互层接收到并作出响应的事件;若按压点击信息是在浏览界面按压悬停按钮的点击信息,开启定时器,收集若干个手部的位置点信息,当定时器的时间为1.5秒且所有位置点都在一个小范围内,判断为悬停点击,计算所有位置点的平均值确定点击的目标位置,然后发送目标位置信息给交互层。
作为一种优选方案,所述显示模块,具体如下:
用于当交互层接收到的是向上或向下挥手的手势信息,则在浏览界面向上或向下滚动网页页面;当交互层接收到的是墨迹信息,则输入界面的画板的输入区域上显示手写笔迹,或将手写笔迹清除;当交互层接收到的是放大按钮的事件,则在浏览界面将网页页面放大;当交互层接收到的是前进按钮或后退按钮的事件,则在浏览界面进行网页页面跳转;当交互层接收到的是输入界面切换的事件,则将浏览界面切换成输入界面;当交互层接收到的是中英文切换按钮的事件,则在输入界面将中文切换为英文,或将英文切换为中文;当交互层接收到的是识别按钮的事件,则在输入界面生成候选字;当交互层接收到的是浏览界面切换按钮的事件,则将浏览界面切换成输入界面;当交互层接收到的是悬停点击的目标位置信息,则在浏览界面的目标位置触发鼠标点击事件。
本发明的另一目的可以通过采取如下技术方案达到:
基于Kinect的操纵网络浏览器的方法,所述方法通过支撑层、逻辑处理层和交互层三层体系结构实现,具体包括:
在支撑层接收Kinect传感器的原始数据流;
在支撑层通过Kinect传感器的原始数据流获取用户的相关信息,并根据用户的相关信息触发相应的事件,将与事件对应的动作信息发送给逻辑处理层;
在逻辑处理层对支撑层发送的动作信息进行处理,并将处理结果发送给交互层;
在交互层利用浏览界面或输入界面显示逻辑处理层发送的处理结果。
作为一种优选方案,所述原始数据流包括彩色图像数据流、深度图像数据流和骨骼信息数据流。
作为一种优选方案,所述在支撑层通过Kinect传感器的原始数据流获取用户的相关信息,并根据用户的相关信息触发相应的事件,将与事件对应的动作信息发送给逻辑处理层,具体包括:
获取深度图像数据流和骨骼信息数据流;
自动追踪用户手部的移动,并把深度坐标和骨骼坐标转换成二维的坐标,将手部的位置映射为屏幕上的坐标点;
将从深度图像数据流和骨骼信息数据流中提取的信息进行保存;
实时监听手部状态,并对手部状态进行判断,当手部处于握拳状态时,触发输入事件,将输入信息发送给逻辑处理层;当手部位置的Z坐标发生变化而XY坐标变化较小时,触发按压点击事件,将按压点击信息发送给逻辑处理层。
作为一种优选方案,所述在逻辑处理层对支撑层发送的动作信息进行处理,并将处理结果发送给交互层,具体包括:
对支撑层发送的输入信息进行判断,若输入信息是在浏览界面的手势信息,根据转换表将手势映射为实际的操作,并向交互层发送操作结果;若输入信息是在输入界面的轨迹信息,根据手部移动过程的数据信息生成墨迹集合,对墨迹进行分析,并向交互层发送墨迹信息和候选字集合;
对支撑层发送的按压点击信息进行判断,若按压点击信息是在浏览界面按压放大按钮、前进按钮、后退按钮或输入界面切换按钮的点击信息,或是在输入界面按压中英文切换按钮、识别按钮或浏览界面切换按钮的点击信息,触发相应的事件,并且这个事件触发另一个可为交互层接收到并作出响应的事件;若按压点击信息是在浏览界面按压悬停按钮的点击信息,开启定时器,收集若干个手部的位置点信息,当定时器的时间为1.5秒且所有位置点都在一个小范围内,判断为悬停点击,计算所有位置点的平均值确定点击的目标位置,然后发送目标位置信息给交互层。
作为一种优选方案,所述在交互层利用浏览界面或输入界面显示逻辑处理层发送的处理结果,具体如下:
当交互层接收到的是向上或向下挥手的手势信息,则在浏览界面向上或向下滚动网页页面;当交互层接收到的是墨迹信息,则输入界面的画板的输入区域上显示手写笔迹,或将手写笔迹清除;当交互层接收到的是放大按钮的事件,则在浏览界面将网页页面放大;当交互层接收到的是前进按钮或后退按钮的事件,则在浏览界面进行网页页面跳转;当交互层接收到的是输入界面切换的事件,则将浏览界面切换成输入界面;当交互层接收到的是中英文切换按钮的事件,则在输入界面将中文切换为英文,或将英文切换为中文;当交互层接收到的是识别按钮的事件,则在输入界面生成候选字;当交互层接收到的是浏览界面切换按钮的事件,则将浏览界面切换成输入界面;当交互层接收到的是悬停点击的目标位置信息,则在浏览界面的目标位置触发鼠标点击事件。
本发明相对于现有技术具有如下的有益效果:
1、本发明***及方法设置了浏览界面和输入界面,使用户能用手势进行文字输入或浏览网页,并分为支撑层、逻辑处理层和交互层三层体现结构,耦合度小,操作更加稳定,实现思路也比较清晰,可以广泛应用于网络浏览器的操作上。
2、本发明***及方法在用Kinect操纵网络浏览器时,可以通过手势实现对网络浏览器的基本控制和文本信息的输入,基本控制包括点击链接、将页面放大、进行页面跳转、滚动页面,文本输入支持中文和英文,克服了现有用Kinect操纵网络浏览器的***只有手势控制而没有手势输入的不足之处。
附图说明
图1为本发明***的体系结构框图。
图2为本发明***的浏览界面示意图
图3为本发明***的输入界面示意图。
图4为本发明***的动作信息获取流程图。
图5为本发明***的悬停点击实现流程图。
图6为本发明***的用户操作流程图。
具体实施方式
实施例1:
如图1所示,本实施例的基于Kinect的操纵网络浏览器的***通过支撑层、逻辑处理层和交互层三层体系结构实现,在支撑层上有数据流接收模块和动作信息获取模块,在逻辑处理层上有动作信息处理模块,在交互层上有显示模块,显示模块含浏览界面和输入界面;输入界面如图2所示,主要提供画板给用户书写,并设置了包含中英文切换按钮、识别按钮和浏览界面切换按钮这三个按钮的菜单栏,浏览界面如图3所示,也设置了放大按钮、前进按钮、后退按钮、悬停点击按钮、输入界面切换按钮这五个按钮的菜单栏,两个界面都各有一个手形图标(即用户的手部骨骼点在界面上的展现)和KinectUserViewer控件(展示人物在Kinect中的深度影像),这两个控件可以给用户一些全局的反馈,表示当前***运行正常;其中:
1)支撑层的实现
数据流接收模块,用于在支撑层接收Kinect传感器的原始数据流;该模块通过Kinect SDK可以直接获取Kinect传感器的原始数据流,并在此基础上进行较为底层的应用开发,从Kinect获得的数据流包括彩色图像数据流、骨骼信息数据流和深度图像数据流,这些数据流都是由数据帧构成,通过建立缓冲区,应用程序可以把数据帧保存起来,而获取数据帧的方法有两种,分别是轮询模型和事件模型,本实施例的***主要使用事件模型,使用时先注册数据流的FrameReady事件,每当事件触发时,将会调用事件的属性FrameReadyEventArgs来获取数据帧,而且事件模型不需要其他的检查和异常处理。
动作信息获取模块,用于在支撑层通过Kinect传感器的原始数据流获取用户的相关信息,并根据用户的相关信息触发相应的事件,将与事件对应的动作信息(输入信息和按压点击信息)发送给逻辑处理层;该模块获取动作信息的流程如图4所示,具体包括数据流获取单元、坐标转换单元、信息提取单元和手部状态判断单元;其中:
数据流获取单元,用于通过注册DepthFrameReady和SkeletonFrameReady事件,获取深度图像数据流和骨骼信息数据流;
坐标转换单元,用于自动追踪用户手部的移动,并把深度坐标和骨骼坐标转换成二维的坐标,将手部的位置映射为屏幕上的坐标点;
信息提取单元,用于通过注册InteractionFrameReady事件,将从深度图像数据流和骨骼信息数据流中提取的信息进行保存;这些信息包括时间戳(每个数据帧被获取时的时间)、手部信息(状态和位置)和用户ID(信息属于哪个用户);
手部状态判断单元,用于利用Interaction流实时监听手部状态,并对手部状态进行判断,当手部处于握拳状态时,触发输入事件,将输入信息发送给逻辑处理层;当手部位置的Z坐标发生变化而XY坐标变化较小时,触发按压点击事件,将按压点击信息发送给逻辑处理层;由于动作信息都被存储起来了,在需要时,逻辑处理层可以从Interaction流中获取这些信息,并作相关的处理。
2)逻辑处理层的实现
动作信息处理模块,用于在逻辑处理层对支撑层发送的动作信息进行处理,并将处理结果发送给交互层;该模块具体包括输入信息判断与处理单元,其中:
输入信息判断与处理单元,用于对支撑层发送的输入信息进行判断,若输入信息是在浏览界面的手势信息,根据转换表将手势映射为实际的操作,并向交互层发送操作结果;若输入信息是在输入界面的轨迹信息,根据手部移动过程的数据信息生成墨迹集合,对墨迹进行分析,并向交互层发送墨迹信息和候选字集合;
关于轨迹信息的处理,需要调用InkAnalyzer类,该类是专门用来分析墨迹的一个类,提供布局分析、书写和绘制分类以及手写识别的访问等功能;其中,添加墨迹和移除墨迹需要使用AddStroke方法和RemoveStroke方法,Analyze()方法启动同步墨迹分析操作;墨迹分析包括布局分析、书写和绘制分类以及手写识别,而GetAltemates()方法可以获得备选的分析结果,通过使用InkAnalyzer类能得到很高的识别率。
当支撑层传来输入信息时,表示输入开始,因为手部是在输入界面的画板上移动,且记录的是每个时间点手部的位置点,所以要先进行类型转换,将Point类型转化为Stroke类型,然后对Stroke利用Recognize函数进行分析和识别,用伪代码描述如下:
1)  Function Begin
2)  if没有输入
3)     返回空候选集
4)  else
5)     调用GetCombinedStore(strokes)函数获取墨迹
6)     新建类InkAnalyzer对象
7)     调用类方法AddStroke将墨迹添加到对象中
8)     调用类方法SetStrokeType设置墨迹类型
9)     调用类方法Analyze开始分析墨迹
10)    if分析成功
11)        返回候选集
12)    else
13)        释放InkAnalyzer使用的所有资源
14)        返回空候选集
15)    endif
16)  endif
17)  Function End
针对集合中的每一个候选字,制作成一个KinectTileButton,所有按钮集中在一个ScrollViewer控件中,在输入界面拖动滚动条并按压按钮就能选择所需要的字符。
按压点击信息判断与处理单元,用于对支撑层发送的按压点击信息进行判断,若按压点击信息是在浏览界面按压放大按钮、前进按钮、后退按钮或输入界面切换按钮的点击信息,或是在输入界面按压中英文切换按钮、识别按钮或浏览界面切换按钮的点击信息,按压放大按钮、前进按钮、后退按钮、输入界面切换按钮等都是Kinect支持的KinectTileButton,并且这个事件触发另一个可为交互层接收到并作出响应的事件;若按压点击信息是在浏览界面按压悬停按钮的点击信息,如图5所示,开启定时器,收集若干个手部的位置点信息,当定时器的时间为1.5秒且所有位置点都在一个小范围内,判断为悬停点击,计算所有位置点的平均值确定点击的目标位置,然后发送目标位置信息给交互层,这是针对网页的元素或者是浏览器功能菜单所设计的一种悬停点击模式。
3)交互层的实现
显示模块,用于在交互层利用浏览界面或输入界面显示逻辑处理层发送的处理结果,具体如下:
用于当交互层接收到的是向上或向下挥手的手势信息,则在浏览界面向上或向下滚动网页页面;当交互层接收到的是墨迹信息,则输入界面的画板的输入区域上显示手写笔迹,或将手写笔迹清除;当交互层接收到的是放大按钮的事件,则在浏览界面将网页页面;当交互层接收到的是前进按钮或后退按钮的事件,则在浏览界面进行网页页面跳转;当交互层接收到的是输入界面切换的事件,则将浏览界面切换成输入界面;当交互层接收到的是中英文切换按钮的事件,则在输入界面将中文切换为英文,或将英文切换为中文;当交互层接收到的是识别按钮的事件,则在输入界面生成候选字;当交互层接收到的是浏览界面切换按钮的事件,则将浏览界面切换成输入界面;当交互层接收到的是悬停点击的目标位置信息,如图5所示,则在浏览界面的目标位置触发鼠标点击事件。
关于输入界面的设计,核心是创建一个面板,使手部也能像鼠标一样在画板上书写;首先,Kinect具有Kinect Interactions(手势识别)、手掌前推可实现按键(Push-to-Press)、抓握手势可实现平移(Grip-to-Pan)等功能,使用的前提是需要在界面上添加一个KinectRegion容器类,KinectRegion是WPF中使用Kinect Interaction进行交互的关键元素,是其它Kinect interaction控件的容器,KinectRegion也负责展示和移动手形图标,即用户的手部骨骼点在界面上的展现。应用程序主界面上可以有多个KinectRegion,但是每个KinectRegion不能够嵌套,每一个KinectRegion中可以有自己的Kinect sensor对象;因此,交互层主要由一个KinectRegion容器组成,上面放有画板和按钮等控件。
传统的画板是定义接收和显示墨迹笔划的区域,由InkCanvas类来控制的,鼠标可以在上面移动和书写,为了实现手部与鼠标绑定并能在画板上显示,就必须在InkCanvas类上添加对Kinect的支持,所以新建了一个Kinectinkcanve类,是继承InkCanvas类的,增加了一些用于识别手部动作的方法。其中InitializeKinectinkcanva是核心方法,调用KinectRegion容器所具有的手势操作,使画板也能识别出手势;另外,当手部状态发生变化时,OnKinectRegionChanged方法会更新数据,并同步给画板,通过Kinectinkcanve类,画板能显示手部和移动手形图标,并且由于画板的原生功能,手部也能像鼠标那样在画板上涂写了。
如图2、图3和图6所示,本实施例的基于Kinect的操纵网络浏览器的***用户操作步骤如下:
S1、连接Kinect,打开***和浏览器;
S2、切换到浏览界面,按压悬停点击按钮,开启悬停点击模式;
S3、将手部移动到地址栏或搜索栏上,悬停1.5秒;
S4、获得输入焦点,切换到输入界面,通过中英文切换按钮选择中文或英文模式,准备进行手写输入;
S5、握拳,开始书写,手部的移动轨迹会被记录,同时输入界面上的输入区域1会显示手写笔迹,直到松拳结束;
S6、若需要重写,可以握拳向右画线清除笔迹,然后重新输入;否则,按压识别按钮,输入界面下方就会出现若干个候选字构成的候选字区域2,可以拖动滚动条3并按压候选字按钮选择所需要的字符;
S7、选择所需要的字符后,若完成输入,切换到浏览界面;否则,返回步骤S5继续输入;
S8、处于浏览界面时,通过悬停点击的方式进入所需要的页面(即所输入文字信息对应的页面),此时可以执行的操作有:通过悬停点击的方式点击浏览器的菜单项和页面元素、向上挥手或向下挥手来滚动页面、利用放大按钮进行页面放大、利用前进按钮或后退按钮进行页面跳转;若需要进行文字输入时,可以在输入的地方上悬停1.5秒,采用步骤S3~S6的方法进行输入;若用户不需要继续浏览页面,在浏览完毕后,关闭***并断开Kinect连接。
实施例2:
本实施例的基于Kinect的操纵网络浏览器的方法与实施例1的***对应,同样通过支撑层、逻辑处理层和交互层三层体系结构实现,具体包括:
在支撑层接收Kinect传感器的原始数据流,所述原始数据流包括彩色图像数据流、深度图像数据流和骨骼信息数据流;
在支撑层通过Kinect传感器的原始数据流获取用户的相关信息,并根据用户的相关信息触发相应的事件,将与事件对应的动作信息发送给逻辑处理层;
在逻辑处理层对支撑层发送的动作信息进行处理,并将处理结果发送给交互层;
在交互层利用浏览界面或输入界面显示逻辑处理层发送的处理结果。
所述在支撑层通过Kinect传感器的原始数据流获取用户的相关信息,并根据用户的相关信息触发相应的事件,将与事件对应的动作信息发送给逻辑处理层,具体包括:
获取深度图像数据流和骨骼信息数据流;
自动追踪用户手部的移动,并把深度坐标和骨骼坐标转换成二维的坐标,将手部的位置映射为屏幕上的坐标点;
将从深度图像数据流和骨骼信息数据流中提取的信息进行保存;
实时监听手部状态,并对手部状态进行判断,当手部处于握拳状态时,触发输入事件,将输入信息发送给逻辑处理层;当手部位置的Z坐标发生变化而XY坐标变化较小时,触发按压点击事件,将按压点击信息发送给逻辑处理层。
所述在逻辑处理层对支撑层发送的动作信息进行处理,并将处理结果发送给交互层,具体包括:
对支撑层发送的输入信息进行判断,若输入信息是在浏览界面的手势信息,根据转换表将手势映射为实际的操作,并向交互层发送操作结果;若输入信息是在输入界面的轨迹信息,根据手部移动过程的数据信息生成墨迹集合,对墨迹进行分析,并向交互层发送墨迹信息和候选字集合;
对支撑层发送的按压点击信息进行判断,若按压点击信息是在浏览界面按压放大按钮、前进按钮、后退按钮或输入界面切换按钮的点击信息,或是在输入界面按压中英文切换按钮、识别按钮或浏览界面切换按钮的点击信息,触发相应的事件,并且这个事件触发另一个可为交互层接收到并作出响应的事件;若按压点击信息是在浏览界面按压悬停按钮的点击信息,开启定时器,收集若干个手部的位置点信息,当定时器的时间为1.5秒且所有位置点都在一个小范围内,判断为悬停点击,计算所有位置点的平均值确定点击的目标位置,然后发送目标位置信息给交互层。
所述在交互层利用浏览界面或输入界面显示逻辑处理层发送的处理结果,具体如下:
当交互层接收到的是向上或向下挥手的手势信息,则在浏览界面向上或向下滚动网页页面;当交互层接收到的是墨迹信息,则输入界面的画板的输入区域上显示手写笔迹,或将手写笔迹清除;当交互层接收到的是放大按钮的事件,则在浏览界面将网页页面放大;当交互层接收到的是前进按钮或后退按钮的事件,则在浏览界面进行网页页面跳转;当交互层接收到的是输入界面切换的事件,则将浏览界面切换成输入界面;当交互层接收到的是中英文切换按钮的事件,则在输入界面将中文切换为英文,或将英文切换为中文;当交互层接收到的是识别按钮的事件,则在输入界面生成候选字;当交互层接收到的是浏览界面切换按钮的事件,则将浏览界面切换成输入界面;当交互层接收到的是悬停点击的目标位置信息,则在浏览界面的目标位置触发鼠标点击事件。
本领域普通技术人员可以理解实现上述实施例的***及方法中的全部或部分步骤可以通过程序来指令相关的硬件来完成,相应的程序可以存储于一计算机可读取存储介质中,所述的存储介质,如ROM/RAM、磁盘或光盘等。
综上所述,本发明***及方法设置了浏览界面和输入界面,使用户能用手势进行文字输入或浏览网页,并分为支撑层、逻辑处理层和交互层三层体现结构,耦合度小,操作更加稳定,实现思路也比较清晰,可以广泛应用于网络浏览器的操作上。
以上所述,仅为本发明专利较佳的实施例,但本发明专利的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明专利所公开的范围内,根据本发明专利的技术方案及其发明专利构思加以等同替换或改变,都属于本发明专利的保护范围。

Claims (10)

1.基于Kinect的操纵网络浏览器的***,其特征在于所述***通过支撑层、逻辑处理层和交互层三层体系结构实现,具体包括:
数据流接收模块,用于在支撑层接收Kinect传感器的原始数据流;
动作信息获取模块,用于在支撑层通过Kinect传感器的原始数据流获取用户的相关信息,并根据用户的相关信息触发相应的事件,将与事件对应的动作信息发送给逻辑处理层;
动作信息处理模块,用于在逻辑处理层对支撑层发送的动作信息进行处理,并将处理结果发送给交互层;
显示模块,用于在交互层利用浏览界面或输入界面显示逻辑处理层发送的处理结果。
2.根据权利要求1所述的基于Kinect的操纵网络浏览器的***,其特征在于:所述数据流接收模块中接收的原始数据流包括彩色图像数据流、深度图像数据流和骨骼信息数据流。
3.根据权利要求2所述的基于Kinect的操纵网络浏览器的***,其特征在于:所述动作信息获取模块具体包括:
数据流获取单元,用于获取深度图像数据流和骨骼信息数据流;
坐标转换单元,用于自动追踪用户手部的移动,并把深度坐标和骨骼坐标转换成二维的坐标,将手部的位置映射为屏幕上的坐标点;
信息提取单元,用于将从深度图像数据流和骨骼信息数据流中提取的信息进行保存;
手部状态判断单元,用于实时监听手部状态,并对手部状态进行判断,当手部处于握拳状态时,触发输入事件,将输入信息发送给逻辑处理层;当手部位置的Z坐标发生变化而XY坐标变化较小时,触发按压点击事件,将按压点击信息发送给逻辑处理层。
4.根据权利要求3所述的基于Kinect的操纵网络浏览器的***,其特征在于:所述动作信息处理模块具体包括:
输入信息判断与处理单元,用于对支撑层发送的输入信息进行判断,若输入信息是在浏览界面的手势信息,根据转换表将手势映射为实际的操作,并向交互层发送操作结果;若输入信息是在输入界面的轨迹信息,根据手部移动过程的数据信息生成墨迹集合,对墨迹进行分析,并向交互层发送墨迹信息和候选字集合;
按压点击信息判断与处理单元,用于对支撑层发送的按压点击信息进行判断,若按压点击信息是在浏览界面按压放大按钮、前进按钮、后退按钮或输入界面切换按钮的点击信息,或是在输入界面按压中英文切换按钮、识别按钮或浏览界面切换按钮的点击信息,触发相应的事件,并且这个事件触发另一个可为交互层接收到并作出响应的事件;若按压点击信息是在浏览界面按压悬停按钮的点击信息,开启定时器,收集若干个手部的位置点信息,当定时器的时间为1.5秒且所有位置点都在一个小范围内,判断为悬停点击,计算所有位置点的平均值确定点击的目标位置,然后发送目标位置信息给交互层。
5.根据权利要求4所述的基于Kinect的操纵网络浏览器的***,其特征在于:所述显示模块,具体如下:
用于当交互层接收到的是向上或向下挥手的手势信息,则在浏览界面向上或向下滚动网页页面;当交互层接收到的是墨迹信息,则输入界面的画板的输入区域上显示手写笔迹,或将手写笔迹清除;当交互层接收到的是放大按钮的事件,则在浏览界面将网页页面放大;当交互层接收到的是前进按钮或后退按钮的事件,则在浏览界面进行网页页面跳转;当交互层接收到的是输入界面切换的事件,则将浏览界面切换成输入界面;当交互层接收到的是中英文切换按钮的事件,则在输入界面将中文切换为英文,或将英文切换为中文;当交互层接收到的是识别按钮的事件,则在输入界面生成候选字;当交互层接收到的是浏览界面切换按钮的事件,则将浏览界面切换成输入界面;当交互层接收到的是悬停点击的目标位置信息,则在浏览界面的目标位置触发鼠标点击事件。
6.基于Kinect的操纵网络浏览器的方法,其特征在于所述方法通过支撑层、逻辑处理层和交互层三层体系结构实现,具体包括:
在支撑层接收Kinect传感器的原始数据流;
在支撑层通过Kinect传感器的原始数据流获取用户的相关信息,并根据用户的相关信息触发相应的事件,将与事件对应的动作信息发送给逻辑处理层;
在逻辑处理层对支撑层发送的动作信息进行处理,并将处理结果发送给交互层;
在交互层利用浏览界面或输入界面显示逻辑处理层发送的处理结果。
7.根据权利要求6所述的基于Kinect的操纵网络浏览器的方法,其特征在于:所述原始数据流包括彩色图像数据流、深度图像数据流和骨骼信息数据流。
8.根据权利要求7所述的基于Kinect的操纵网络浏览器的方法,其特征在于:所述在支撑层通过Kinect传感器的原始数据流获取用户的相关信息,并根据用户的相关信息触发相应的事件,将与事件对应的动作信息发送给逻辑处理层,具体包括:
获取深度图像数据流和骨骼信息数据流;
自动追踪用户手部的移动,并把深度坐标和骨骼坐标转换成二维的坐标,将手部的位置映射为屏幕上的坐标点;
将从深度图像数据流和骨骼信息数据流中提取的信息进行保存;
实时监听手部状态,并对手部状态进行判断,当手部处于握拳状态时,触发输入事件,将输入信息发送给逻辑处理层;当手部位置的Z坐标发生变化而XY坐标变化较小时,触发按压点击事件,将按压点击信息发送给逻辑处理层。
9.根据权利要求8所述的基于Kinect的操纵网络浏览器的方法,其特征在于:所述在逻辑处理层对支撑层发送的动作信息进行处理,并将处理结果发送给交互层,具体包括:
对支撑层发送的输入信息进行判断,若输入信息是在浏览界面的手势信息,根据转换表将手势映射为实际的操作,并向交互层发送操作结果;若输入信息是在输入界面的轨迹信息,根据手部移动过程的数据信息生成墨迹集合,对墨迹进行分析,并向交互层发送墨迹信息和候选字集合;
对支撑层发送的按压点击信息进行判断,若按压点击信息是在浏览界面按压放大按钮、前进按钮、后退按钮或输入界面切换按钮的点击信息,或是在输入界面按压中英文切换按钮、识别按钮或浏览界面切换按钮的点击信息,触发相应的事件,并且这个事件触发另一个可为交互层接收到并作出响应的事件;若按压点击信息是在浏览界面按压悬停按钮的点击信息,开启定时器,收集若干个手部的位置点信息,当定时器的时间为1.5秒且所有位置点都在一个小范围内,判断为悬停点击,计算所有位置点的平均值确定点击的目标位置,然后发送目标位置信息给交互层。
10.根据权利要求9所述的基于Kinect的操纵网络浏览器的方法,其特征在于:所述在交互层利用浏览界面或输入界面显示逻辑处理层发送的处理结果,具体如下:
当交互层接收到的是向上或向下挥手的手势信息,则在浏览界面向上或向下滚动网页页面;当交互层接收到的是墨迹信息,则输入界面的画板的输入区域上显示手写笔迹,或将手写笔迹清除;当交互层接收到的是放大按钮的事件,则在浏览界面将网页页面放大;当交互层接收到的是前进按钮或后退按钮的事件,则在浏览界面进行网页页面跳转;当交互层接收到的是输入界面切换的事件,则将浏览界面切换成输入界面;当交互层接收到的是中英文切换按钮的事件,则在输入界面将中文切换为英文,或将英文切换为中文;当交互层接收到的是识别按钮的事件,则在输入界面生成候选字;当交互层接收到的是浏览界面切换按钮的事件,则将浏览界面切换成输入界面;当交互层接收到的是悬停点击的目标位置信息,则在浏览界面的目标位置触发鼠标点击事件。
CN201410283898.8A 2014-06-23 2014-06-23 基于Kinect的操纵网络浏览器的***及方法 Pending CN104020853A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201410283898.8A CN104020853A (zh) 2014-06-23 2014-06-23 基于Kinect的操纵网络浏览器的***及方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201410283898.8A CN104020853A (zh) 2014-06-23 2014-06-23 基于Kinect的操纵网络浏览器的***及方法

Publications (1)

Publication Number Publication Date
CN104020853A true CN104020853A (zh) 2014-09-03

Family

ID=51437646

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201410283898.8A Pending CN104020853A (zh) 2014-06-23 2014-06-23 基于Kinect的操纵网络浏览器的***及方法

Country Status (1)

Country Link
CN (1) CN104020853A (zh)

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104484035A (zh) * 2014-12-04 2015-04-01 北京百度网讯科技有限公司 基于体感设备的控制方法、装置和***
CN104589356A (zh) * 2014-11-27 2015-05-06 北京工业大学 基于Kinect人手运动捕捉的灵巧手遥操作控制方法
CN105787485A (zh) * 2014-12-25 2016-07-20 联想(北京)有限公司 识别点击操作的装置和方法
CN105872691A (zh) * 2015-12-14 2016-08-17 乐视致新电子科技(天津)有限公司 浏览器控制方法及装置
CN107423392A (zh) * 2017-07-24 2017-12-01 上海明数数字出版科技有限公司 基于ar技术的字、词典查询方法、***及装置

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20090217211A1 (en) * 2008-02-27 2009-08-27 Gesturetek, Inc. Enhanced input using recognized gestures
CN102520793A (zh) * 2011-11-30 2012-06-27 苏州奇可思信息科技有限公司 基于手势识别的会议演示交互方法
CN102945079A (zh) * 2012-11-16 2013-02-27 武汉大学 一种基于智能识别与控制的立体投影***与方法
CN103226388A (zh) * 2013-04-07 2013-07-31 华南理工大学 一种基于Kinect的手写方法
CN103270474A (zh) * 2010-12-23 2013-08-28 英特尔公司 用于与网络浏览器上的内容交互的方法、装置和***
CN103853464A (zh) * 2014-04-01 2014-06-11 郑州捷安高科股份有限公司 一种基于Kinect的铁路手信号识别方法

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20090217211A1 (en) * 2008-02-27 2009-08-27 Gesturetek, Inc. Enhanced input using recognized gestures
CN103270474A (zh) * 2010-12-23 2013-08-28 英特尔公司 用于与网络浏览器上的内容交互的方法、装置和***
CN102520793A (zh) * 2011-11-30 2012-06-27 苏州奇可思信息科技有限公司 基于手势识别的会议演示交互方法
CN102945079A (zh) * 2012-11-16 2013-02-27 武汉大学 一种基于智能识别与控制的立体投影***与方法
CN103226388A (zh) * 2013-04-07 2013-07-31 华南理工大学 一种基于Kinect的手写方法
CN103853464A (zh) * 2014-04-01 2014-06-11 郑州捷安高科股份有限公司 一种基于Kinect的铁路手信号识别方法

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104589356A (zh) * 2014-11-27 2015-05-06 北京工业大学 基于Kinect人手运动捕捉的灵巧手遥操作控制方法
CN104484035A (zh) * 2014-12-04 2015-04-01 北京百度网讯科技有限公司 基于体感设备的控制方法、装置和***
CN105787485A (zh) * 2014-12-25 2016-07-20 联想(北京)有限公司 识别点击操作的装置和方法
CN105787485B (zh) * 2014-12-25 2019-11-26 联想(北京)有限公司 识别点击操作的装置和方法
CN105872691A (zh) * 2015-12-14 2016-08-17 乐视致新电子科技(天津)有限公司 浏览器控制方法及装置
CN107423392A (zh) * 2017-07-24 2017-12-01 上海明数数字出版科技有限公司 基于ar技术的字、词典查询方法、***及装置

Similar Documents

Publication Publication Date Title
CN101853133B (zh) 一种自动识别手势的方法及移动终端
CN1782974B (zh) 用于将字符输入到移动通信装置的方法及设备
JP6427559B6 (ja) 手書き入力のための永久同期システム
JP6109625B2 (ja) 電子機器およびデータ処理方法
CN104020853A (zh) 基于Kinect的操纵网络浏览器的***及方法
CN106325688A (zh) 一种文本处理方法及装置
CN105190644A (zh) 用于使用触摸控制的基于图像的搜索的技术
CN103049254A (zh) 用于语义缩放的编程接口
US9207765B2 (en) Recognizing interactive media input
CN102999274A (zh) 语义缩放动画
CN102981735A (zh) 语义缩放手势
CN104898879A (zh) 用于数据输入的方法及装置
CN102981728A (zh) 语义缩放
CN106293315A (zh) 浮动窗口显示的方法和装置
CN103034427A (zh) 一种触摸屏翻页方法、装置及一种触摸屏设备
CN103218160A (zh) 人机交互方法及终端
CN102141868B (zh) 快捷操作信息交互页面的方法、输入法***和浏览器插件
CN103713848A (zh) 移动终端及其操作方法
CN103488411A (zh) 切换页面的方法和装置
CN103226445A (zh) 一种手写输入的方法、***和终端
CN111103982A (zh) 基于体感交互的数据处理方法以及装置、***
CN105159537A (zh) 基于多屏的实时独立交互***
CN105589636A (zh) 用于在触摸屏上实现虚拟指针控制的方法和移动终端
CN105242776A (zh) 一种智能眼镜的控制方法及智能眼镜
CN102339137A (zh) 输入方法及应用该输入方法的电子设备

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
WD01 Invention patent application deemed withdrawn after publication
WD01 Invention patent application deemed withdrawn after publication

Application publication date: 20140903