一种触摸屏触摸区域定位方法

文档序号:6548153阅读:191来源:国知局
一种触摸屏触摸区域定位方法
【专利摘要】本发明涉及触摸屏技术,特别涉及一种触摸屏触摸区域定位方法。本发明是通过以下技术方案得以实现的:一种触摸屏触摸区域定位方法,包括以下步骤:(1)得出所有被挡住的光路;(2)将被挡住的光路转化为多边形数据;(3)假定同角度光路的集合为一层光路层;将一层光路层中的多边形与另一层光路层中的多边形相交,得到一组新的多边形,再将该组新多边形与再另一层光路层中的多边形相交,以再次得到新的多边形;如此重复至完成所有光路层的多边形相交,从而得到最后一组多边形,该最后组多边形至少包括一个多边形单体,并记录该组多边形数据,该组多边形数据由所有多边形单体数据组成。本发明对触摸区域的识别耗时短,效率高。
【专利说明】一种触摸屏触摸区域定位方法
【技术领域】
[0001]本发明涉及触摸屏技术,特别涉及一种触摸屏触摸区域定位方法。
【背景技术】
[0002]现有技术中的多点识别定位方法,如申请公布号为CN102419662A的发明专利申请所公开的一种红外触摸屏的多点识别方法及系统,其首先生成与红外触摸屏在一次识别过程中轴对应的轴图像;然后在轴图像中提取触摸点信息;然而此种基于图像处理的识别方法,触摸点的判定需全局处理,因此耗时较长。

【发明内容】

[0003]本发明的目的是提供一种触摸屏触摸区域定位方法,该方法对触摸区域的识别耗时短,效率高。
[0004]本发明的上述技术目的是通过以下技术方案得以实现的:一种触摸屏触摸区域定位方法,包括以下步骤:
(1)检测所有光路,得出所有被挡住的光路;
(2)将被挡住的光路转化为多边形数据,即确定每个红外发射元件及红外接收元件的座标,从而确定被挡住光路的顶点的坐标;
(3)假定同角度光路的集合为一层光路层;将一层光路层中的多边形与另一层光路层中的多边形相交,得到一组新的多边形,再将该组新多边形与再另一层光路层中的多边形相交,以再次得到新的多边形;如此重复至完成所有光路层的多边形相交,从而得到最后一组多边形,该最后组多边形至少包括一个多边形单体,并记录该组多边形数据,该组多边形数据由所有多边形单体数据组成。
[0005]以从一个红外发射元件至一个红外接收元件的光路为单元光路;每个红外发射元件所确定的光路起点的光宽应相等于每个红外接收元件所确定的光路终点的光宽,假定每个红外发射元件所确定的光路起点的光宽为单位光宽;依据触摸屏分辨率,确定单位光宽为η ;从而建立一个坐标XY系,使每个红外发射元件及红外接收元件都由两个坐标限定。
[0006]作为本发明的优选,所述步骤(I)与步骤(2)之间还具有如下步骤:以一个红外发射元件至一个红外接收元件所形成的光路为单元光路,步骤(I)所得到光路,即是所有被挡住的单元光路,将所有被挡住的单元光路进行检测,若在同一层光路层存在相邻的单元光路,则将这些相邻单元光路进行合并,从而形成一组光路组。
[0007]作为本发明的优选,所述步骤(2)具体为:将被挡住的单元光路和/或光路组转化为多边形数据,即确定每个红外发射元件及红外接收元件的座标,从而确定被挡住光路的顶点的坐标。
[0008]作为本发明的优选,所述步骤(3)之后还包括筛选真触摸区域的步骤,该步骤包括
a、对经步骤(3)得到的最后组多边形中的所有多边形单体进行检测,判定由最多层光
路层相交得到的多边形单体为真触摸发生区域;若多边形单体由小于m层的光路层相交得至|J,则判定该多边形单体为假触摸发生区域;m小于光路层总层数。
[0009]作为本发明的优选,所述筛选真触摸区域的步骤还包括
b、若最后组多边形中的多边形单体由大于等于m层且小于总光路层层数的光路层相交得到,则检测经过该多边形单体的所有被挡住的光路,若存在经过该多边形单体但不经过已判定为真触摸发生区域的多边形单体的光路,则判定该多边形单体为真触摸发生区域,若不存在,则判定为假触摸发生区域。
[0010]综上所述,本发明具有以下有益效果:本发明对每条单元光路定义至一个红外发射元件与一个红外接收元件,从而根据触摸屏的分辨率对每个红外发射元件与每个红外接收元件的位置通过坐标定位,从而相当于对每条单元光路所形成的多边形通过坐标定位;在识别触摸点时,首先通过光路扫描,得出被挡住的单元光路,从而缩小了触摸发生区域的判定范围,因此节省了时间,提高了识别效率,同时由于根据分辨率对每条单元光路都进行了坐标定位,使得在判定触摸发生区域时更为精准;本发明在确定光路层的角度时,无需连续的角度。
【专利附图】

【附图说明】
[0011]图1是实施例2触摸发生区域K示意图;
图2是实施例2中被挡住光路意图;
图3是实施例2中光路A与光路B相交示意图;
图4是实施例2中区域G与光路C相交示意图;
图5是实施例2中同角度单元光路合并示意图;
图6是实施例4中触摸发生区域示意图。
【具体实施方式】
[0012]以下结合附图对本发明作进一步详细说明。
[0013]本具体实施例仅仅是对本发明的解释,其并不是对本发明的限制,本领域技术人员在阅读完本说明书后可以根据需要对本实施例做出没有创造性贡献的修改,但只要在本发明的权利要求范围内都受到专利法的保护。
[0014]实施例1:如图1所示,触摸屏四边分别设有红外发射元件I及红外接收元件2。
[0015]假定从一个红外发射元件I至一个红外接收元件2的光路为单元光路。
[0016]以红外发射元件I作为光路起点,红外接收元件2作为光路终点,每个红外发射元件I所确定的光路起点的光宽应相等于每个红外接收元件2所确定的光路终点的光宽,假定每个红外发射元件I所确定的光路起点的光宽为单位光宽。
[0017]依据触摸屏分辨率,确定单位光宽为η ;从而建立一个坐标XY系,如图1,触摸屏左下角的点为原点(0,0),右上角的点为(Xmax,Yfflax);从而使每个红外发射元件及红外接收元件都由两个坐标限定。
[0018]基于多边形的触摸区域定位方法,包括以下步骤:
(1)硬件初始化,从而确定,每个红外发射元件及红外接收元件所对应的座标,假定同角度单元光路的集合为一层光路层,确定光路层层数Hlmax及每层光路层的角度;
(2)在一帧内,检测所有单元光路,得出所有被挡住的单元光路;(3 )检测每层光路层中被挡住的单元光路,若该层光路层中被挡住的单元光路中具有相邻的单元光路则将这些相邻的单元光路进行合并,以形成一组光路;
(4)将经步骤(3)得到的每组光路和/或每个单元光路转化为多边形数据,即根据步骤
(I)所确定的每个红外发射元件及红外接收元件所对应的座标,记录形成由步骤(3)得到的每组光路和/每个光路的顶点的坐标,并存储在内存中,每组光路或每个单兀光路对应一个多边形;
(5)将一层光路层中的多边形与另一层光路层中的多边形相交,根据两个任意多边形相交得到一个新的多边形的逻辑算法,得到一组新的多边形,该组新的多边形包括一个或一个以上的多边形单体,存储在内存中;
(6)将步骤(5)得到的该组新多边形再与另一层光路层中的多边形相交,根据步骤(5)的逻辑算法,再次得到一组新的多边形,存储于内存中;
(7)重复步骤(6) 至完成所有光路层的多边形相交,从而得到最后一组多边形;
(8)对经步骤(7)得到最后组多边形中的每个多边形进行筛选,从而得到触摸发生区域。
[0019]步骤(8)中的筛选方法包括以下步骤:
a、对经步骤(4)得到的最后组多边形中的所有多边形单体进行检测,判定由最多层光路层相交得到的多边形单体为真触摸发生区域;若多边形单体由小于m层的光路层相交得到,则判定该多边形单体为假触摸发生区域;m小于光路层总层数;
b、若最后组多边形中的多边形单体由大于等于m层且小于总光路层层数的光路层相交得到,则检测经过该多边形单体的所有被挡住的光路,若存在经过该多边形单体但不经过已判定为真触摸发生区域的多边形单体的光路,则判定该多边形单体为真触摸发生区域,若不存在,则判定为假触摸发生区域。
[0020]当实际触摸发生区域比较小时,有些角度的光路由于挡住的红外线分量比较小,导致红外对管的信号波动不是很大,使得步骤2中对光路挡住的判断有误,从而出现逻辑上本因出现的光路缺失现象,因此出现某些真触摸发生区域由小于m层的光路层相交得到。
[0021]所述两个任意多边形相交得到一个新的多边形的逻辑算法是基于直线相交得到交点的逻辑算法。
[0022]直线相交得到交点的逻辑算法为:
设直线 A (x1; Y1) (x2, y2)直线 B (x3, y3) (x4, y4)
int IiDx1=X2-X1 ;
int HDy1=Y2-Y1 ;
int nDx2=x4_x3 ;
int nDy2=y4-y3 ;
int nB^nDy^x^nDx^y!;
int nB2-nOj2^χ3~η?)χ2^J3 ;
int HD=IiDx1^nDy2-1iDx2氺IiDy1 ;
float fBD^ (float) nB^nD ;
float fBD2= (float) nB2/nD ;IiB1= (int) (fBD-nDXi);
nB2= (int) (fBD^nDxa);
X= (_signed_short) (nBfnBj ;
IiB1= (int) (IfBD2=^nDy1);
nB2= (int) (IfBD1=^nDy2);
y= (_signed_short) (nBfnBj ;
直线A与直线B的交点为(x,y)。
[0023]当然两个多边形相交必然得到另一个多边形,其中的算法也是多种多样,并不局限于上述一种算法。
[0024]实施例2:如图1所示,触摸区域发生的区域K,对该区域K的识别步骤如下, (1)在一帧内,进行所有光路层扫描,在图2中,相同角度的虚线及实线代表一层光路层,得出所有被挡住的单元光路,该单元光路为三条,分别为A、B、C,如图2中实线区域,并获得此三条光路的坐标,即光路A的四个顶点为A1 (Xal, Yal)、A2 (Xa2,Ya2), A3 (Xa3,Ya3)、A4(Xa4,Ya4),由于三条光路为单元光路,Xa2_Xal=n,Yal=Ya2=Ymax, Xa3_Xa4=n,Ya3=Ya4=O ;
光路 B 的四个顶点为 B1 (Xbl,Ybl)、B2 (Xb2, Yb2),B3 (Xb3,Yb3)、B4 (Xb4,Yb4),由于三条光路为单元光路,Xb2-Xbl=n, Ybl=Yb2=Ymbx, Xb3-Xb4=n,Yb3=Yb4=O ;
光路 C 的四个顶点为 C1 (Xcl,Ycl)>C2 (Xc2,Yc2)>C3 (Xc3,Yc3)>C4 (Xc4,Yc4),由于三条光路为单元光路,Xc2-Xcl=n, Ycl=Yc2=Ymcx, Xc3-Xc4=n,Yc3=Yc4=O ;
(2)如图3所示,先将光路A与光路B相交,得到多边形结果,即区域G,即可根据上述直线相交逻辑算法,得出区域G四个顶点的坐标,即G1 (Xgl, Ygl),G2 (Xg2, Yg2),G3 (Xg3,Yg3)、G4 (Xg4,Yg4
(3)如图4所示,再将区域G与光路C相交,得到另一多边形结构,即区域K,再根据上述直线相交逻辑算法,得出区域K五个顶点的坐标,即K1 (Xkl, Ykl), K2 (Xk2, Yk2), K3 (Xk3,Yk3)、K4 (Xk4,Yk4),K5 (Xk5,Yk5),其中 K5 (Xk5,Yk5)即为 G2 (Xg2,Yg2);
若区域K跨至少两个单元光路,如图5所示,区域K跨单元光路E与单元光路F,即区域K同时挡住相同角度且相邻的单元光路E与单元光路F,则需将相同角度的相邻单元光路进行合并,形成一组光路H,以便于和其它光路相交得到多边形结果。
[0025]实施例3:同时产生至少两个触摸点,识别方式与实施例1类似,只是在计算多边形结果坐标时,同时计算两个或多个多边形结果坐标。
[0026]实施例4:如图6所示,触摸发生区域为KpK2与K4,识别这两个触摸发生区域的过程如下:假定光路层mmax为六层,分别A、B、C、D、E及F ;每层光路层都用不同角度的虚线及实线在图6中示出。
[0027]按实施例1得到被挡住的光路为:光路层A中为ApA2、A3 ;光路层B中为B1;光路层C中为Cp C1 ;光路层D中为D1 ;光路层E中为E1 ;光路层F为Fp F2 ;这些光路在图6中用实线表示;从而得到五个多边形结果,分别为1、K2, K3, K4, K5,当然实际得到的多边形不止这五个,本实施例只是选取这五个多边形进行示例;
确定由三层以下,不包括三层的光路层相交得到的多边形结果为假触摸发生区域,由当前最多层光路层相交得到的多边形结果为真触摸发生区域。
[0028]1^、1(2、1(3、1(4、1(5五个多边形结果,其中K1由四层光路层中的相应光路相交得到;K2由五层光路层中的相应光路相交得到;κ3由三层光路层中的相应光路相交得到;κ4由三层光路层中的相应光路相交得到;Κ5由两层光路层中的相应光路相交得到。
[0029]从而确定K5为假触摸发生区域,K2为真触摸发生区域;其余三个多边形单体需进一步筛选;检测经过K1的所有光路,发现存在光路F2,且该光路不经过K2,因此判定K1为真触摸发生区域;检测经过K3的所有光路,发现所有光路都经过判定为真触摸发生区域的多边形单体K1或K2,因此判定K3为假触摸发生区域;检测经过K4的所有光路,发现存在光路A1,且该光路不经过判定为真触摸发生区域的多边形单体,因此判定K4为真触摸发生区域。
【权利要求】
1.一种触摸屏触摸区域定位方法,其特征在于,包括以下步骤: (1)检测所有光路,得出所有被挡住的光路; (2)将被挡住的光路转化为多边形数据,即确定每个红外发射元件及红外接收元件的座标,从而确定被挡住光路的顶点的坐标; (3)假定同角度光路的集合为一层光路层;将一层光路层中的多边形与另一层光路层中的多边形相交,得到一组新的多边形,再将该组新多边形与再另一层光路层中的多边形相交,以再次得到新的多边形;如此重复至完成所有光路层的多边形相交,从而得到最后一组多边形,该最后组多边形至少包括一个多边形单体,并记录该组多边形数据,该组多边形数据由所有多边形单体数据组成。
2.根据权利要求1所述的一种触摸屏触摸区域定位方法,其特征在于,所述步骤(I)与步骤(2)之间还具有如下步骤:以一个红外发射元件至一个红外接收元件所形成的光路为单元光路,步骤(I)所得到光路,即是所有被挡住的单元光路,将所有被挡住的单元光路进行检测,若在同一层光路层存在相邻的单元光路,则将这些相邻单元光路进行合并,从而形成一组光路组。
3.根据权利要求2所述的一种触摸屏触摸区域定位方法,其特征在于,所述步骤(2)具体为:将被挡住的单元光路和/或光路组转化为多边形数据,即确定每个红外发射元件及红外接收元件的座标,从而确定被挡住光路的顶点的坐标。
4.根据权利要求1或2或3所述的一种触摸屏触摸区域定位方法,其特征在于,所述步骤(4)之后还包括筛选真触摸区域的步骤,该步骤包括 a、对经步骤(4)得到的最后组多边形中的所有多边形单体进行检测,判定由最多层光路层相交得到的多边形单体为真触摸发生区域;若多边形单体由小于m层的光路层相交得至IJ,则判定该多边形单体为假触摸发生区域;m小于光路层总层数。
5.根据权利要求4所述的一种触摸屏触摸区域定位方法,其特征在于,所述筛选真触摸区域的步骤还包括 b、若最后组多边形中的多边形单体由大于等于m层且小于总光路层层数的光路层相交得到,则检测经过该多边形单体的所有被挡住的光路,若存在经过该多边形单体但不经过已判定为真触摸发生区域的多边形单体的光路,则判定该多边形单体为真触摸发生区域,若不存在,则判定为假触摸发生区域。
【文档编号】G06F3/042GK103984449SQ201410236907
【公开日】2014年8月13日 申请日期:2014年5月30日 优先权日:2014年5月30日
【发明者】王迪, 李金鹏, 齐洋 申请人:湖州佳格电子科技有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1