发明名称 基于电容触摸屏的触摸边界非线性识别矫正方法
摘要 一种基于电容触摸屏的触摸边界非线性识别矫正方法,改进触摸的手指位于触摸屏边界区域时的手指定位识别的效果,进而提高手指触摸在触摸屏边界区域的识别线性度,同时使手指识别点可以到达的触摸屏的边界区域,尽量低接近边界0点,有效的避免了由于缺少一个旁瓣感应测量信号,精确手指位置值的导出将出现偏差的缺陷。
申请公布号 CN103809829A 申请公布日期 2014.05.21
申请号 CN201410067800.5 申请日期 2014.02.26
申请人 南京触宏微电子有限公司 发明人 傅秋良;张广亚;杨松;李伟斌
分类号 G06F3/044(2006.01)I 主分类号 G06F3/044(2006.01)I
代理机构 南京钟山专利代理有限公司 32252 代理人 戴朝荣
主权项 1.一种基于电容触摸屏的触摸边界非线性识别矫正方法,其特征在于,步骤如下:步骤1:把手指静止在触摸屏上时,通过触摸屏上的电容式感应器采集手指在触摸屏上的位置采样信号,并把采集到的手指在触摸屏上的位置采样信号发送到处理器中,这样处理器无论是横向还是纵向,都得到了位置采样信号D(i-1)、D(i)以及D(i+1),D(i)为采集到的手指在触摸屏上的位置采样信号的极值点,D(i-1)为该极值点在对应的行左边或列上边的信号,D(i+1)为该极值点在对应的行右边或列下边的信号;在位置采样信号D(i-1)、D(i)以及D(i+1)中存在D(0)和D(1)的情况下,如果D(0)的值小于D(1)的值时,处理器判断手指触摸点并不在触摸屏边界,这样处理器就利用公式(1)导出手指触摸点在触摸屏的精确位置P,公式(1)如下所示:<maths num="0001"><![CDATA[<math><mrow><mi>P</mi><mo>=</mo><mfrac><mrow><mi>D</mi><mrow><mo>(</mo><mi>i</mi><mo>-</mo><mn>1</mn><mo>)</mo></mrow><mo>*</mo><mrow><mo>(</mo><mi>i</mi><mo>-</mo><mn>1</mn><mo>)</mo></mrow><mo>+</mo><mi>D</mi><mrow><mo>(</mo><mtext>i</mtext><mo>)</mo></mrow><mo>*</mo><mi>i</mi><mo>+</mo><mi>D</mi><mrow><mo>(</mo><mi>i</mi><mo>+</mo><mn>1</mn><mo>)</mo></mrow><mo>*</mo><mrow><mo>(</mo><mi>i</mi><mo>+</mo><mn>1</mn><mo>)</mo></mrow></mrow><mrow><mi>D</mi><mrow><mo>(</mo><mi>i</mi><mo>-</mo><mn>1</mn><mo>)</mo></mrow><mo>+</mo><mi>D</mi><mrow><mo>(</mo><mi>i</mi><mo>)</mo></mrow><mo>+</mo><mi>D</mi><mrow><mo>(</mo><mi>i</mi><mo>+</mo><mn>1</mn><mo>)</mo></mrow></mrow></mfrac><mo>-</mo><mo>-</mo><mo>-</mo><mrow><mo>(</mo><mn>1</mn><mo>)</mo></mrow></mrow></math>]]></maths>公式(1)中的P是Px或Py,Px为导出的手指的触摸点横向精确位置,Py为导出的手指的触摸点纵向精确位置,i为极值点位置;如果D(0)的值不小于D(1)的值时,处理器判断手指触摸点在触摸屏边界,这样处理器就利用公式(4)导出手指的触摸点在触摸屏的上边界或左边界的精确位置P;而处理器利用公式(5)导出手指的触摸点在触摸屏的下边界或右边界的精确位置P:<maths num="0002"><![CDATA[<math><mrow><mi>P</mi><mo>=</mo><mfrac><mrow><mi>D</mi><mrow><mo>(</mo><mn>0</mn><mo>)</mo></mrow><mo>*</mo><mi>D</mi><mrow><mo>(</mo><mn>0</mn><mo>)</mo></mrow><mo>*</mo><mn>0</mn><mo>+</mo><mi>D</mi><mrow><mo>(</mo><mn>1</mn><mo>)</mo></mrow><mo>*</mo><mi>D</mi><mrow><mo>(</mo><mn>1</mn><mo>)</mo></mrow><mo>*</mo><mn>1</mn></mrow><mrow><mi>D</mi><mrow><mo>(</mo><mn>0</mn><mo>)</mo></mrow><mo>*</mo><mi>D</mi><mrow><mo>(</mo><mn>0</mn><mo>)</mo></mrow><mo>+</mo><mi>D</mi><mrow><mo>(</mo><mn>1</mn><mo>)</mo></mrow><mo>*</mo><mi>D</mi><mrow><mo>(</mo><mn>1</mn><mo>)</mo></mrow></mrow></mfrac><mo>=</mo><mfrac><mrow><mi>D</mi><mrow><mo>(</mo><mn>1</mn><mo>)</mo></mrow><mo>*</mo><mi>D</mi><mrow><mo>(</mo><mn>1</mn><mo>)</mo></mrow></mrow><mrow><mi>D</mi><mrow><mo>(</mo><mn>0</mn><mo>)</mo></mrow><mo>*</mo><mi>D</mi><mrow><mo>(</mo><mn>0</mn><mo>)</mo></mrow><mo>+</mo><mi>D</mi><mrow><mo>(</mo><mn>1</mn><mo>)</mo></mrow><mo>*</mo><mi>D</mi><mrow><mo>(</mo><mn>1</mn><mo>)</mo></mrow></mrow></mfrac><mo>-</mo><mo>-</mo><mo>-</mo><mrow><mo>(</mo><mn>4</mn><mo>)</mo></mrow></mrow></math>]]></maths><maths num="0003"><![CDATA[<math><mrow><mi>P</mi><mo>=</mo><mfrac><mrow><mi>D</mi><mrow><mo>(</mo><mi>M</mi><mo>-</mo><mn>2</mn><mo>)</mo></mrow><mo>*</mo><mi>D</mi><mrow><mo>(</mo><mi>M</mi><mo>-</mo><mn>2</mn><mo>)</mo></mrow><mo>*</mo><mrow><mo>(</mo><mi>M</mi><mo>-</mo><mn>2</mn><mo>)</mo></mrow><mo>+</mo><mi>D</mi><mrow><mo>(</mo><mi>M</mi><mo>-</mo><mn>1</mn><mo>)</mo></mrow><mo>*</mo><mrow><mo>(</mo><mi>M</mi><mo>-</mo><mn>1</mn><mo>)</mo></mrow><mo>*</mo><mrow><mo>(</mo><mi>M</mi><mo>-</mo><mn>1</mn><mo>)</mo></mrow></mrow><mrow><mi>D</mi><mrow><mo>(</mo><mi>M</mi><mo>-</mo><mn>2</mn><mo>)</mo></mrow><mo>*</mo><mi>D</mi><mrow><mo>(</mo><mi>M</mi><mo>-</mo><mn>2</mn><mo>)</mo></mrow><mo>+</mo><mi>D</mi><mrow><mo>(</mo><mi>M</mi><mo>-</mo><mn>1</mn><mo>)</mo></mrow><mo>*</mo><mi>D</mi><mrow><mo>(</mo><mi>M</mi><mo>-</mo><mn>1</mn><mo>)</mo></mrow></mrow></mfrac><mtext>---</mtext><mrow><mo>(</mo><mn>5</mn><mo>)</mo></mrow></mrow></math>]]></maths>M为电容触摸屏的分辨率域的总行数K或者总列数L,而当i不为0的时候处理器就利用公式(1)导出手指的触摸点在触摸屏的精确位置P;步骤2:当手指在触摸屏上移动时,通过触摸屏上的电容式感应器实时采集手指在触摸屏移动时的位置采样信号,并把采集到的手指在触摸屏上的位置采样信号发送到处理器中,这样处理器无论是横向还是纵向,都得到了位置采样信号D(i-1)、D(i)以及D(i+1),D(i)为采集到的手指在触摸屏上的位置采样信号的极值点,D(i-1)为该极值点在对应的行左边或列上边的信号,D(i+1)为该极值点在对应的行右边或列下边的信号,在位置采样信号D(i-1)、D(i)以及D(i+1)中存在D(0)和D(1)的情况下,如果D(0)的值小于D(1)的值时,处理器判断手指触摸点并不在触摸屏边界,这样处理器就利用公式(1)导出手指的触摸点在触摸屏的精确位置P,公式(1)如下所示:<maths num="0004"><![CDATA[<math><mrow><mi>P</mi><mo>=</mo><mfrac><mrow><mi>D</mi><mrow><mo>(</mo><mi>i</mi><mo>-</mo><mn>1</mn><mo>)</mo></mrow><mo>*</mo><mrow><mo>(</mo><mi>i</mi><mo>-</mo><mn>1</mn><mo>)</mo></mrow><mo>+</mo><mi>D</mi><mrow><mo>(</mo><mtext>i</mtext><mo>)</mo></mrow><mo>*</mo><mi>i</mi><mo>+</mo><mi>D</mi><mrow><mo>(</mo><mi>i</mi><mo>+</mo><mn>1</mn><mo>)</mo></mrow><mo>*</mo><mrow><mo>(</mo><mi>i</mi><mo>+</mo><mn>1</mn><mo>)</mo></mrow></mrow><mrow><mi>D</mi><mrow><mo>(</mo><mi>i</mi><mo>-</mo><mn>1</mn><mo>)</mo></mrow><mo>+</mo><mi>D</mi><mrow><mo>(</mo><mi>i</mi><mo>)</mo></mrow><mo>+</mo><mi>D</mi><mrow><mo>(</mo><mi>i</mi><mo>+</mo><mn>1</mn><mo>)</mo></mrow></mrow></mfrac><mo>-</mo><mo>-</mo><mo>-</mo><mrow><mo>(</mo><mn>1</mn><mo>)</mo></mrow></mrow></math>]]></maths>公式(1)中的P是Px或Py,Px为导出的手指的触摸点横向精确位置,Py为导出的手指的触摸点纵向精确位置,i为极值点位置;如果D(0)的值不小于D(1)的值时,处理器判断手指触摸点在触摸屏边界,这样处理器就利用公式(4)导出手指的触摸点在触摸屏的上边界或左边界的精确位置P;而处理器利用公式(5)导出手指的触摸点在触摸屏的下边界或右边界的精确位置P:<maths num="0005"><![CDATA[<math><mrow><mi>P</mi><mo>=</mo><mfrac><mrow><mi>D</mi><mrow><mo>(</mo><mn>0</mn><mo>)</mo></mrow><mo>*</mo><mi>D</mi><mrow><mo>(</mo><mn>0</mn><mo>)</mo></mrow><mo>*</mo><mn>0</mn><mo>+</mo><mi>D</mi><mrow><mo>(</mo><mn>1</mn><mo>)</mo></mrow><mo>*</mo><mi>D</mi><mrow><mo>(</mo><mn>1</mn><mo>)</mo></mrow><mo>*</mo><mn>1</mn></mrow><mrow><mi>D</mi><mrow><mo>(</mo><mn>0</mn><mo>)</mo></mrow><mo>*</mo><mi>D</mi><mrow><mo>(</mo><mn>0</mn><mo>)</mo></mrow><mo>+</mo><mi>D</mi><mrow><mo>(</mo><mn>1</mn><mo>)</mo></mrow><mo>*</mo><mi>D</mi><mrow><mo>(</mo><mn>1</mn><mo>)</mo></mrow></mrow></mfrac><mo>=</mo><mfrac><mrow><mi>D</mi><mrow><mo>(</mo><mn>1</mn><mo>)</mo></mrow><mo>*</mo><mi>D</mi><mrow><mo>(</mo><mn>1</mn><mo>)</mo></mrow></mrow><mrow><mi>D</mi><mrow><mo>(</mo><mn>0</mn><mo>)</mo></mrow><mo>*</mo><mi>D</mi><mrow><mo>(</mo><mn>0</mn><mo>)</mo></mrow><mo>+</mo><mi>D</mi><mrow><mo>(</mo><mn>1</mn><mo>)</mo></mrow><mo>*</mo><mi>D</mi><mrow><mo>(</mo><mn>1</mn><mo>)</mo></mrow></mrow></mfrac><mo>-</mo><mo>-</mo><mo>-</mo><mrow><mo>(</mo><mn>4</mn><mo>)</mo></mrow></mrow></math>]]></maths><maths num="0006"><![CDATA[<math><mrow><mi>P</mi><mo>=</mo><mfrac><mrow><mi>D</mi><mrow><mo>(</mo><mi>M</mi><mo>-</mo><mn>2</mn><mo>)</mo></mrow><mo>*</mo><mi>D</mi><mrow><mo>(</mo><mi>M</mi><mo>-</mo><mn>2</mn><mo>)</mo></mrow><mo>*</mo><mrow><mo>(</mo><mi>M</mi><mo>-</mo><mn>2</mn><mo>)</mo></mrow><mo>+</mo><mi>D</mi><mrow><mo>(</mo><mi>M</mi><mo>-</mo><mn>1</mn><mo>)</mo></mrow><mo>*</mo><mrow><mo>(</mo><mi>M</mi><mo>-</mo><mn>1</mn><mo>)</mo></mrow><mo>*</mo><mrow><mo>(</mo><mi>M</mi><mo>-</mo><mn>1</mn><mo>)</mo></mrow></mrow><mrow><mi>D</mi><mrow><mo>(</mo><mi>M</mi><mo>-</mo><mn>2</mn><mo>)</mo></mrow><mo>*</mo><mi>D</mi><mrow><mo>(</mo><mi>M</mi><mo>-</mo><mn>2</mn><mo>)</mo></mrow><mo>+</mo><mi>D</mi><mrow><mo>(</mo><mi>M</mi><mo>-</mo><mn>1</mn><mo>)</mo></mrow><mo>*</mo><mi>D</mi><mrow><mo>(</mo><mi>M</mi><mo>-</mo><mn>1</mn><mo>)</mo></mrow></mrow></mfrac><mtext>---</mtext><mrow><mo>(</mo><mn>5</mn><mo>)</mo></mrow></mrow></math>]]></maths>M为电容触摸屏的分辨率域的总行数K或者总列数L,而当i不为0的时候处理器就利用公式(1)导出手指的触摸点在触摸屏的精确位置P。
地址 210042 江苏省南京市玄武区苏园路6号6栋407