一种检测触控系统屏幕触点数目的方法与流程

文档序号:16703812发布日期:2019-01-22 21:57阅读:1329来源:国知局
一种检测触控系统屏幕触点数目的方法与流程

本发明涉及图像识别技术领域,特别是一种检测触控系统屏幕触点数目的方法。



背景技术:

K-means算法是很典型的基于距离的聚类算法,采用距离作为相似性的评价指标,即认为两个对象的距离越近,其相似度就越大。该算法认为簇是由距离靠近的对象组成的,因此把得到紧凑且独立的簇作为最终目标。

k个初始类聚类中心点的选取对聚类结果具有较大的影响,因为在该算法第一步中是随机的选取任意k个对象作为初始聚类的中心,初始地代表一个簇。该算法在每次迭代中对数据集中剩余的每个对象,根据其与各个簇中心的距离将每个对象重新赋给最近的簇。当考察完所有数据对象后,一次迭代运算完成,新的聚类中心被计算出来。如果在一次迭代前后,J的值没有发生变化,说明算法已经收敛。

算法过程为:从N个文档随机选取K个文档作为质心;对剩余的每个文档测量其到每个质心的距离,并把它归到最近的质心的类;重新计算已经得到的各个类的质心;迭代2~3步直至新的质心与原质心相等或小于指定阈值,算法结束。

在触控系统中,采用K-means算法的思想,去计算屏幕上手指触点的数目,但是在K-means算法中K是事先给定的,很多时候,事先并不知道给定的数据集应该分成多少个类别才最合适,因此,计算屏幕上手指触点的数目依然存在很多问题。



技术实现要素:

为了解决上述问题,本发明提出了一种检测触控系统屏幕触点数目的方法。

本发明的具体方案如下:

一种检测触控系统屏幕触点数目的方法,所述触控系统包括屏幕(1)、摄像机(2)和主机(3),摄像机(2)与主机(3)通过数据线连接,主机(3)与屏幕(1)通过视频线连接,步骤如下:

S1:摄像机(2)捕捉触点在屏幕(1)上的图像,传输给所述主机(3);

S2:所述主机(3)接收所述摄像机(2)传来的图像,对触点的轨迹进行检测、跟踪,其中,对所述触点选择4个关键点代表其轮廓特征;

S3:所述主机(3)根据所述摄像机(2)传来的图像,计算关键点之间的距离;

S4:所述主机(3)根据上述计算结果,对关键点之间的距离进行排序,选出最大距离Di;

S5:所述主机(3)根据上述计算结果,比较Di与设定的距离阈值之间的大小,若Di<设定的距离阈值,则说明此帧触点是i个,通过k=i对所有关键点进行k‐means聚类,求出聚类中心点,即触点的中心;

S6:所述主机(3)根据上述计算结果,若Di>设定的距离阈值,则通过k=i+1对所有关键点进行k‐means聚类,求出i+1个聚类中心点,分别计算i+1个聚类中心点与所有关键点的距离,对计算出的所有距离进行排序,选出最大距离D(i+1);

S7:所述主机(3)根据上述计算结果,修正初始态的参数i=i+1,重复步骤S5、S6,当最大距离Di<设定的距离阈值时,重复步骤结束,并将结果传输到屏幕(1);

S8:所述屏幕(1)显示检测跟踪到的结果。

优选地,所述步骤S5还包括距离阈值的设定。

本发明与现有技术相比,具有以下有益效果:

本发明提出的一种检测触控系统屏幕触点数目的方法,巧妙合理的解决了K-means算法中k值的选取问题,同时也解决了计算屏幕上手指触点存在的问题,具有切实可行的操作方法,对于后续采用K-means算法解决类似的问题具有很大的参考价值。

附图说明

图1为本发明提出的一种检测触控系统屏幕触点数目的方法的流程图;

图2为本发明提出的一种检测触控系统屏幕触点数目的方法的触点关键点选取示意图;

图3为本发明的触控系统的示意图。

附图说明:

1屏幕 2摄像机 3主机

具体实施方式

以下结合具体实施方式进一步详细说明本发明的技术方案。应当理解,此处描述的具体实施方式仅仅用以解释本发明,并不用于限定本发明。

图3为本发明的触控系统的示意图,触控系统包括屏幕(1)、摄像机(2)和主机(3),摄像机2与主机3通过数据线连接,主机3与屏幕1通过视频线连接。

图1为本发明提出的一种检测触控系统屏幕触点数目的方法的流程图,摄像机(2)捕捉触点在屏幕(1)上的图像,传输给所述主机(3),所述主机(3)接收所述摄像机(2)传来的图像,对触点的轨迹进行检测、跟踪,其中,如图2所示,每个触点选择4个关键点(1、2、3、4)代表其轮廓特征,假设有3个触点,每个触点选择代表其轮廓特征的4个关键点,共计12个点,这12个点的坐标分别为A(X1,Y1)、B(X2,Y2)、C(X3,Y3)、D(X4,Y4)、E(X5,Y5)、F(X6,Y6)、G(X7,Y7)、H(X8,Y8)、I(X9,Y9)、J(X10,Y10)、K(X11,Y11)、L(X12,Y12),所述主机(3)根据所述摄像机(2)传来的图像,计算关键点之间的距离,其中AB之间的距离的计算公式为以此类推,第j个点与第j+1个点之间的距离公式即为需要计算AB、AC、AD、AE、AF、AG、AH、AI、AJ、AK、AL、BC、BD、BE、BF、BG、BH、BI、BJ、BK、BL、CD、CE、CF、CG、CH、CI、CJ、CK、CL、DE、DF、DG、DH、DI、DJ、DK、DL、EF、EG、EH、EI、EJ、EK、EL、FG、FH、FI、FJ、FK、FL、GH、GI、GJ、GK、GL、HI、HJ、HK、HL、IJ、IK、IL、JK、JL、KL之间的距离,所述主机(3)根据上述计算结果,比较上述计算出的66个距离,选出最大距离D1=AB,以一个模型手指套在屏幕中形成的最长半径为设定的距离阈值,所述主机(3)根据上述计算结果,比较AB与设定的距离阈值之间的大小,若AB<设定的距离阈值,则说明此帧触点是1个,通过k=1对所有关键点进行k‐means聚类,求出聚类中心点,即手指触点的中心,代表有一个手指触屏,所述主机(3)根据上述计算结果,若AB>设定的距离阈值,则通过k=2对所有关键点进行k‐means聚类,通过逐此求每两个值的中点的方法,求出2个聚类中心点,分别计算2个聚类中心点与所有关键点的距离,对计算出的所有距离进行排序,选出最大距离D2,所述主机(3)根据上述计算结果,再次计算D2和设点的距离阈值的大小,若D2<设定的距离阈值,则说明此帧触点是2个,通过k=2对所有关键点进行k‐means聚类,求出聚类中心点,即手指触点的中心,代表有2个手指触屏,若D2>设定的距离阈值,则需要继续聚类,直至聚类结果达到收敛,收敛时k为3,屏幕上的手指数目就为3个,然后将此结果传输到屏幕(1),所述屏幕(1)显示检测跟踪到的结果。

综上所述,本发明提出的一种检测触控系统屏幕触点数目的方法,巧妙合理的解决了K-means算法中k值的选取问题,同时也解决了计算屏幕上手指触点存在的问题,具有切实可行的操作方法,对于后续采用K-means算法解决类似的问题具有很大的参考价值。

以上的实施方式均为本发明的优选实施方式,并非因此限制本发明的专利保护范围。任何本发明所属的技术领域的技术人员,在不脱离本发明所公开的精神和范围的前提下,对本发明的内容所做的等效结构与等效步骤的变换均落入本发明要求保护的专利范围之内。

当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1