《一种触摸屏触摸区域定位方法.pdf》由会员分享,可在线阅读,更多相关《一种触摸屏触摸区域定位方法.pdf(12页珍藏版)》请在专利查询网上搜索。
1、(10)申请公布号 CN 103984449 A (43)申请公布日 2014.08.13 CN 103984449 A (21)申请号 201410236907.8 (22)申请日 2014.05.30 G06F 3/042(2006.01) (71)申请人 湖州佳格电子科技有限公司 地址 313000 浙江省湖州市湖州经济技术开 发区青铜路699号湖州科技创业园A幢 328 室 (72)发明人 王迪 李金鹏 齐洋 (74)专利代理机构 湖州金卫知识产权代理事务 所 ( 普通合伙 ) 33232 代理人 裴金华 (54) 发明名称 一种触摸屏触摸区域定位方法 (57) 摘要 本发明涉及触摸屏。
2、技术, 特别涉及一种触摸 屏触摸区域定位方法。本发明是通过以下技术方 案得以实现的 : 一种触摸屏触摸区域定位方法, 包括以下步骤 :(1) 得出所有被挡住的光路 ;(2) 将被挡住的光路转化为多边形数据 ;(3) 假定同 角度光路的集合为一层光路层 ; 将一层光路层中 的多边形与另一层光路层中的多边形相交, 得到 一组新的多边形, 再将该组新多边形与再另一层 光路层中的多边形相交, 以再次得到新的多边形 ; 如此重复至完成所有光路层的多边形相交, 从而 得到最后一组多边形, 该最后组多边形至少包括 一个多边形单体, 并记录该组多边形数据, 该组多 边形数据由所有多边形单体数据组成。本发明对 。
3、触摸区域的识别耗时短, 效率高。 (51)Int.Cl. 权利要求书 1 页 说明书 5 页 附图 5 页 (19)中华人民共和国国家知识产权局 (12)发明专利申请 权利要求书1页 说明书5页 附图5页 (10)申请公布号 CN 103984449 A CN 103984449 A 1/1 页 2 1. 一种触摸屏触摸区域定位方法, 其特征在于, 包括以下步骤 : (1) 检测所有光路, 得出所有被挡住的光路 ; (2) 将被挡住的光路转化为多边形数据, 即确定每个红外发射元件及红外接收元件的 座标, 从而确定被挡住光路的顶点的坐标 ; (3) 假定同角度光路的集合为一层光路层 ; 将一层光。
4、路层中的多边形与另一层光路层 中的多边形相交, 得到一组新的多边形, 再将该组新多边形与再另一层光路层中的多边形 相交, 以再次得到新的多边形 ; 如此重复至完成所有光路层的多边形相交, 从而得到最后一 组多边形, 该最后组多边形至少包括一个多边形单体, 并记录该组多边形数据, 该组多边形 数据由所有多边形单体数据组成。 2. 根据权利要求 1 所述的一种触摸屏触摸区域定位方法, 其特征在于, 所述步骤 (1) 与 步骤 (2) 之间还具有如下步骤 : 以一个红外发射元件至一个红外接收元件所形成的光路为 单元光路, 步骤 (1) 所得到光路, 即是所有被挡住的单元光路, 将所有被挡住的单元光路。
5、进 行检测, 若在同一层光路层存在相邻的单元光路, 则将这些相邻单元光路进行合并, 从而形 成一组光路组。 3. 根据权利要求 2 所述的一种触摸屏触摸区域定位方法, 其特征在于, 所述步骤 (2) 具 体为 : 将被挡住的单元光路和 / 或光路组转化为多边形数据, 即确定每个红外发射元件及 红外接收元件的座标, 从而确定被挡住光路的顶点的坐标。 4.根据权利要求1或2或3所述的一种触摸屏触摸区域定位方法, 其特征在于, 所述步 骤 (4) 之后还包括筛选真触摸区域的步骤, 该步骤包括 a、 对经步骤 (4) 得到的最后组多边形中的所有多边形单体进行检测, 判定由最多层光 路层相交得到的多边形。
6、单体为真触摸发生区域 ; 若多边形单体由小于 m 层的光路层相交得 到, 则判定该多边形单体为假触摸发生区域 ; m 小于光路层总层数。 5. 根据权利要求 4 所述的一种触摸屏触摸区域定位方法, 其特征在于, 所述筛选真触 摸区域的步骤还包括 b、 若最后组多边形中的多边形单体由大于等于 m 层且小于总光路层层数的光路层相 交得到, 则检测经过该多边形单体的所有被挡住的光路, 若存在经过该多边形单体但不经 过已判定为真触摸发生区域的多边形单体的光路, 则判定该多边形单体为真触摸发生区 域, 若不存在, 则判定为假触摸发生区域。 权 利 要 求 书 CN 103984449 A 2 1/5 页。
7、 3 一种触摸屏触摸区域定位方法 技术领域 0001 本发明涉及触摸屏技术, 特别涉及一种触摸屏触摸区域定位方法。 背景技术 0002 现有技术中的多点识别定位方法, 如申请公布号为 CN102419662A 的发明专利申 请所公开的一种红外触摸屏的多点识别方法及系统, 其首先生成与红外触摸屏在一次识别 过程中轴对应的轴图像 ; 然后在轴图像中提取触摸点信息 ; 然而此种基于图像处理的识别 方法, 触摸点的判定需全局处理, 因此耗时较长。 发明内容 0003 本发明的目的是提供一种触摸屏触摸区域定位方法, 该方法对触摸区域的识别耗 时短, 效率高。 0004 本发明的上述技术目的是通过以下技术。
8、方案得以实现的 : 一种触摸屏触摸区域定 位方法, 包括以下步骤 : (1) 检测所有光路, 得出所有被挡住的光路 ; (2) 将被挡住的光路转化为多边形数据, 即确定每个红外发射元件及红外接收元件的 座标, 从而确定被挡住光路的顶点的坐标 ; (3) 假定同角度光路的集合为一层光路层 ; 将一层光路层中的多边形与另一层光路层 中的多边形相交, 得到一组新的多边形, 再将该组新多边形与再另一层光路层中的多边形 相交, 以再次得到新的多边形 ; 如此重复至完成所有光路层的多边形相交, 从而得到最后一 组多边形, 该最后组多边形至少包括一个多边形单体, 并记录该组多边形数据, 该组多边形 数据由所。
9、有多边形单体数据组成。 0005 以从一个红外发射元件至一个红外接收元件的光路为单元光路 ; 每个红外发射元 件所确定的光路起点的光宽应相等于每个红外接收元件所确定的光路终点的光宽, 假定每 个红外发射元件所确定的光路起点的光宽为单位光宽 ; 依据触摸屏分辨率, 确定单位光宽 为 n ; 从而建立一个坐标 XY 系, 使每个红外发射元件及红外接收元件都由两个坐标限定。 0006 作为本发明的优选, 所述步骤 (1) 与步骤 (2) 之间还具有如下步骤 : 以一个红外发 射元件至一个红外接收元件所形成的光路为单元光路, 步骤 (1) 所得到光路, 即是所有被挡 住的单元光路, 将所有被挡住的单元。
10、光路进行检测, 若在同一层光路层存在相邻的单元光 路, 则将这些相邻单元光路进行合并, 从而形成一组光路组。 0007 作为本发明的优选, 所述步骤 (2) 具体为 : 将被挡住的单元光路和 / 或光路组转化 为多边形数据, 即确定每个红外发射元件及红外接收元件的座标, 从而确定被挡住光路的 顶点的坐标。 0008 作为本发明的优选, 所述步骤 (3) 之后还包括筛选真触摸区域的步骤, 该步骤包括 a、 对经步骤 (3) 得到的最后组多边形中的所有多边形单体进行检测, 判定由最多层光 路层相交得到的多边形单体为真触摸发生区域 ; 若多边形单体由小于 m 层的光路层相交得 说 明 书 CN 10。
11、3984449 A 3 2/5 页 4 到, 则判定该多边形单体为假触摸发生区域 ; m 小于光路层总层数。 0009 作为本发明的优选, 所述筛选真触摸区域的步骤还包括 b、 若最后组多边形中的多边形单体由大于等于 m 层且小于总光路层层数的光路层相 交得到, 则检测经过该多边形单体的所有被挡住的光路, 若存在经过该多边形单体但不经 过已判定为真触摸发生区域的多边形单体的光路, 则判定该多边形单体为真触摸发生区 域, 若不存在, 则判定为假触摸发生区域。 0010 综上所述, 本发明具有以下有益效果 : 本发明对每条单元光路定义至一个红外发 射元件与一个红外接收元件, 从而根据触摸屏的分辨率。
12、对每个红外发射元件与每个红外接 收元件的位置通过坐标定位, 从而相当于对每条单元光路所形成的多边形通过坐标定位 ; 在识别触摸点时, 首先通过光路扫描, 得出被挡住的单元光路, 从而缩小了触摸发生区域的 判定范围, 因此节省了时间, 提高了识别效率, 同时由于根据分辨率对每条单元光路都进行 了坐标定位, 使得在判定触摸发生区域时更为精准 ; 本发明在确定光路层的角度时, 无需连 续的角度。 附图说明 0011 图 1 是实施例 2 触摸发生区域 K 示意图 ; 图 2 是实施例 2 中被挡住光路示意图 ; 图 3 是实施例 2 中光路 A 与光路 B 相交示意图 ; 图 4 是实施例 2 中区。
13、域 G 与光路 C 相交示意图 ; 图 5 是实施例 2 中同角度单元光路合并示意图 ; 图 6 是实施例 4 中触摸发生区域示意图。 具体实施方式 0012 以下结合附图对本发明作进一步详细说明。 0013 本具体实施例仅仅是对本发明的解释, 其并不是对本发明的限制, 本领域技术人 员在阅读完本说明书后可以根据需要对本实施例做出没有创造性贡献的修改, 但只要在本 发明的权利要求范围内都受到专利法的保护。 0014 实施例 1 : 如图 1 所示, 触摸屏四边分别设有红外发射元件 1 及红外接收元件 2。 0015 假定从一个红外发射元件 1 至一个红外接收元件 2 的光路为单元光路。 001。
14、6 以红外发射元件1作为光路起点, 红外接收元件2作为光路终点, 每个红外发射元 件 1 所确定的光路起点的光宽应相等于每个红外接收元件 2 所确定的光路终点的光宽, 假 定每个红外发射元件 1 所确定的光路起点的光宽为单位光宽。 0017 依据触摸屏分辨率, 确定单位光宽为n ; 从而建立一个坐标XY系, 如图1, 触摸屏左 下角的点为原点 (0, 0) , 右上角的点为 (Xmax, Ymax) ; 从而使每个红外发射元件及红外接收元 件都由两个坐标限定。 0018 基于多边形的触摸区域定位方法, 包括以下步骤 : (1) 硬件初始化, 从而确定, 每个红外发射元件及红外接收元件所对应的座。
15、标, 假定同 角度单元光路的集合为一层光路层, 确定光路层层数 mmax及每层光路层的角度 ; (2) 在一帧内, 检测所有单元光路, 得出所有被挡住的单元光路 ; 说 明 书 CN 103984449 A 4 3/5 页 5 (3) 检测每层光路层中被挡住的单元光路, 若该层光路层中被挡住的单元光路中具有 相邻的单元光路则将这些相邻的单元光路进行合并, 以形成一组光路 ; (4) 将经步骤 (3) 得到的每组光路和 / 或每个单元光路转化为多边形数据, 即根据步骤 (1) 所确定的每个红外发射元件及红外接收元件所对应的座标, 记录形成由步骤 (3) 得到的 每组光路和 / 每个光路的顶点的坐。
16、标, 并存储在内存中, 每组光路或每个单元光路对应一 个多边形 ; (5) 将一层光路层中的多边形与另一层光路层中的多边形相交, 根据两个任意多边形 相交得到一个新的多边形的逻辑算法, 得到一组新的多边形, 该组新的多边形包括一个或 一个以上的多边形单体, 存储在内存中 ; (6) 将步骤 (5) 得到的该组新多边形再与另一层光路层中的多边形相交, 根据步骤 (5) 的逻辑算法, 再次得到一组新的多边形, 存储于内存中 ; (7) 重复步骤 (6) 至完成所有光路层的多边形相交, 从而得到最后一组多边形 ; (8) 对经步骤 (7) 得到最后组多边形中的每个多边形进行筛选, 从而得到触摸发生区。
17、 域。 0019 步骤 (8) 中的筛选方法包括以下步骤 : a、 对经步骤 (4) 得到的最后组多边形中的所有多边形单体进行检测, 判定由最多层光 路层相交得到的多边形单体为真触摸发生区域 ; 若多边形单体由小于 m 层的光路层相交得 到, 则判定该多边形单体为假触摸发生区域 ; m 小于光路层总层数 ; b、 若最后组多边形中的多边形单体由大于等于 m 层且小于总光路层层数的光路层相 交得到, 则检测经过该多边形单体的所有被挡住的光路, 若存在经过该多边形单体但不经 过已判定为真触摸发生区域的多边形单体的光路, 则判定该多边形单体为真触摸发生区 域, 若不存在, 则判定为假触摸发生区域。 。
18、0020 当实际触摸发生区域比较小时, 有些角度的光路由于挡住的红外线分量比较小, 导致红外对管的信号波动不是很大, 使得步骤 2 中对光路挡住的判断有误, 从而出现逻辑 上本因出现的光路缺失现象, 因此出现某些真触摸发生区域由小于 m 层的光路层相交得 到。 0021 所述两个任意多边形相交得到一个新的多边形的逻辑算法是基于直线相交得到 交点的逻辑算法。 0022 直线相交得到交点的逻辑算法为 : 设直线 A(x1, y1)(x2, y2) 直线 B(x3, y3)(x4, y4) int nDx1=x2-x1; int nDy1=y2-y1; int nDx2=x4-x3; int nDy。
19、2=y4-y3; int nB1=nDy1*x1-nDx1*y1; int nB2=nDy2*x3-nDx2*y3; int nD=nDx1*nDy2-nDx2*nDy1; float fBD1=(float)nB1/nD ; float fBD2=(float)nB2/nD ; 说 明 书 CN 103984449 A 5 4/5 页 6 nB1=(int)(fBD2*nDx1) ; nB2=(int)(fBD1*nDx2) ; x=(_signed_short)(nB1-nB2) ; nB1=(int)(fBD2*nDy1) ; nB2=(int)(fBD1*nDy2) ; y=(_sig。
20、ned_short)(nB1-nB2) ; 直线 A 与直线 B 的交点为 (x, y) 。 0023 当然两个多边形相交必然得到另一个多边形, 其中的算法也是多种多样, 并不局 限于上述一种算法。 0024 实施例 2 : 如图 1 所示, 触摸区域发生的区域 K, 对该区域 K 的识别步骤如下, (1) 在一帧内, 进行所有光路层扫描, 在图 2 中, 相同角度的虚线及实线代表一层光路 层, 得出所有被挡住的单元光路, 该单元光路为三条, 分别为 A、 B、 C, 如图 2 中实线区域, 并 获得此三条光路的坐标, 即光路 A 的四个顶点为 A1(Xa1, Ya1) 、 A2(Xa2, Y。
21、a2) 、 A3(Xa3, Ya3) 、 A4 (Xa4, Ya4) , 由于三条光路为单元光路, Xa2-Xa1=n, Ya1=Ya2=Ymax, Xa3-Xa4=n, Ya3=Ya4=0 ; 光路 B 的四个顶点为 B1(Xb1, Yb1) 、 B2(Xb2, Yb2) 、 B3(Xb3, Yb3) 、 B4(Xb4, Yb4) , 由于三条光 路为单元光路, Xb2-Xb1=n, Yb1=Yb2=Ymbx, Xb3-Xb4=n, Yb3=Yb4=0 ; 光路 C 的四个顶点为 C1(Xc1, Yc1) 、 C2(Xc2, Yc2) 、 C3(Xc3, Yc3) 、 C4(Xc4, Yc4。
22、) , 由于三条光 路为单元光路, Xc2-Xc1=n, Yc1=Yc2=Ymcx, Xc3-Xc4=n, Yc3=Yc4=0 ; (2) 如图 3 所示, 先将光路 A 与光路 B 相交, 得到多边形结果, 即区域 G, 即可根据上述 直线相交逻辑算法, 得出区域 G 四个顶点的坐标, 即 G1(Xg1, Yg1) 、 G2(Xg2, Yg2) 、 G3(Xg3, Yg3) 、 G4(Xg4, Yg4) , (3) 如图 4 所示, 再将区域 G 与光路 C 相交, 得到另一多边形结构, 即区域 K, 再根据上 述直线相交逻辑算法, 得出区域 K 五个顶点的坐标, 即 K1(Xk1, Yk1。
23、) 、 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 实施例。
24、 4 : 如图 6 所示, 触摸发生区域为 K1、 K2与 K4, 识别这两个触摸发生区域的过 程如下 : 假定光路层 mmax为六层, 分别 A、 B、 C、 D、 E 及 F ; 每层光路层都用不同角度的虚线及 实线在图 6 中示出。 0027 按实施例 1 得到被挡住的光路为 : 光路层 A 中为 A1、 A2、 A3; 光路层 B 中为 B1; 光路 层 C 中为 C1、 C1; 光路层 D 中为 D1; 光路层 E 中为 E1; 光路层 F 为 F1、 F2; 这些光路在图 6 中 用实线表示 ; 从而得到五个多边形结果, 分别为 K1、 K2、 K3、 K4、 K5, 当然实际得到。
25、的多边形不 止这五个, 本实施例只是选取这五个多边形进行示例 ; 确定由三层以下, 不包括三层的光路层相交得到的多边形结果为假触摸发生区域, 由 当前最多层光路层相交得到的多边形结果为真触摸发生区域。 0028 K1、 K2、 K3、 K4、 K5五个多边形结果, 其中 K1由四层光路层中的相应光路相交得到 ; K2 说 明 书 CN 103984449 A 6 5/5 页 7 由五层光路层中的相应光路相交得到 ; K3由三层光路层中的相应光路相交得到 ; K4由三层 光路层中的相应光路相交得到 ; K5由两层光路层中的相应光路相交得到。 0029 从而确定 K5为假触摸发生区域, K2为真触。
26、摸发生区域 ; 其余三个多边形单体需进 一步筛选 ; 检测经过 K1的所有光路, 发现存在光路 F2, 且该光路不经过 K2, 因此判定 K1为真 触摸发生区域 ; 检测经过 K3的所有光路, 发现所有光路都经过判定为真触摸发生区域的多 边形单体 K1或 K2, 因此判定 K3为假触摸发生区域 ; 检测经过 K4的所有光路, 发现存在光路 A1, 且该光路不经过判定为真触摸发生区域的多边形单体, 因此判定 K4为真触摸发生区域。 说 明 书 CN 103984449 A 7 1/5 页 8 图 1 说 明 书 附 图 CN 103984449 A 8 2/5 页 9 图 2 说 明 书 附 图 CN 103984449 A 9 3/5 页 10 图 3 说 明 书 附 图 CN 103984449 A 10 4/5 页 11 图 4 说 明 书 附 图 CN 103984449 A 11 5/5 页 12 图 5 图 6 说 明 书 附 图 CN 103984449 A 12 。