专利名称:一种实现光学手指鼠标方向识别的方法及移动终端的利记博彩app
技术领域:
本发明涉及光学手指鼠标(OFN, Optical Finger Navigation)技术,特别是涉及 一种实现OFN方向识别的方法及移动终端。
背景技术:
目前,在中高端移动终端如手机中,具备OFN功能的手机十分普遍,所谓OFN功能 主要是利用光学原理通过采集手指反射回的图像进行比对分析,来判断手指的移动趋势和 方向。在具有OFN功能的移动终端上设置有一个用于实现OFN功能的区域,手指在此区域 上滑动可称为在OFN上滑动,实现OFN功能就是根据手指在OFN上的滑动识别出手指移动 方向。因此,在使用OFN功能时,最关键的是对手指移动方向的识别,但实际应用中,经常会 因为用户手指滑动习惯不同,而导致方向识别有误差,从而引起误操作。
现有OFN功能中对手指移动方向的识别算法,是通过判断一段时间内落在坐标轴 上的点数来决定方向键值。通常,在具有OFN功能的移动终端中至少包括OFN模块、主控模 块和显示模块,其中,OFN模块用于采集手指的移动位移,并将移动点以坐标(x, y)的形式 上报给主控模块;主控模块用于处理接收到的坐标点,并将某一时间段内的所有点识别为 上、下、左、右四个方向中的一个;显示模块用于显示手指移动在移动终端系统中对应的图 标切换。具体的,OFN模块是通过安装在移动终端感应区周围的发光二极管(LED)发出红外 线(870nm)照射手指,部分红外线遇到手指将会被反射回到感应区,感应区将这些反射的 红外线量化成数据,计算出手指的移动位移,然后以坐标的形式输出给主控模块;相应的, 主控模块会在一定时间间隔内对所有收到的点坐标进行识别处理,将手指在OFN上滑动的 动作识别成方向键的键值,这里所述方向键就是指上键、下键、左键、右键,分别代表上、下、 左、右四个方向。 参照图1所示,假设识别的时间段在开始(start)到结束(end)之间,即在 (start, end)时间段内,那么,所采集到的点P1 、p2、p3、p4、p5在x轴、y轴描绘出的手指位 移矢量S = pl+p2+p3+p4+p5,此时,位移矢量S在一定程度上可代表手指在OFN上的移动趋 势。因此,识别OFN方向键可以转换为如何将(start, end)时间段内手指在OFN上的移动 位移识别成方向键。 目前的识别算法只能在位移矢量S与x轴或y轴平行时,才能算出位移矢量S所 代表的上、下、左、右方向,也就是说,现有技术的识别方法局限于手指在OFN上的移动平行 于x轴或y轴时,如果不是平行于x轴或y轴,就容易产生误判或漏判。而在实际使用时, 由于手指的滑动习惯问题,用户很难做到每次操作都保证手指在OFN上的滑动轨迹平行或 者垂直,显然,需要考虑一种更具兼容性和普遍性的识别方法,来实现OFN的方向识别。
发明内容
有鉴于此,本发明的主要目的在于提供一种实现OFN方向识别的方法及移动终 端,能加强OFN的方向识别,减少OFN方向识别的偏差,降低误判率。
3
为达到上述目的,本发明的技术方案是这样实现的 本发明提供了一种实现光学手指鼠标OFN方向识别的方法,利用两条过坐标原点
的非垂直非平行的直线,将平面划分为四个区域;该方法还包括 采集手指在OFN上滑动时的数据点,并将所采集到的数据点上报; 判断滑动产生的位移矢量所处于的区域,并根据所述位移矢量所属区域得到位移
方向键,识别出OFN方向。 其中,所述两条过坐标原点的非垂直非平行的直线为y = x禾Py = -x。 上述方案中,所述将所采集到的数据点上报为将所采集到的数据点以坐标(x,
y)的形式上报;上报数据点之后,该方法还包括根据上报的数据点坐标形成位移矢量。 该方法进一步包括所述位移矢量恰巧落在边界线上时,不对此次手指移动做任
何响应。 上述方案中,识别出OFN方向后,该方法进一步包括将手指移动转换为对应的图 标移动,通过液晶显示器显示。 本发明还提供了 一种实现OFN方向识别的移动终端,包括OFN模块,用于采集手指
在OFN上滑动时的数据点,并将采集到的数据点以坐标形式上报给主控模块;主控模块,用
于处理接收到的数据点坐标,并将一时间段内的手指滑动识别为对应的方向键; 所述主控模块进一步包括划分子模块、判断子模块和存储子模块;其中, 所述划分子模块,用于利用两条过坐标原点的非垂直非平行的直线,将平面划分
为四个区域; 所述判断子模块,用于判断滑动产生的位移矢量所处于的区域,并根据所述位移 矢量所属区域得到位移方向键; 所述存储子模块,用于存储划分子模块所划分的区域信息,并提供给判断子模块 进行所述位移矢量所属区域判断。 其中,所述两条过坐标原点的非垂直非平行的直线为y = x和y = _x。 该移动终端还包括显示模块,用于通过液晶显示器显示手指动在移动终端中对应
的图标切换。 本发明所提供的实现OFN方向识别的方法及移动终端,通过两条过坐标原点的非 垂直非平行的直线,将平面划分为四个区域,再通过判定某一时间段内滑动产生的位移矢 量所属的坐标区域来确定对应的位移方向。如此,通过合理分割坐标轴,重新划分上、下、 左、右四个方向对应的区域,可有效地加强OFN的方向识别,减少OFN方向识别偏差的问题, 降低误判率,具有明显的效果。 并且,在具体实现上,可采用与平行或垂直方向成45度角的两条相交直线,将平 面划分为对称相等的四个区域;也可以根据用户手指滑动习惯,比如大部分人手指上下 滑动比较容易、左右滑动比较不习惯,左右滑动时可能会向上倾斜,那么就采用其它方程, 将左、右区域划分大些,上、下区域小些,B卩左、右区域分别大于上、下区域,如此,可以优先 识别左右方向键。因此,本发明在实现上更灵活、方便,适用范围更广,更具兼容性和普遍 性。
图1为0FN在某个时间段内手指移动轨迹的坐标图;
图2为本发明中OFN方向识别时的方向区域划分示意图;
图3为本发明中OFN方向识别方法的实现流程示意图。
具体实施例方式
由于在OFN功能的实际应用中,手指在OFN上的滑动位移存在两种情况一种是位 移矢量S与x轴或y轴平行,另一种是位移矢量S与x轴和y轴不平行。第一种情况属于 理想情况,位移矢量S与x轴或y轴平行,即S值为(0, a) 、 (0, _a) 、 (a,O) 、 (-a,O)四种情 况,其中a为正整数,这种情况下,很容易计算出位移矢量S所代表的上、下、左、右键;而第 二种情况就比较难计算位移矢量S的方向。 因此,本发明的基本思想是利用两条过坐标原点的非垂直非平行的直线,将平面 划分为四个区域,然后根据某一时间段内滑动产生的位移矢量所属的坐标区域来确定对应 的位移方向,以识别OFN方向。 这里,所述两条过坐标原点的非垂直非平行的直线为y = fjx)和y = f2(x),这 两条直线将平面分为四个区域区域1、区域n、区域111、区域IV,如图2所示。
相应的,如果以原点为起始的位移矢量落在区域I内,则将该位移方向识别为上 键;如果落在区域III内,则位移方向识别为下键;如果落在区域II内,则位移方向识别为 右键;如果落在区域IV内,则位移方向识别为左键。 较佳的,两条直线方程可为y二x和y = 1,即采用两条与平行或垂直方向成45 度角的直线,将平面划分为四个大小相等且对称的区域,这种情况下,实现比较简单。当然, 也可以根据用户手指滑动习惯的需要采用其他直线方程,比如,由于大多用户习惯上下滑 动,不习惯左右滑动,可采用两条与垂直方向成30度角的直线,将上、下区域划分小些,左、 右区域划分大些,以达到优先识别左右方向键的效果。 下面结合图3详细说明本发明实现OFN方向识别方法的具体流程,如图3所示,该 方法包括以下步骤 步骤300 :利用两条过坐标原点的非垂直非平行的直线,将平面划分为四个区域;
这里,根据需要选择适当的直线方程,并利用直线方程对应的两条直线y = fjx) 和y = fjx),合理地将平面划分为上、下、左、右四个区域; 较佳的,可采用y = x和y = -x,即采用两条与平行或垂直方向成45度角的直 线,将平面划分为四个大小相等且对称的区域。 步骤301 :当手指在OFN上滑动时,采集滑动数据点,并将所采集到的数据点上 报; 这里,对于移动终端,在上电启动后需加载0FN模块,以实现OFN功能;那么,当手 指在OFN上滑动或强光照射时,OFN模块开始采集滑动时的各数据点,并将采集到的各数据 点以(x, y)坐标形式上报给主控模块,主控模块接收到数据点坐标后开始处理,根据滑动 数据点的坐标形成位移矢量。 在实际应用中,步骤300和步骤301的执行顺序不限定,可以先执行步骤300,也可 以先执行步骤301,还可以同时执行步骤300和步骤301,只要在步骤302之前即可。
步骤302 :判断滑动产生的位移矢量所处于的区域,并根据位移矢量所属区域得 到位移方向键,识别出0FN方向。 这里,经过主控模块的处理后,可将某一时间段内的手指移动识别为对应的方向
键。具体的,如果滑动产生的位移矢量处于所划分的上区域,则得到位移方向键为上键;如
果滑动产生的位移矢量处于所划分的下区域,则得到位移方向键为下键;如果滑动产生的
位移矢量处于所划分的左区域,则得到位移方向键为左键;如果滑动产生的位移矢量处于
所划分的右区域,则得到位移方向键为右键。如图2所示,区域I、区域III、区域II、区域IV
分别代表上区域、下区域、右区域、左区域,则位移矢量sl识别为上键,位移矢量s2、s3识别
为右键;位移矢量s4、 s5识别为下键;位移矢量s6识别为左键。 如果当前位移矢量恰巧落在边界线上,则对这次手指移动不做任何响应。 至此, 一次0FN方向识别的处理过程就完成了 ,可准备进行下一次的处理。 进一步的,步骤302之后,可将手指移动转换为对应的图标移动,通过液晶显示器
(LCD)显示给用户。 为实现上述方法,本发明还提供了一种实现0FN方向识别的移动终端,包括0FN模 块、主控模块,其中,0FN模块用于采集手指在0FN上滑动时的数据点,并将采集到的数据点 以坐标形式上报给主控模块;主控模块用于处理接收到的数据点坐标,并将某一时间段内 的手指滑动识别为对应的方向键; 关键在于,该主控模块进一步包括划分子模块、判断子模块和存储子模块;其中,
所述划分子模块,用于利用两条过坐标原点的非垂直非平行的直线,将平面划分 为四个区域; 所述判断子模块,用于判断滑动产生的位移矢量所处于的区域,并根据所述位移 矢量所属区域得到位移方向键; 所述存储子模块,用于存储划分子模块所划分的区域信息,并提供给判断子模块 进行所述位移矢量所属区域判断。 这里,所述划分子模块、判断子模块和存储子模块分别作为主控模块的一个功能 子模块。 进一步的,该移动终端还包括显示模块,用于通过LCD显示手指滑动在移动终端 系统中对应的图标切换。 以上所述,仅为本发明的较佳实施例而已,并非用于限定本发明的保护范围,凡在 本发明的精神和原则之内所作的任何修改、等同替换和改进等,均应包含在本发明的保护 范围之内。
权利要求
一种实现光学手指鼠标OFN方向识别的方法,其特征在于,利用两条过坐标原点的非垂直非平行的直线,将平面划分为四个区域;该方法还包括采集手指在OFN上滑动时的数据点,并将所采集到的数据点上报;判断滑动产生的位移矢量所处于的区域,并根据所述位移矢量所属区域得到位移方向键,识别出OFN方向。
2. 根据权利要求1所述的方法,其特征在于,所述两条过坐标原点的非垂直非平行的 直线为y = x和y = -x。
3. 根据权利要求1或2所述的方法,其特征在于,所述将所采集到的数据点上报为将 所采集到的数据点以坐标(x, y)的形式上报;上报数据点之后,该方法还包括根据上报的数据点坐标形成位移矢量。
4. 根据权利要求1或2所述的方法,其特征在于,该方法进一步包括所述位移矢量恰 巧落在边界线上时,不对此次手指移动做任何响应。
5. 根据权利要求1或2所述的方法,其特征在于,识别出OFN方向后,该方法进一步包 括将手指移动转换为对应的图标移动,通过液晶显示器显示。
6. —种实现OFN方向识别的移动终端,其特征在于,该移动终端包括OFN模块,用于采 集手指在OFN上滑动时的数据点,并将采集到的数据点以坐标形式上报给主控模块;主控 模块,用于处理接收到的数据点坐标,并将一时间段内的手指滑动识别为对应的方向键;所述主控模块进一步包括划分子模块、判断子模块和存储子模块;其中, 所述划分子模块,用于利用两条过坐标原点的非垂直非平行的直线,将平面划分为四 个区域;所述判断子模块,用于判断滑动产生的位移矢量所处于的区域,并根据所述位移矢量 所属区域得到位移方向键;所述存储子模块,用于存储划分子模块所划分的区域信息,并提供给判断子模块进行 所述位移矢量所属区域判断。
7. 根据权利要求6所述的移动终端,其特征在于,所述两条过坐标原点的非垂直非平 行的直线为y = x禾P y = -x。
8. 根据权利要求6或7所述的移动终端,其特征在于,该移动终端还包括显示模块,用 于通过液晶显示器显示手指动在移动终端中对应的图标切换。
全文摘要
本发明公开了一种实现光学手指鼠标(OFN)方向识别的方法,利用两条过坐标原点的非垂直非平行的直线,将平面划分为四个区域;该方法还包括采集手指在OFN上滑动时的数据点,并将所采集到的数据点上报;判断滑动产生的位移矢量所处于的区域,并根据所述位移矢量所属区域得到位移方向键,识别出OFN方向。本发明还同时公开了一种实现OFN方向识别的移动终端,采用本发明能加强OFN的方向识别,减少OFN方向识别的偏差,降低误判率。
文档编号G06F3/048GK101770303SQ201010001259
公开日2010年7月7日 申请日期2010年1月19日 优先权日2010年1月19日
发明者张磊, 阮美思 申请人:中兴通讯股份有限公司