模拟鼠标输入的方法及装置 技术领域 本发明提供一种涉及虚拟现实系统中的人机交互技术, 特别是一种模拟鼠标输入 的方法及装置。
背景技术 随着时下电子设备发展的日新月异, 人机间的交互活动日益频繁。 鼠标、 键盘等这 些传统的人机交互设备在符合人体工程学设计上存在着一定的局限性, 长期使用会造成人 体肌肉疲劳甚至造成肌肉损伤, 而且对于移动设备来说, 鼠标、 键盘无疑是一种负担。触摸 屏虽然在一定程度上解决了鼠标和键盘在携带不方便上的问题, 但却存在着操作时需要挡 住屏幕的问题。
为了解决这一问题, 视频识别技术被引入人机交互领域。 如, 申请号为 02117354.0 的中国专利申请公开了一种由图像感应装置和感应信息提取装置构成的计算机输入系统, 可以由图像感应装置获取手或指定物在空间的形态信息, 图像信息特征提取装置提取出该 空间形态的特征信息并传入计算机主机, 在计算机显示器屏幕上显示出手或指定物的空间
形态, 同时计算机依据所传入的特征信息产生计算机操作指令。
但该系统需要特定的图像感应装置和感应信息提取装置, 设备复杂且体积大, 成 本较高, 不宜在移动设备上使用。 发明内容 有鉴于此, 本发明的主要目的在于提供一种模拟鼠标输入的方法及装置, 以解决 在触摸屏上进行操作时手指挡住屏幕的问题及实现制造体积小、 成本低的该类装置的目 的。
本发明提供的一种模拟鼠标输入的方法, 包括步骤 :
A、 对包含主图像的图像进行采集 ;
B、 对所采集的图像进行主图像的识别以及确定出识别出的主图像在所采集的图 像中的坐标 ;
C、 根据所确定出的主图像坐标确定所模拟的鼠标的输出坐标 ;
D、 根据检测到的用于模拟鼠标点击的振动或 / 和声音信号生成鼠标点击指令输 出。
由此可知, 根据采集来的图像包括对其主图像的坐标的识别, 可以确定图像内的 模拟鼠标的运动轨迹 ; 再根据检测到的用于模拟鼠标点击的振动或 / 和声音信号生成鼠标 点击指令输出, 从而实现模拟鼠标对设备的操作, 达到以解决在触摸屏上进行操作时手指 挡住屏幕的问题及实现制造体积小、 成本低的该类装置的目的。
上述的方法中, 其特征在于, 步骤 A 之前还包括主图像初始化步骤, 包括 :
记录主图像初始化过程中采集的图像为主图像。
由此可知, 在初始化的过程中对主图像的识别可以有效区分主图像跟背景图像。
上述的方法中, 其特征在于, 步骤 A 所述采集包括 :
实时采集包含主图像的视频流 ;
将所采集的视频流单帧化为连续的图像作为所采集的图像。
由此可知, 实时采集可以最大程度地减小动作延迟时间, 使鼠标控制操作更平顺。
上述的方法中, 其特征在于, 步骤 C 所述确定所模拟的鼠标的输出坐标包括 : 根据 主图像坐标映射为所模拟鼠标控制的屏幕光标在屏幕上的坐标。
由此可知, 根据主图像坐标映射为所模拟鼠标控制的屏幕光标在屏幕上的坐标, 结果反映直观。
上述的方法中, 其特征在于, 步骤 C 所述确定所模拟的鼠标的输出坐标包括 : 根据 主图像坐标相对所采集图像中心位置的方向, 控制所模拟鼠标控制的屏幕光标在屏幕上的 移动。
由此可知, 根据主图像坐标相对所采集图像中心位置的方向, 控制所模拟鼠标控 制的屏幕光标在屏幕上的移动, 模拟鼠标屏幕定位更加准确。
上述的方法中, 其特征在于, 步骤 D 所述检测包括 : 将采集的振动或 / 和声音信号 与预先设置的采样参数相比较以确认为有效信号。
由此可知, 将采集的振动或 / 和声音信号与预先设置的采样参数相比较以确认为 有效信号, 可以有效地过滤掉环境噪音, 减少环境噪音对有效振动或 / 和声音信号的干扰。
上述的方法中, 其特征在于, 所述步骤 D 还包括 : 根据所检测的振动或 / 和声音信 号的强度作为模拟鼠标点击力量的强度输出。
由此可知, 根据所检测的振动或 / 和声音信号的强度作为模拟鼠标点击力量的强 度输出, 操作反映直观, 增强人机交互的趣味性。
上述的方法中, 其特征在于, 还包括 :
步骤 C 所确定出的主图像坐标在设定时间内上下移动时, 判断步骤 D 是否生成鼠 标点击指令, 若是, 则步骤 C 不输出所述设定时间内的坐标。
由此可知, 根据主图像坐标在设定时间内上下移动, 判断步骤 D 是否生成鼠标点 击指令, 可以对根据振动或 / 和声音信号判断鼠标点击操作做一个补充, 提高判断鼠标点 击操作的准确性。
本发明提供的一种模拟鼠标输入的装置, 其特征在于, 包括 :
图像采集模块 11 用于对包含主图像的图像进行采集 ;
图像处理模块 12 用于对图像采集模块 11 所采集的图像进行主图像的识别以及确 定出识别出的主图像在所采集的图像中的坐标 ;
振动采集模块 13 用于采集振动信号 ;
振动处理模块 14 用于识别出振动采集模块 13 采集的振动信号中包含的用于模拟 鼠标点击的振动信号 ;
目标判断模块 17, 用于根据图像处理模块 12 所确定出的主图像坐标确定所模拟 的鼠标的输出坐标, 以及根据振动处理模块 14 检测到的用于模拟鼠标点击的振动信号作 为鼠标点击指令的输出。
由此可知, 根据采集模块 11 采集来的图像, 可以确定图像内的模拟鼠标的运动轨 迹; 再根据检测到的用于模拟鼠标点击的振动信号生成鼠标点击指令输出, 从而实现模拟鼠标对设备的操作, 达到以解决在触摸屏上进行操作时手指挡住屏幕的问题及实现制造体 积小、 成本低的该类装置的目的。
本发明提供的一种模拟鼠标输入的装置, 其特征在于, 包括 :
图像采集模块 11, 用于对包含主图像的图像进行采集 ;
图像处理模块 12, 用于对图像采集模块 11 所采集的图像进行主图像的识别以及 确定出识别出的主图像在所采集的图像中的坐标 ;
声音采集模块 15, 用于采集声音信号 ;
声音处理模块 16, 用于识别出声音采集模块 15 采集的声音信号中包含的用于模 拟鼠标点击的声音信号 ;
目标判断模块 17, 用于根据图像处理模块 12 所确定出的主图像坐标确定所模拟 的鼠标的输出坐标, 以及根据声音处理模块 16 检测到的用于模拟鼠标点击的声音信号作 为鼠标点击指令的输出。
由此可知, 根据采集模块 11 采集来的图像, 可以确定图像内的模拟鼠标的运动轨 迹; 再根据检测到的用于模拟鼠标点击的声音信号生成鼠标点击指令输出, 从而实现模拟 鼠标对设备的操作, 达到以解决在触摸屏上进行操作时手指挡住屏幕的问题及实现制造体 积小、 成本低的该类装置的目的。 附图说明
图 1 为本发明的功能模块示意图 ; 图 2 为本发明的模拟鼠标控制流程图 ; 图 3 为本发明的点击操作模拟流程图 ; 图 4 为本发明的模拟键盘操作流程图。具体实施方式
如图 1 示出了本发明提供的模拟鼠标输入的装置, 用来实现在各种电子设备, 特 别是移动电子设备上操控的灵活性及方便性。
下面以模拟鼠标输入的装置应用于手机为例, 对本发明模拟鼠标输入的装置进行 说明。其中该装置包括 :
图像采集模块 11, 用于实时采集图像, 并传输到图像处理模块 12 中。 其中, 该图像 内容包含了作为主图像的用户手指或指定物 ( 如笔或笔状物 )。 本例中, 采用手机上的摄像 头作为图像采集模块 11, 所采集的图像内容包含用户一特定手指。
图像处理模块 12, 用于对来自图像采集模块 11 的图像信号进行主图像的识别以 及进行主图像坐标的确定, 并将确定出的坐标发送给目标判断模块 17。 其中, 通过图像识别 技术, 如特征参数的识别, 来确认出作为主图像的手指, 并确认出其在所采集图像中的逻辑 坐标。
振动采集模块 13, 用于采集振动信号, 并传输到振动处理模块 14 中。 其中, 振动采 集模块可以设置在所述手机壳体一侧, 从而采集手机所放置的物体平面, 如桌面上的振动 信号。该振动采集模块 13 也可以采用有线或无线方式外置于手机, 从而采集该振动采集模 块 13 所放置的物体平面的振动信号。振动处理模块 14, 用于将来自振动采集模块 13 的振动信号与预先设置的采样参 数, 如点击动作振动频率、 振幅等相比较, 判断出有效振动信号, 并输出相应次数的电子脉 冲到目标判断模块 17。
声音采集模块 15, 用于实时采集用户敲击物体产生的声音信号, 并传输到声音处 理模块 16 中。同振动采集模块 13 一样, 可以设置在所述手机壳体一侧或采用有线或无线 方式外置于手机。其中, 可以采用手机的话筒或外置话筒。
声音处理模块 16, 用于将来自声音采集模块 15 的声音信号与预先设置的采样参 数, 如点击声音的频率、 振幅、 持续时间等参数相比较, 以识别出有效的声音信号, 并输出相 应的电子脉冲到目标判断模块 17。
目标判断模块 17, 用于根据接收的图像处理模块 12 的信号将作为主图像的手指 的坐标转换成手机屏幕显示的光标的移动, 以及根据接收的振动处理模块 14 或 / 声音处理 模块 16 的信号转换成鼠标点击的控制动作。
另外, 目标判断模块 17 还用于根据所述主图像的变化快慢确定为点击控制动作 还是光标移动的控制动作, 例如将设定短时间内的一次上下移动视为模拟鼠标的点击动 作, 超过设定时间内的移动则视为对光标的移动控制。 下面参见图 2、 3 示出的模拟鼠标输入的方法, 以该装置应用于手机上, 且以手机 内置的摄像头 ( 也可外接 ) 作为图像采集模块, 设置在手机上的振动传感器作为振动采集 模块、 话筒作为声音采集模块为例, 模拟用于手机的鼠标操作为例, 对本发明装置实现模拟 鼠标输入的方法进行详细介绍。
首先进行初始化过程, 该初始化主要是为了将手机屏幕的光标当前坐标与主参考 物 ( 即本例中的人手 ) 坐标进行对应。其中, 可以是根据确认的主参考物在所采集图像中 的坐标, 将手机屏幕光标初始化在相应的位置。也可以是使手机屏幕上的显示光标位于屏 幕显示的中心, 使主参考物在所采集图像中的坐标与之对应, 较佳的, 在初始化时使主参考 物正对摄像头以在所采集图像的中心位置。
另外, 至少在首次使用本发明方法时, 可以进行主图像的初始化, 即将要作为主图 像的手指或指定物位于如摄像头正前方的指定位置, 记录指定位置的图像, 以将该图像作 为主图像。 其中, 可以在首次使用或需要校正时调用初始化过程进行主图像的重新初始化, 也可以在每次使用本发明方法时调用初始化过程进行主图像的重新初始化。
之后, 参见如图 2 示出的模拟鼠标控制流程图, 包括以下步骤 :
步骤 201 : 由作为图像采集模块 11 手机内置摄像头进行图像采集, 周期地将采集 的图像发送给手机图像处理模块 12。
其中, 图像采集时可以周期进行采集。 图像采集也可以实时采集形成视频流 (WMA) 数据缓存, 在通过加载该数据流文件, 实现视频数据单帧化, 并将连续的图像分组, 以 40 帧 / 秒形成数组传递给图像处理系统进行处理, 最后系统自动删除处理后的图像。
步骤 202 : 由手机的图像处理模块 12 对接收的图像信号进行主图像的识别以及进 行识别出的主图像坐标的确定。
例如, 当手指位于摄像头采集的图像内时, 识别出作为手指的主图像, 并确认其在 主图像上的位置坐标, 以二维数组形式 (X, Y) 输出。
步骤 203 : 由目标判断模块 17 根据主图像坐标的确定控制手机屏幕上显示的光标
的坐标。 其中, 可以是根据主图像坐标影射为屏幕光标所在屏幕上的坐标进行对应显示。
或者, 以主图像坐标相对图像中心位置, 控制屏幕光标向对应方向的移动, 如判断 主图像坐标位于图像中心左侧, 则控制屏幕光标向其左侧移动, 直到检测到主图像被移动 到其图像中心位置停止移动。 可以根据主图像坐标距离图像中心距离的远近控制光标移动 速度的快慢。
可见, 由以上步骤, 便可以不断采集用户手指的移动的图像, 并识别出手指指尖运 动轨迹坐标, 以二维数组形式 (X, Y) 输出, 映射为屏幕光标的移动信息。即, 以手指的移动 模拟成鼠标移动。
步骤 204 : 当手机检测到用于模拟鼠标点击的振动信号或声音信号时, 映射为鼠 标点击的指令提供给手机。下文将对步骤 204 进行详述。
其中, 步骤 204 中所述对模拟鼠标点击操作进行模拟的过程, 参见图 3 示出的本发 明的点击操作模拟流程图, 包括以下具体步骤 :
步骤 301 : 使手机内置的作为振动采集模块 13 的振动传感器与操作平面 ( 例如, 设备放置在桌面上, 则桌面为操作平面 ) 接触放置, 采集该平面被用户手指敲击所产生的 振动信号。
或者, 使手机内置或外接的作为声音采集模块 15 的话筒与所述操作平面接触放 置, 采集该平面被用户手指敲击所产生的声音信号。 将话筒与所述操作平面接触放置, 是为 了使所述操作平面作为声音传输的介质, 相比空气传输衰减更小。
步骤 302 : 由振动处理模块 14 或声音处理模块 16 将来采集的振动或声音信号与 预先设置的采样参数, 如点击动作振动或声音频率、 振幅等相比较, 判断出有效的信号, 并 输出相应次数的电子脉冲。具体为以下步骤 :
判断振动传感器采集的振动或声音信号是否在属于预先设置的模拟鼠标点击的 振动或声音信号采样参数规定的范围之内, 判断条件可以包括振动或声音的频率、 振幅等, 如果属于, 则视为该振动或声音信号为有效。通过该步骤可以有效的去掉干扰信号。
进一步判断在设定时间内是否存在第二个有效的信号, 以模拟鼠标的单击操作或 双击操作, 并发出相应数量的脉冲。
步骤 303 : 由目标判断模块 17 根据每次传送脉冲信号的数量, 例如, 一次模拟鼠标 单击操作产生的振动经振动处理模块 14 处理后发送的一个脉冲信号, 来返回以上述鼠标 操作的系统参数值为对应的鼠标点击动作指令, 完成鼠标动作的模拟。
进一步的, 当根据上述步骤 203 中识别出手指为竖直 ( 或接近竖直 ) 方向连续往 复运动时, 即坐标轨迹为竖直 ( 或接近竖直 ) 方向连续往复运动时, 结合步骤 301 ~ 303 便 可以判断出是在模拟鼠标的移动还是进行点击动作, 从而可以避免用户在敲击操作平面的 手指动作被误用来控制光标的移动。下面进行详细说明 :
根据手指的运动状况, 跟踪运动轨迹, 分析是哪个手指处于上下运动的状态, 例 如, 其中一个手指在设定时间内 ( 为单击时间参数 ) 抬起后落下, 视为一次单击 ; 其中一个 手指在设定时间内 ( 为双击时间参数 ) 做两次抬起落下运动, 则视为一次双击。将采集的 点击动作与上述采集的点击振动或声音进行结合判断, 便可以将符合范围的意外的振动或 意外的声音 ( 未检测到手势 ) 屏蔽掉, 避免误模拟鼠标点击动作。
此外, 该装置及方法还适用于模拟键盘操作。如图 4 所示, 以左右手的手指 ( 拇指 除外 ) 为基准建立键盘坐标系, 该键盘坐标系的零点位置以手指第一次进入采集区域, 初 始化手指时的位置为准, 并随每一次进入的位置的不同而变化。 通过启动虚拟键盘程序, 使 手指平面与虚拟键盘平面重合。 为键盘上每个键楞相交的点划分一个相对于键盘零点的坐 标, 再通过与上述步骤 203 的原理识别出手指所在坐标对应的键位, 结合步骤 301-303 的原 理作为识别手指点击键盘的方法, 最后返回上述过程中虚拟操作相应的 ASCII 码, 完成整 个模拟击键动作。 可见, 这样可以准确的识别出键盘的敲击动作, 与仅通过摄像头采集信息 去识别敲击按键相比, 采用本发明可以避免手指的任何上下相应移动都被误模拟为敲击动 作。
需要说明的时, 由于采集振动和声音信息时可以一并采集振动或声音大小, 因此 还可以将此作为第三个参数模拟出鼠标点击的力量大小。这对于某些程序, 例如需要根据 点击鼠标的力度模拟出鼠标写字的粗细 ( 或颜色的深浅 ) 力度时, 则可以结合上述第三个 参数进行模拟。使模拟出的字体更具有手写的特征。
以上所述仅为本发明的较佳实施例而已, 并不用以限制本发明。凡在本发明的精 神和原则之内, 所做的任何修改、 等同替换、 改进等, 均应包含在本发明的保护范围之内。