CN102023761B - 一种触摸屏的多点检测计算方法 - Google Patents

一种触摸屏的多点检测计算方法 Download PDF

Info

Publication number
CN102023761B
CN102023761B CN201010574634XA CN201010574634A CN102023761B CN 102023761 B CN102023761 B CN 102023761B CN 201010574634X A CN201010574634X A CN 201010574634XA CN 201010574634 A CN201010574634 A CN 201010574634A CN 102023761 B CN102023761 B CN 102023761B
Authority
CN
China
Prior art keywords
pixel
touch point
touch
family
coordinate
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.)
Expired - Fee Related
Application number
CN201010574634XA
Other languages
English (en)
Other versions
CN102023761A (zh
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.)
Vtron Group Co Ltd
Original Assignee
Vtron Technologies Ltd
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 Vtron Technologies Ltd filed Critical Vtron Technologies Ltd
Priority to CN201010574634XA priority Critical patent/CN102023761B/zh
Publication of CN102023761A publication Critical patent/CN102023761A/zh
Application granted granted Critical
Publication of CN102023761B publication Critical patent/CN102023761B/zh
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Image Analysis (AREA)
  • Image Processing (AREA)
  • Length Measuring Devices By Optical Means (AREA)

Abstract

本发明公开一种触摸屏的多点检测计算方法,其包括以下步骤:1)启动摄像头,采集触摸图像;2)对触摸图像进行二值化处理,得到触摸图像的像素值;3)将采集的像素值与预定的像素值大小进行比较,大于预定值就储存触摸图像对应的像素坐标;4)后端处理模块读出已储存的像素坐标,采用靠近触摸点像素族重心算法对每个像素坐标进行分类并重新计算触摸点像素族的重心,最终识别一个或多个触摸点。本发明方法能快速准确的识别两个靠近甚至边界连通的两个触摸点,可靠性高。

Description

一种触摸屏的多点检测计算方法
技术领域
本发明涉及计算机视觉领域,特别涉及基于摄像头定位的触摸屏的多点检测计算方法。
背景技术
近年来,大屏幕触摸技术有了较大的发展,出现了红外LED扫描触摸屏,超声波触摸屏,摄像头后定位触摸屏,采用两个摄像头安装于触摸屏边角的触摸屏等,其中以摄像头后定位触摸屏可方便灵活的实现多点触摸,较容易实现多于两个以上触摸点的监测及跟踪,因此在多点触摸领域得到了广泛的应用。
所述摄像头后定位触摸屏,一般将摄像头采集到的图像进行二值化处理,即是设定一个预定值,将摄像头采集到的像素的亮度信息与此预定值比较,高于此预定值的像素被认为是有效的触摸点像素,存储模块将拍摄到的一帧图像的有效触摸点像素对应的摄像头坐标进行存储,后端处理模块将所存储的有效触摸点像素坐标进行按触摸点分类并计算触摸点的重心坐标,得到触摸点重心坐标后再进行图形校正可得到触摸屏的逻辑坐标。
所述的有效触摸点像素坐标分类是通过众多有效触摸点横坐标x及纵坐标y之间的关系进行分类的,通过判定前后读出有效像素横坐标x及纵坐标y之间的距离的关系来决定是否属于同一个触摸点。这是很直观的判别不同触摸点的方法,由于摄像头采集后的图像进行了二值化处理,经过处理后得到的触摸点像素,相同的触摸点包含的有效像素的坐标并不是严格连续分布的,个别有效像素坐标之间会存在几个像素的距离,但是属于同一个触摸点的,这样,采用这种直观的根据像素坐标间的距离来判定触摸点,为了提高判定的准确度,往往会将判定距离边界设置为几个像素,如两个有效像素之间的距离小于设定的几个像素则认为是同一个触摸点,相反则认为是不同的触摸点,如果两个手指分开的距离比较大,这种判定的方法是可以接受的,但是如果两个手指距离比较小,甚至两个手指挨在一起,这种判定方法就会产生错误的触摸点坐标了,因为两个手指靠近到这种判定设定的像素间距离时,这种算法认为两个手指触摸点为一个触摸点,造成了判断错误,在多点操作时产生了不可靠的坐标,造成了手势操作、手指近距离画线等错误。
发明内容
为克服现有技术的缺陷,本发明的目的提供了一种触摸屏的多点检测计算方法,其正是为了提高手指间距离很小,甚至紧挨在一起触摸时,多触摸点检测算法的准确度提出的。利用本发明的方法可以有效的提高摄像头后定位多点触摸的检测准确性,提高多点触摸屏的使用性能。
为了实现摄像头定位中多个触摸点靠近情形下能准确识别多个触摸点,本发明采用如下技术方案:
一种触摸屏的多点检测计算方法,其包括以下步骤:
1)启动摄像头,采集触摸图像;
2)对触摸图像进行二值化处理,得到触摸图像的像素值;
3)将采集的像素值与预定的像素值大小进行比较,大于预定值就储存触摸图像对应的像素坐标;
4)后端处理模块读出已储存的像素坐标,采用靠近触摸点像素族重心算法对每个像素坐标进行分类并重新计算触摸点像素族的重心,最终识别一个或多个触摸点。
步骤1)中摄像头按照行顺序,每个像素时钟采集一个像素值。
步骤4)中的坐标分类方法及靠近触摸点像素族重心算法计算过程如下步骤:
S1:初始化各触摸点像素族各变量值为零;  
S2:读出一个像素坐标;
S3:判断当前像素坐标是否为第一个读出坐标,是则进入步骤S7;否则进入步骤S4;
S4:计算当前像素坐标与已保存各触摸点族重心的距离,选择最小的距离; 
S5:判断最小距离是否小于预定值,是则进入步骤S6;否则进入步骤S7;
S6:将当前像素坐标加入距离最近的触摸点族,重新计算该触摸点族的重心,返回步骤S2;
S7:新增一个触摸点族,将当前像素坐标加入该靠近触摸点像素族并计算重心坐标,返回步骤S2。
步骤S1中初始化各触摸点像素族各变量值为零,其中变量包含各触摸点像素族横坐标和∑Xn=0,纵坐标和∑Yn=0,触摸点像素族包含像素个数∑Cn=0,当前像素族重心A'n=0,下标n表示支持的触摸点数,各触摸点族的序号为:0,1,2…n-1。
步骤S5中,所述预定值是根据实际应用环境而设定的,根据触摸点包含像素的多少而定,触摸点包含像素大于一预定值,则设为大于等于8个像素的值,若触摸点包含像素小于一预定值,则取小于等于8个像素的值。在现有大屏幕显示屏中,显示像素尺寸为1.3毫米,一个手指的正常触摸动作所得到的有效像素为一个半径接近5个像素左右的近似圆斑,可根据具体的实验环境所得的手指触摸点面积的大小调整预定值,通常的触摸点像素半径不大于5个像素,大于8个像素的比较少。
上述重心算法如下:
横坐标和累加∑Xn=∑Xn+X,纵坐标和∑Yn=∑Yn+Y;
触摸点族包含像素个数∑Cn=∑Cn+ 1;
重心坐标A’ Xn=∑Xn/∑Cn ,A’ Yn =∑Yn/∑Cn;
其中,X为读出的触摸点像素的横坐标,Y为读出的触摸点像素纵坐标下标n表示支持的触摸点数,各触摸点族的序号为:0,1,2…n-1。本发明方法能快速准确的识别两个靠近甚至边界连通的两个触摸点,可靠性高。
附图说明
图1 为本发明坐标分类及重心计算流程图;
图2 为本发明中包含多个像素的两个触摸点示意图。
具体实施方式
下面对本发明加以详细说明,应指出的是,所描述的实施例旨在便于对本发明的理解,而对其不起任何限定作用。
摄像头拍摄触摸屏表面图像并经过二值化处理得到了如图2所示的图像,后端处理模块按照存储顺序读出各像素坐标。如图2所示,像素D的坐标是为第一读到的坐标,E为第二个读到的坐标,后端处理模块读完一行,Y方向增加一行并接着从左到右继续读出像素坐标。其中E,F之间有两个像素的距离,D、E、F、G、H属于同一行的像素坐标。D、E、F属于触摸点A,G、H属于触摸点B。
        本发明坐标分类及重心计算方法通过如下步骤实现:
步骤S1:初始化各触摸点像素族各变量值为零,其中变量包含各触摸点像素族横坐标和∑Xn=0,纵坐标和∑Yn=0,触摸点像素族包含像素个数∑Cn=0,当前像素族重心A’ n=0,下标n表示支持的触摸点数,各触摸点族的序号为(0,1,2…n-1);                                                                                                                                
步骤S2:读出一个像素坐标;
步骤S3:判断当前坐标为第一个读出坐标,是则进入步骤S7;不是则进入步骤S4;
步骤S4:计算当前坐标与已保存各触摸点族重心的距离,选择最小的距离;
步骤S5:判断最小距离是否小于8,是则进入步骤S6;不是则进入步骤S7;
步骤S6:将当前坐标加入距离最近的触摸点族,重新计算该触摸点族的重心,返回步骤S2;
步骤S7:新增一个触摸点族,将当前坐标加入该触摸点族并计算重心坐标,
返回步骤S2;
通过上述步骤,下边对图2表示的像素判断过程进行详细描述:
坐标D:
坐标D为第一个读出坐标,直接进入步骤S7,执行横坐标和累加∑X0=∑X0+ XD,纵坐标和∑Y0=∑Y0+ YD,触摸点族包含像素个数∑C0=∑C0+ 1,重心坐标A’ x0=∑X0/∑C0 ,A’ y0=∑Y0/∑C0;  
坐标E:
坐标E不是第一个读出坐标,进入步骤S4,执行与当前保存的触摸点族重心距离的运算,其中只保存了序号为0的重心为(A’ x0,A’ y0),他们的距离为1;进入步骤S5,执行到重心距离判断,满足距离小于8;进入步骤S6,执行横坐标和累加∑X0=∑X0+ XE,纵坐标和∑Y0=∑Y0+ YV,触摸点族包含像素个数∑C0=∑C0+ 1,重心坐标A’ x0=∑X0/∑C0 ,A’ y0=∑Y0/∑C0;
坐标F:
坐标F执行跟坐标E一样的过程。
坐标G:
坐标G不是第一个读出坐标,进入步骤S4,执行与当前保存的触摸点族重心距离的运算,其中只保存了序号为0的重心为(A’ x0,A’ y0),他们的距离大于8;进入步骤S5,执行到重心距离判断,距离大于8;进入步骤S7,新增一个触摸点族,即触摸点族序号加1,执行横坐标和累加∑X1=∑X1+ XG,纵坐标和∑Y1=∑Y1+ YE,触摸点族包含像素个数∑C1=∑C1+ 1,重心坐标A’ x1=∑X0/∑C1 ,A’ y1=∑Y1/∑C1;
坐标H:
坐标H不是第一个读出坐标,进入步骤S4,执行与当前保存的触摸点族重心距离的运算,其中保存了序号为0,1的重心为(A’ x0,A’ y0)、(A’ x1,A’ y1),取较的距离,即到(A’ x1,A’ y1)的距离;进入步骤S5,执行到重心距离判断,满足距离小于8;进入步骤S6,执行横坐标和累加∑X1=∑X1+ XG,纵坐标和∑Y1=∑Y1+ YE,触摸点族包含像素个数∑C1=∑C1+ 1,重心坐标A’ x1=∑X0/∑C1 ,A’ y1=∑Y1/∑C1;
坐标C:
       坐标C不是第一个读出坐标,进入步骤S4,执行与当前保存的触摸点族重心距离的运算,其中保存了序号为0,1的重心为(A’ x0,A’ y0)、(A’ x1,A’ y1),取较的距离,即到(A’ x1,A’ y1)的距离;进入步骤S5,执行到重心距离判断,满足距离小于8;进入步骤S6,执行横坐标和累加∑X1=∑X1+ XG,纵坐标和∑Y1=∑Y1+ YE,触摸点族包含像素个数∑C1=∑C1+ 1,重心坐标A’ x1=∑X0/∑C1 ,A’ y1=∑Y1/∑C1;
以上过程直到读出了所有存储的像素坐标,执行完坐标分类过程后即可得到触摸点A的重心坐标A’=(A’ x0,A’ y0),触摸点B的重心坐标B’=(A’ x1,A’ y1)。
在以上坐标分类及重心计算过程中,当前坐标与像素族重心距离设定为8是可以根据实际应用环境而变更的。在坐标分类的过程中,各像素族重心随着新的坐标的加入而重新计算。
采用以上坐标分类方法及重心计算过程可以解决两个触摸点边界靠近甚至是边界连接在一起时造成的坐标分类错误,采用传统的坐标分类方法无法正确的区分为两个触摸点,是因为传统的坐标分类方法是通过坐标之间的距离来判定是否属于同一个触摸点族,如图2所示:触摸点A和B包含多个像素,触摸点之间边界是联通的,触摸点像素坐标按照X方向从左到右被读出,读完一行,Y方向增加一行,继续从左到右读出。如果按照前后两次读出坐标间距离来分类触摸点,显然在两个触摸点中间的C处,两个触摸点的边界是连通的,按照前后读出坐标间的距离无法正确判定C处的像素是属于触摸点A还是触摸点B的。
本发明方法是通过像素坐标到重心的距离来判定判定C处像素是属于触摸点A还是触摸点B的。如图2所示A’是A触摸点的重心坐标,B’是B触摸点的重心坐标,将C处的坐标与A’、B’的坐标进行距离运算,找出距离较短的,同时这个较短的距离满足小于设定的8个像素,这个设定的8个像素是可以根据实际应用环境而设定的,根据触摸点包含像素的多少而定,触摸点包含像素多,则8应该设为更大的值,如果触摸点包含像素较少,则8可以取更小的值。通过算出了C处到A’、B’的距离可以很容易的决定C处坐标属于哪一个触摸点。

Claims (3)

1.一种触摸屏的多点检测计算方法,其特征在于,包括以下步骤:
1)启动摄像头,采集触摸图像;
2)对触摸图像进行二值化处理,得到触摸图像的像素值;
3)将采集的像素值与预定的像素值大小进行比较,大于预定值就储存触摸图像对应的像素坐标;
4)后端处理模块读出已储存的像素坐标,采用靠近触摸点像素族重心算法对每个像素坐标进行分类并重新计算触摸点像素族的重心,最终识别一个或多个触摸点;
步骤4)中的坐标分类方法及靠近触摸点像素族重心算法计算过程如下步骤:
S1:初始化各触摸点像素族各变量值为零; 
S2:读出一个像素坐标;
S3:判断当前像素坐标是否为第一个读出坐标,是则进入步骤S7;否则进入步骤S4;
S4:计算当前像素坐标与已保存各触摸点族重心的距离,选择最小的距离; 
S5:判断最小距离是否小于预定值,是则进入步骤S6;否则进入步骤S7;
S6:将当前像素坐标加入距离最近的触摸点族,重新计算该触摸点族的重心,返回步骤S2;
S7:新增一个触摸点族,将当前像素坐标加入该触摸点像素族并计算重心坐标,返回步骤S2;
步骤S5中,所述预定值是根据实际应用环境而设定的,根据触摸点包含像素的多少而定,触摸点包含像素大于一预定值,则设为大于等于8个像素的值,若触摸点包含像素小于一预定值,则取小于等于8个像素的值;
重心算法如下:
横坐标和累加∑Xn=∑Xn+X,纵坐标和∑Yn=∑Yn+Y;
触摸点族包含像素个数∑Cn=∑Cn+ 1;
重心坐标A’ Xn=∑Xn/∑Cn ,A’ Yn =∑Yn/∑Cn;
其中,X为读出的触摸点像素的横坐标,Y为读出的触摸点像素纵坐标下标n表示支持的触摸点数,各触摸点族的序号为:0,1,2…n-1。
2.根据权利要求1所述的触摸屏的多点检测计算方法,其特征在于,步骤1)中摄像头按照行顺序,每个像素时钟采集一个像素值。
3.根据权利要求1所述的触摸屏的多点检测计算方法,其特征在于,步骤S1中初始化各触摸点像素族各变量值为零,其中变量包含各触摸点像素族横坐标和∑Xn=0,纵坐标和∑Yn=0,触摸点像素族包含像素个数∑Cn=0,当前像素族重心A'n=0,下标n表示支持的触摸点数,各触摸点族的序号为:0,1,2…n-1。
CN201010574634XA 2010-12-06 2010-12-06 一种触摸屏的多点检测计算方法 Expired - Fee Related CN102023761B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201010574634XA CN102023761B (zh) 2010-12-06 2010-12-06 一种触摸屏的多点检测计算方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201010574634XA CN102023761B (zh) 2010-12-06 2010-12-06 一种触摸屏的多点检测计算方法

Publications (2)

Publication Number Publication Date
CN102023761A CN102023761A (zh) 2011-04-20
CN102023761B true CN102023761B (zh) 2012-06-06

Family

ID=43865115

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201010574634XA Expired - Fee Related CN102023761B (zh) 2010-12-06 2010-12-06 一种触摸屏的多点检测计算方法

Country Status (1)

Country Link
CN (1) CN102023761B (zh)

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103164059A (zh) * 2011-12-12 2013-06-19 联咏科技股份有限公司 多点触控定位方法
CN103513801B (zh) * 2012-06-18 2016-08-10 宸鸿科技(厦门)有限公司 触控装置及其检测方法
CN102880344B (zh) * 2012-09-13 2015-10-07 广东威创视讯科技股份有限公司 一种多触摸点识别方法
CN103853388B (zh) * 2012-12-05 2017-01-25 北京汇冠新技术股份有限公司 一种提高红外触摸屏触摸精度的方法
CN110045868B (zh) * 2019-03-25 2022-07-26 深圳市德明利技术股份有限公司 基于类聚算法的触摸点修正方法、触控装置及电子设备

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1912816A (zh) * 2005-08-08 2007-02-14 北京理工大学 一种基于摄像头的虚拟触摸屏***
CN101882033A (zh) * 2010-07-16 2010-11-10 广东威创视讯科技股份有限公司 一种提高获取触摸点坐标速度的方法及装置

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1912816A (zh) * 2005-08-08 2007-02-14 北京理工大学 一种基于摄像头的虚拟触摸屏***
CN101882033A (zh) * 2010-07-16 2010-11-10 广东威创视讯科技股份有限公司 一种提高获取触摸点坐标速度的方法及装置

Also Published As

Publication number Publication date
CN102023761A (zh) 2011-04-20

Similar Documents

Publication Publication Date Title
EP2767889B1 (en) Apparatus and method for recognizing motion by using event-based vision sensor
US9842122B2 (en) Method and apparatus for searching images
US11775076B2 (en) Motion detecting system having multiple sensors
CN102023761B (zh) 一种触摸屏的多点检测计算方法
TWI439948B (zh) 運用雙線掃瞄器設備的使用者輸入及方法
CN102073414B (zh) 基于机器视觉的多点触摸跟踪方法
CN105528592A (zh) 一种指纹扫描和手势识别方法及装置
CN102426480A (zh) 一种人机交互***及其实时手势跟踪处理方法
US20110268365A1 (en) 3d hand posture recognition system and vision based hand posture recognition method thereof
CN102232209A (zh) 解决触摸检测***中的多点触摸的立体光学传感器
US11422660B2 (en) Input device, input method and program
CN103970322B (zh) 一种触摸屏轨迹跟踪处理的方法和***
CN101159018A (zh) 一种图像特征点定位方法及装置
CN103106391A (zh) 手势识别设备及其方法
CN102799273A (zh) 交互控制***及其交互控制方法
CN102364419B (zh) 一种摄像式触摸控制方法及其***
US9971429B2 (en) Gesture recognition method, apparatus and device, computer program product therefor
CN102004585B (zh) 一种触摸屏多区域识别方法
CN102456127A (zh) 头部姿态估计设备和方法
CN102346605B (zh) 一种摄像式触摸控制方法及其***
CN102495695B (zh) 红外对管触摸屏的多点触摸识别方法及触摸装置、***
US10551934B2 (en) Gesture recognition method, apparatus and device, computer program product therefor
CN103914668A (zh) 一种防止误触摸的触摸识别装置及识别方法
CN113126795B (zh) 一种触控显示装置的触控识别方法及相关设备
US11287897B2 (en) Motion detecting system having multiple sensors

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant
CP03 Change of name, title or address

Address after: Kezhu road high tech Industrial Development Zone, Guangzhou city of Guangdong Province, No. 233 510670

Patentee after: Wei Chong group Limited by Share Ltd

Address before: 510663 No. 6, color road, hi tech Industrial Development Zone, Guangdong, Guangzhou, China

Patentee before: Guangdong Weichuangshixun Science and Technology Co., Ltd.

CP03 Change of name, title or address
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20120606

Termination date: 20191206

CF01 Termination of patent right due to non-payment of annual fee