本發(fā)明涉及電容屏信號處理領域,更具體地,涉及一種電容觸控軌跡噪聲信號的平滑濾波方法。
背景技術:
目前,電容式觸摸屏已成為人機交互界面的主流選擇,電容式觸摸屏以其良好的觸控體驗贏得了廣大用戶的認可,但電容式觸摸屏易于受設備內(nèi)部噪聲的影響而產(chǎn)生虛假和錯誤的響應,其典型表現(xiàn)為在觸控操作過程中出現(xiàn)觸控軌跡中觸控點的預測不準確和鋸齒形軌跡的輸出,從而影響用戶體驗水平。面對來自于系統(tǒng)內(nèi)部的直流轉(zhuǎn)換器、顯示驅(qū)動器、天線或其它來源的噪聲的影響,觸控驅(qū)動都必須做到相同的用戶體驗水平,那么采取必要的、可行的濾波抑制算法以減少噪聲對電容屏觸控精準檢測來說是極其重要的。
隨著信號處理技術的不斷發(fā)展,利用硬件處理或者軟件處理的方法對觸控信號中存在的噪聲進行特征分析和濾波處理,輸出穩(wěn)定可靠的觸控軌跡,已成為國內(nèi)外學術界的研究熱點之一,對于觸控軌跡信號的濾波處理,已有的研究較多的采用滑動平均濾波等方法進行噪聲處理,由于滑動平均濾波算法的效果取決于數(shù)據(jù)窗口的長度選擇,數(shù)據(jù)窗口越長可以獲得更好的濾波效果,濾波效果不穩(wěn)定,同時也帶來觸控延時的問題。
因此,為了獲得更好的電容屏觸控體驗,需要提供一種用于電容觸摸屏觸控軌跡噪聲信號的平滑濾波方法。
技術實現(xiàn)要素:
本發(fā)明是為了實現(xiàn)電容觸控軌跡噪聲的抑制,以便于為用戶提供更好的電容屏觸控體驗而提供的一種電容觸控軌跡噪聲信號的平滑濾波方法。
為達到上述目的,本發(fā)明采用下述技術方案:
一種電容觸控軌跡噪聲信號的平滑濾波方法,其特征在于,包括以下步驟:
S1:平行于電容屏一邊進行一次直線觸控,對電容屏進行多次掃描,得到電容觸控軌跡數(shù)據(jù),利用質(zhì)心法確定電容觸控軌跡中各個觸控點的位置坐標,得到電容觸控軌跡;
S2:采用信號分解方法求解噪聲軌跡,根據(jù)噪聲信號的數(shù)理統(tǒng)計方法,計算噪聲軌跡的方差;
S3:采用卡爾曼濾波方法對電容觸控軌跡進行平滑濾波。
優(yōu)選的,所述步驟S1包括:
S11:對電容屏進行多次掃描,得到由多個矩陣陣列組成的多幀的電容觸控軌跡數(shù)據(jù),以直線觸控方向為x軸建立直角坐標系;
S12:選取第k次掃描得到的所述電容觸控軌跡數(shù)據(jù)單幀中電容值最大的采樣點,將所述電容值最大的采樣點的電容值與預設的閾值進行比較,當所述電容值最大的采樣點的電容值大于所述閾值時,判定所述電容值最大的采樣點為電容觸控軌跡上的觸控點;
S13:確定所述觸控點的坐標為所述電容觸控軌跡數(shù)據(jù)單幀中以電容值最大的采樣點為中心的觸控影響區(qū)域中的所有采樣點的電容值加權計算得到,所述觸控點的坐標為
其中,Cxy為電容觸控軌跡數(shù)據(jù)單幀中坐標為(x,y)的采樣點的電容值,Ω為觸控點的影響區(qū)域,Pmax x(k)為電容值最大的采樣點的x方向坐標,Pmax y(k)為電容值最大的采樣點的y方向坐標,Px(k)為第k次掃描時觸控點的x方向坐標,Py(k)為第k次掃描時觸控點的y方向坐標;
S14:依次連接求得的各個觸控點的坐標,得到電容觸控軌跡。
優(yōu)選的,所述步驟S2包括:
S21:將電容觸控軌跡分解為真實軌跡與噪聲軌跡兩部分
P(t)=PD(t)+n(t)
t=kT0
其中,t為掃描時間,T0為掃描間隔,P(t)為電容觸控軌跡,PD(t)為真實軌跡,n(t)為噪聲軌跡;
S22:電容觸控軌跡的真實軌跡在y方向為恒定值Y0,則y方向上觸控軌跡在t時刻的軌跡為
Py(t)=Y0+ny(t)
其中,ny(t)為時刻t疊加在真實軌跡y方向上的噪聲軌跡;
真實軌跡為
其中,T為電容屏觸控的時間長度;
則y方向噪聲軌跡為
x方向噪聲軌跡為
nx(t)=ny(t)
電容觸控軌跡中噪聲軌跡的統(tǒng)計均方差是反映電容觸控軌跡波動的指標,噪聲軌跡的統(tǒng)計均方差為
則觸控軌跡信號的噪聲均方差為
4、根據(jù)權利要求1所述的方法,其特征在于,所述步驟S3包括:
S31:將電容觸控過程視為白噪聲作用下的一個線性系統(tǒng)的輸出,建立電容觸控過程的狀態(tài)空間模型為
其中,為手指觸控位置和速度的過程狀態(tài)向量,為線性系統(tǒng)的狀態(tài)轉(zhuǎn)移矩陣,α為手指觸控的速度,為服從均值為0、方差為D(n)分布的高斯白噪聲序列;
S32:采用遞歸算法來估計狀態(tài)矢量,通過更新測量位置向量消除觸摸位置的噪聲信號,實現(xiàn)對電容觸控軌跡的平滑濾波處理,更新測量位置向量為
其中,為觀測矩陣,為服從均值為0、方差為D(n)分布的高斯白噪聲序列。
本發(fā)明的有益效果如下:
本發(fā)明能夠有效濾除電容屏觸控的噪聲信號,獲得平滑的電容觸控軌跡,從而提高電容屏觸控的準確性,獲得更好的電容屏觸控用戶體驗。
附圖說明
圖1示出一種電容觸控軌跡噪聲信號的平滑濾波方法。
圖2示出了掃描電容屏獲得的電容觸控軌跡。
圖3示出了電容觸控軌跡在x、y方向上的軌跡分解圖。
圖4示出了電容觸控軌跡在y方向上的噪聲軌跡圖。
圖5示出了電容觸控軌跡的平滑濾波處理結果。
具體實施方式
為了更清楚地說明本發(fā)明,下面結合優(yōu)選實施例和附圖對本發(fā)明做進一步的說明。附圖中相似的部件以相同的附圖標記進行表示。本領域技術人員應當理解,下面所具體描述的內(nèi)容是說明性的而非限制性的,不應以此限制本發(fā)明的保護范圍。
如圖1所示,本發(fā)明公開了一種電容觸控軌跡噪聲信號的平滑濾波方法,包括以下步驟:
S1:平行于電容屏一邊進行一次直線觸控,對電容屏進行多次掃描,得到電容觸控軌跡數(shù)據(jù),利用質(zhì)心法確定電容觸控軌跡中各個觸控點的位置坐標,得到電容觸控軌跡。其中,可平行于電容屏的長邊或短邊進行手指直線觸控,所述步驟S1具體分為以下步驟:
S11:對電容屏進行多次掃描,掃描間隔為T0,得到由多個m×n交疊互電容矩陣陣列組成的觸控軌跡數(shù)據(jù)C,其中第k次掃描得到的觸控軌跡數(shù)據(jù)單幀C(k)為
其中,m為電容屏的驅(qū)動電極個數(shù),n為電容屏的感應電極個數(shù)。
所述觸控軌跡數(shù)據(jù)C記錄了多次掃描電容屏時,電容屏所有節(jié)點處的電容值,所述C(k)表示在時刻kT0時掃描電容屏獲取的電容屏所有節(jié)點處的電容值。
S12:以直線觸控方向為x軸建立直角坐標系,選取所述C(k)中電容值最大的采樣點的坐標位置為
Pmax(k)=(Pmax x(k),Pmax y(k))
其中,Pmax x(k)為電容值最大的采樣點的x方向坐標,Pmax y(k)為電容值最大的采樣點的y方向坐標。
將所述電容值最大的采樣點與預設的閾值進行比較,當所述電容值最大的采樣點的電容值大于所述閾值時,判定所述電容值最大的采樣點為電容觸控軌跡上的觸控點。
S13:通常情況下手指觸控可引起電容屏中的d×d個節(jié)點面積下的電容顯著變化,其中區(qū)域?qū)挾萪一般為奇數(shù),優(yōu)選的,d為3、5、7等,更優(yōu)選的,d為3,確定所述觸控點的坐標為所述觸控軌跡數(shù)據(jù)幀中以電容值最大的采樣點為中心的d×d區(qū)域Ω中的所有采樣點的電容值加權計算得到,所述觸控點的坐標為
P(k)=(Px(k),Py(k))
其中,Cxy為電容觸控軌跡數(shù)據(jù)單幀中坐標為(x,y)的采樣點的電容值,Ω為觸控點的影響區(qū)域,Px(k)為第k次掃描時觸控點的x方向坐標,Py(k)為第k次掃描時觸控點的y方向坐標。
S14:依次連接求得的各個觸控點的坐標,得到電容觸控軌跡。
如圖2所示,所述電容觸控軌跡為以恒定速度移動的電容觸控軌跡,其在y軸方向的波動近似為零,求得所述電容觸控軌跡中所有觸控點的位置坐標,并將所有觸控點依次連接即可形成電容觸控軌跡。
S2:如圖3、圖4所示,將所述電容觸控軌跡分解為真實軌跡和噪聲軌跡,采用信號分解方法求解所述噪聲軌跡。包括以下步驟:
S21:將電容觸控軌跡分解為真實軌跡與噪聲軌跡兩部分
P(t)=PD(t)+n(t)
t=kT0
其中,t為掃描時間,T0為掃描間隔,P(t)為電容觸控軌跡,PD(t)為真實軌跡,n(t)為噪聲軌跡;
S22:電容屏觸摸軌跡在y方向的真實軌跡為恒定值Y0,則y方向上觸控軌跡在t時刻的軌跡為
Py(t)=Y0+ny(t)
其中,ny(t)為t時刻疊加在真實軌跡y方向上的噪聲軌跡。
由信號分解的思想可知,信號可以分解為直流分量和交流分量的組合,其中信號平均值記為信號的直流分量,從原信號中去掉直流分量即得到信號的交流分量。則真實軌跡為
其中,T為電容屏觸控的時間長度。
從而可以獲得該電容觸控軌跡的噪聲軌跡為
則x方向噪聲軌跡為
nx(t)=ny(t)
電容觸控軌跡中噪聲軌跡的統(tǒng)計均方差是反映電容觸控軌跡波動的指標,噪聲軌跡的統(tǒng)計均方差為
則觸控軌跡信號的噪聲均方差為
S3:采用卡爾曼濾波方法對電容觸控軌跡進行平滑濾波。包括以下步驟:
S31:卡爾曼濾波方法是一種時域遞推算法的濾波方法,作為一種最重要的最優(yōu)估計理論廣泛應用于各個領域。將狀態(tài)空間的概念引入隨機估計理論,將電容觸控過程視為白噪聲作用下的一個線性系統(tǒng)的輸出,用狀態(tài)方程描述線性系統(tǒng)的輸入-輸出關系,利用線性系統(tǒng)的狀態(tài)方程、觀測方程和白噪聲激勵進行估計形成濾波算法。
假設手指電容觸控的移動速度為勻速,從而建立觸控過程的狀態(tài)空間模型為:
其中,
其中,為手指觸控位置和速度的過程狀態(tài)向量,為線性系統(tǒng)的狀態(tài)轉(zhuǎn)移矩陣,α為手指觸控的速度,為服從均值為0、方差為D(n)分布的高斯白噪聲序列;
作為遞歸算法來估計狀態(tài)矢量,卡爾曼濾波過程分為時間預測和測量更新。測量更新采用了新的測量值,獲得一個改進的后驗狀態(tài)估計。當觸控信號采集系統(tǒng)接收觸控位置輸入數(shù)據(jù),卡爾曼濾波方法更新引擎被觸發(fā),并且測量、更新方程可以消除觸摸位置的測量噪聲,從而實現(xiàn)觸控軌跡的平滑濾波處理。
下面通過一組優(yōu)選實施例來對本發(fā)明做進一步的說明,選取一個7英寸的電容觸摸屏為采集平臺,以電容觸摸屏的長邊為x軸建立直角坐標系,平行于x軸方向進行一次直線觸控,經(jīng)數(shù)據(jù)采集與傳輸生成上位機的電容觸控軌跡數(shù)據(jù),利用質(zhì)心法求解電容觸控軌跡,如圖2所示。利用信號分解的思想,將電容觸控軌跡分解為期望軌跡與噪聲軌跡的疊加,得到電容觸控軌跡在x、y方向上的分解曲線,如圖3所示。分解獲得的噪聲軌跡,如圖4所示。建立電容屏觸控系統(tǒng)的狀態(tài)方程和觀測方程,經(jīng)過卡爾曼濾波的遞推過程獲得觸控軌跡的平滑濾波,處理結果如圖5所示。
綜上所述,本發(fā)明公開的一種電容觸控軌跡噪聲信號的平滑濾波方法能夠?qū)﹄娙萜劣|控軌跡噪聲進行有效的平滑濾波處理,提高電容屏觸控的準確性和處理噪聲的性能,獲得更好的觸控用戶體驗。
顯然,本發(fā)明的上述實施例僅僅是為清楚地說明本發(fā)明所作的舉例,而并非是對本發(fā)明的實施方式的限定,對于所屬領域的普通技術人員來說,在上述說明的基礎上還可以做出其它不同形式的變化或變動,這里無法對所有的實施方式予以窮舉,凡是屬于本發(fā)明的技術方案所引伸出的顯而易見的變化或變動仍處于本發(fā)明的保護范圍之列。