国产精品1024永久观看,大尺度欧美暖暖视频在线观看,亚洲宅男精品一区在线观看,欧美日韩一区二区三区视频,2021中文字幕在线观看

  • <option id="fbvk0"></option>
    1. <rt id="fbvk0"><tr id="fbvk0"></tr></rt>
      <center id="fbvk0"><optgroup id="fbvk0"></optgroup></center>
      <center id="fbvk0"></center>

      <li id="fbvk0"><abbr id="fbvk0"><dl id="fbvk0"></dl></abbr></li>

      一種觸摸屏的多點檢測計算方法

      文檔序號:6337746閱讀:554來源:國知局
      專利名稱:一種觸摸屏的多點檢測計算方法
      技術(shù)領(lǐng)域
      本發(fā)明涉及計算機視覺領(lǐng)域,特別涉及基于攝像頭定位的觸摸屏的多點檢測計 算方法。
      背景技術(shù)
      近年來,大屏幕觸摸技術(shù)有了較大的發(fā)展,出現(xiàn)了紅外LED掃描觸摸屏,超聲 波觸摸屏,攝像頭后定位觸摸屏,采用兩個攝像頭安裝于觸摸屏邊角的觸摸屏等,其中 以攝像頭后定位觸摸屏可方便靈活的實現(xiàn)多點觸摸,較容易實現(xiàn)多于兩個以上觸摸點的 監(jiān)測及跟蹤,因此在多點觸摸領(lǐng)域得到了廣泛的應(yīng)用。
      所述攝像頭后定位觸摸屏,一般將攝像頭采集到的圖像進行二值化處理,即是 設(shè)定一個預(yù)定值,將攝像頭采集到的像素的亮度信息與此預(yù)定值比較,高于此預(yù)定值的 像素被認為是有效的觸摸點像素,存儲模塊將拍攝到的一幀圖像的有效觸摸點像素對應(yīng) 的攝像頭坐標(biāo)進行存儲,后端處理模塊將所存儲的有效觸摸點像素坐標(biāo)進行按觸摸點分 類并計算觸摸點的重心坐標(biāo),得到觸摸點重心坐標(biāo)后再進行圖形校正可得到觸摸屏的邏 輯坐標(biāo)。
      所述的有效觸摸點像素坐標(biāo)分類是通過眾多有效觸摸點橫坐標(biāo)χ及縱坐標(biāo)y之間 的關(guān)系進行分類的,通過判定前后讀出有效像素橫坐標(biāo)χ及縱坐標(biāo)y之間的距離的關(guān)系來 決定是否屬于同一個觸摸點。這是很直觀的判別不同觸摸點的方法,由于攝像頭采集后 的圖像進行了二值化處理,經(jīng)過處理后得到的觸摸點像素,相同的觸摸點包含的有效像 素的坐標(biāo)并不是嚴(yán)格連續(xù)分布的,個別有效像素坐標(biāo)之間會存在幾個像素的距離,但是 屬于同一個觸摸點的,這樣,采用這種直觀的根據(jù)像素坐標(biāo)間的距離來判定觸摸點,為 了提高判定的準(zhǔn)確度,往往會將判定距離邊界設(shè)置為幾個像素,如兩個有效像素之間的 距離小于設(shè)定的幾個像素則認為是同一個觸摸點,相反則認為是不同的觸摸點,如果兩 個手指分開的距離比較大,這種判定的方法是可以接受的,但是如果兩個手指距離比較 小,甚至兩個手指挨在一起,這種判定方法就會產(chǎn)生錯誤的觸摸點坐標(biāo)了,因為兩個手 指靠近到這種判定設(shè)定的像素間距離時,這種算法認為兩個手指觸摸點為一個觸摸點, 造成了判斷錯誤,在多點操作時產(chǎn)生了不可靠的坐標(biāo),造成了手勢操作、手指近距離畫 線等錯誤。發(fā)明內(nèi)容
      為克服現(xiàn)有技術(shù)的缺陷,本發(fā)明的目的提供了一種觸摸屏的多點檢測計算方 法,其正是為了提高手指間距離很小,甚至緊挨在一起觸摸時,多觸摸點檢測算法的準(zhǔn) 確度提出的。利用本發(fā)明的方法可以有效的提高攝像頭后定位多點觸摸的檢測準(zhǔn)確性, 提高多點觸摸屏的使用性能。
      為了實現(xiàn)攝像頭定位中多個觸摸點靠近情形下能準(zhǔn)確識別多個觸摸點,本發(fā)明 采用如下技術(shù)方案一種觸摸屏的多點檢測計算方法,其包括以下步驟1)啟動攝像頭,采集觸摸圖像;2)對觸摸圖像進行二值化處理,得到觸摸圖像的像素值;3)將采集的像素值與預(yù)定的像素值大小進行比較,大于預(yù)定值就儲存觸摸圖像對應(yīng) 的像素坐標(biāo);4)后端處理模塊讀出已儲存的像素坐標(biāo),采用靠近觸摸點像素族重心算法對每個像 素坐標(biāo)進行分類并重新計算觸摸點像素族的重心,最終識別一個或多個觸摸點。
      步驟1)中攝像頭按照行順序,每個像素時鐘采集一個像素值。
      步驟4)中的坐標(biāo)分類方法及靠近觸摸點像素族重心算法計算過程如下步驟51初始化各觸摸點像素族各變量值為零;52讀出一個像素坐標(biāo);S3判斷當(dāng)前像素坐標(biāo)是否為第一個讀出坐標(biāo),是則進入步驟S7;否則進入步驟S4 ;S4計算當(dāng)前像素坐標(biāo)與已保存各觸摸點族重心的距離,選擇最小的距離;55判斷最小距離是否小于預(yù)定值,是則進入步驟S6 ;否則進入步驟S7 ;56將當(dāng)前像素坐標(biāo)加入距離最近的觸摸點族,重新計算該觸摸點族的重心,返回 步驟S2 ;S7新增一個觸摸點族,將當(dāng)前像素坐標(biāo)加入該靠近觸摸點像素族并計算重心坐 標(biāo),返回步驟S2。
      步驟Sl中初始化各觸摸點像素族各變量值為零,其中變量包含各觸摸點像素族 橫坐標(biāo)和ΣΧη=0,縱坐標(biāo)和ΣΥη=0,觸摸點像素族包含像素個數(shù)ΣΟι=0,當(dāng)前像素族重 心Α’η=0,下標(biāo)η表示支持的觸摸點數(shù),各觸摸點族的序號為0,1》··η-1。
      步驟S5中,所述預(yù)定值是根據(jù)實際應(yīng)用環(huán)境而設(shè)定的,根據(jù)觸摸點包含像素的 多少而定,觸摸點包含像素大于一預(yù)定值,則設(shè)為大于等于8個像素的值,若觸摸點包 含像素小于一預(yù)定值,則取小于等于8個像素的值。在現(xiàn)有大屏幕顯示屏中,顯示像素 尺寸為1.3毫米,一個手指的正常觸摸動作所得到的有效像素為一個半徑接近5個像素左 右的近似圓斑,可根據(jù)具體的實驗環(huán)境所得的手指觸摸點面積的大小調(diào)整預(yù)定值,通常 的觸摸點像素半徑不大于5個像素,大于8個像素的比較少。
      上述重心算法如下橫坐標(biāo)和累加ΣΧη=ΣΧη+Χ,縱坐標(biāo)和ΣΥη=ΣΥη+Υ ; 觸摸點族包含像素個數(shù)ΣΟι=ΣΟι+ 1 ; 重心坐標(biāo) A,Xn=EXn/ECn , A,Yn =EYn/ECn ;其中,X為讀出的觸摸點像素的橫坐標(biāo),Y為讀出的觸摸點像素縱坐標(biāo)下標(biāo)η表示支 持的觸摸點數(shù),各觸摸點族的序號為0,1,2···η-1。本發(fā)明方法能快速準(zhǔn)確的識別兩個靠 近甚至邊界連通的兩個觸摸點,可靠性高。


      圖1為本發(fā)明坐標(biāo)分類及重心計算流程圖;圖2為本發(fā)明中包含多個像素的兩個觸摸點示意圖。
      具體實施方式
      下面對本發(fā)明加以詳細說明,應(yīng)指出的是,所描述的實施例旨在便于對本發(fā)明 的理解,而對其不起任何限定作用。
      攝像頭拍攝觸摸屏表面圖像并經(jīng)過二值化處理得到了如圖2所示的圖像,后端 處理模塊按照存儲順序讀出各像素坐標(biāo)。如圖2所示,像素D的坐標(biāo)是為第一讀到的坐 標(biāo),E為第二個讀到的坐標(biāo),后端處理模塊讀完一行,Y方向增加一行并接著從左到右繼 續(xù)讀出像素坐標(biāo)。其中E,F之間有兩個像素的距離,D、E、F、G、H屬于同一行的像 素坐標(biāo)。D、E、F屬于觸摸點A,G、H屬于觸摸點B。
      本發(fā)明坐標(biāo)分類及重心計算方法通過如下步驟實現(xiàn)步驟Si:初始化各觸摸點像素族各變量值為零,其中變量包含各觸摸點像素族橫坐 標(biāo)和ΣΧη=0,縱坐標(biāo)和ΣΥη=0,觸摸點像素族包含像素個數(shù)ΣΟι=0,當(dāng)前像素族重心 A’ η=0,下標(biāo)η表示支持的觸摸點數(shù),各觸摸點族的序號為(0,1》··η-1); 步驟S2:讀出一個像素坐標(biāo);步驟S3:判斷當(dāng)前坐標(biāo)為第一個讀出坐標(biāo),是則進入步驟S7;不是則進入步驟S4;步驟S4:計算當(dāng)前坐標(biāo)與已保存各觸摸點族重心的距離,選擇最小的距離; 步驟S5 判斷最小距離是否小于8,是則進入步驟S6 ;不是則進入步驟S7 ; 步驟S6:將當(dāng)前坐標(biāo)加入距離最近的觸摸點族,重新計算該觸摸點族的重心,返回 步驟S2 ;步驟S7:新增一個觸摸點族,將當(dāng)前坐標(biāo)加入該觸摸點族并計算重心坐標(biāo), 返回步驟S2 ;通過上述步驟,下邊對圖2表示的像素判斷過程進行詳細描述 坐標(biāo)D 坐標(biāo)D為第一個讀出坐標(biāo),直接進入步驟S7,執(zhí)行橫坐標(biāo)和累加ΣΧ0=ΣΧ0+ XD,縱坐標(biāo)禾ΠΣΥ0=ΣΥ0+Υ ,觸摸點族包含像素個數(shù)ZCO=ZCO+1,重心坐標(biāo)Α, x0=EX0/EC0,A,y0=EY0/EC0 ; 坐標(biāo)E 坐標(biāo)E不是第一個讀出坐標(biāo),進入步驟S4,執(zhí)行與當(dāng)前保存的觸摸點族重心距離 的運算,其中只保存了序號為0的重心為(A’ x0, A’ y0),他們的距離為1;進 入步驟S5,執(zhí)行到重心距離判斷,滿足距離小于8;進入步驟S6,執(zhí)行橫坐標(biāo)和累加 ΣΧ0=ΣΧ0+ XE,縱坐標(biāo)和ΣΥ0=ΣΥ0+YV,觸摸點族包含像素個數(shù)ZCO=ZCO+1,重心 坐標(biāo) A,x0=EX0/EC0,A,y0=EY0/EC0 ; 坐標(biāo)F 坐標(biāo)F執(zhí)行跟坐標(biāo)E —樣的過程。
      坐標(biāo)G:坐標(biāo)G不是第一個讀出坐標(biāo),進入步驟S4,執(zhí)行與當(dāng)前保存的觸摸點族重心距離的 運算,其中只保存了序號為0的重心為(A’ x0, A,y0),他們的距離大于8;進入步 驟S5,執(zhí)行到重心距離判斷,距離大于8;進入步驟S7,新增一個觸摸點族,即觸摸點族序號加1,執(zhí)行橫坐標(biāo)和累加XG,縱坐標(biāo)和ΣΥΙ=ΣΥΙ+ΥΕ,觸摸點族包 含像素個數(shù) ZCl=ZCl+1,重心坐標(biāo) A,xl=EX0/ECl , A,yl=EYl/ECl ;坐標(biāo)H 坐標(biāo)H不是第一個讀出坐標(biāo),進入步驟S4,執(zhí)行與當(dāng)前保存的觸摸點族重心距 離的運算,其中保存了序號為0,1的重心為(A,x0, A,y0)、 (A,xl, A, yl),取較的距離,即到(A,xl, A,yl)的距離;進入步驟S5,執(zhí)行到重心距離 判斷,滿足距離小于8;進入步驟S6,執(zhí)行橫坐標(biāo)和累加ΣΧ1=ΣΧ1+ΧΟ,縱坐標(biāo)和 ΣΥ1=ΣΥ1+ΥΕ,觸摸點族包含像素個數(shù)ZCl=ZCl+1,重心坐標(biāo)A,xl=EX0/ECl , A,yl=EYl/ECl ;坐標(biāo)C 坐標(biāo)C不是第一個讀出坐標(biāo),進入步驟S4,執(zhí)行與當(dāng)前保存的觸摸點族重心 距離的運算,其中保存了序號為0,1的重心為(A,x0, A,y0)、 (A,xl, A, yl),取較的距離,即到(A,xl, A,yl)的距離;進入步驟S5,執(zhí)行到重心距離 判斷,滿足距離小于8;進入步驟S6,執(zhí)行橫坐標(biāo)和累加ΣΧ1=ΣΧ1+ΧΟ,縱坐標(biāo)和 ΣΥ1=ΣΥ1+ΥΕ,觸摸點族包含像素個數(shù)ZCl=ZCl+1,重心坐標(biāo)A,xl=EX0/ECl , A,yl=EYl/ECl ;以上過程直到讀出了所有存儲的像素坐標(biāo),執(zhí)行完坐標(biāo)分類過程后即可得到觸摸點 A的重心坐標(biāo)A,= (A,x0, A,y0),觸摸點B的重心坐標(biāo)B,= (A,xl, A, yl)。
      在以上坐標(biāo)分類及重心計算過程中,當(dāng)前坐標(biāo)與像素族重心距離設(shè)定為8是可 以根據(jù)實際應(yīng)用環(huán)境而變更的。在坐標(biāo)分類的過程中,各像素族重心隨著新的坐標(biāo)的加 入而重新計算。
      采用以上坐標(biāo)分類方法及重心計算過程可以解決兩個觸摸點邊界靠近甚至是邊 界連接在一起時造成的坐標(biāo)分類錯誤,采用傳統(tǒng)的坐標(biāo)分類方法無法正確的區(qū)分為兩個 觸摸點,是因為傳統(tǒng)的坐標(biāo)分類方法是通過坐標(biāo)之間的距離來判定是否屬于同一個觸摸 點族,如圖2所示觸摸點A和B包含多個像素,觸摸點之間邊界是聯(lián)通的,觸摸點像 素坐標(biāo)按照X方向從左到右被讀出,讀完一行,Y方向增加一行,繼續(xù)從左到右讀出。 如果按照前后兩次讀出坐標(biāo)間距離來分類觸摸點,顯然在兩個觸摸點中間的C處,兩個 觸摸點的邊界是連通的,按照前后讀出坐標(biāo)間的距離無法正確判定C處的像素是屬于觸 摸點A還是觸摸點B的。
      本發(fā)明方法是通過像素坐標(biāo)到重心的距離來判定判定C處像素是屬于觸摸點A 還是觸摸點B的。如圖2所示A,是A觸摸點的重心坐標(biāo),B,是B觸摸點的重心坐 標(biāo),將C處的坐標(biāo)與A’、B’的坐標(biāo)進行距離運算,找出距離較短的,同時這個較短的 距離滿足小于設(shè)定的8個像素,這個設(shè)定的8個像素是可以根據(jù)實際應(yīng)用環(huán)境而設(shè)定的, 根據(jù)觸摸點包含像素的多少而定,觸摸點包含像素多,則8應(yīng)該設(shè)為更大的值,如果觸 摸點包含像素較少,則8可以取更小的值。通過算出了 C處到A,、B,的距離可以很 容易的決定C處坐標(biāo)屬于哪一個觸摸點。
      權(quán)利要求
      1.一種觸摸屏的多點檢測計算方法,其特征在于,包括以下步驟1)啟動攝像頭,采集觸摸圖像;2)對觸摸圖像進行二值化處理,得到觸摸圖像的像素值;3)將采集的像素值與預(yù)定的像素值大小進行比較,大于預(yù)定值就儲存觸摸圖像對應(yīng) 的像素坐標(biāo);4)后端處理模塊讀出已儲存的像素坐標(biāo),采用靠近觸摸點像素族重心算法對每個像 素坐標(biāo)進行分類并重新計算觸摸點像素族的重心,最終識別一個或多個觸摸點。
      2.根據(jù)權(quán)利要求1所述的觸摸屏的多點檢測計算方法,其特征在于,步驟1)中攝像 頭按照行順序,每個像素時鐘采集一個像素值。
      3.根據(jù)權(quán)利要求2所訴的觸摸屏的多點檢測計算方法,其特征在于,步驟4)中的坐 標(biāo)分類方法及靠近觸摸點像素族重心算法計算過程如下步驟Sl 初始化各觸摸點像素族各變量值為零; S2讀出一個像素坐標(biāo);S3判斷當(dāng)前像素坐標(biāo)是否為第一個讀出坐標(biāo),是則進入步驟S7;否則進入步驟S4;S4計算當(dāng)前像素坐標(biāo)與已保存各觸摸點族重心的距離,選擇最小的距離;55判斷最小距離是否小于預(yù)定值,是則進入步驟S6 ;否則進入步驟S7 ;56將當(dāng)前像素坐標(biāo)加入距離最近的觸摸點族,重新計算該觸摸點族的重心,返回 步驟S2 ;S7新增一個觸摸點族,將當(dāng)前像素坐標(biāo)加入該靠近觸摸點像素族并計算重心坐 標(biāo),返回步驟S2。
      4.根據(jù)權(quán)利要求3所述的觸摸屏的多點檢測計算方法,其特征在于,步驟Sl中初始 化各觸摸點像素族各變量值為零,其中變量包含各觸摸點像素族橫坐標(biāo)和ΣΧη=0,縱坐 標(biāo)和ΣΥη=0,觸摸點像素族包含像素個數(shù)ΣΟι=0,當(dāng)前像素族重心Α’η=0,下標(biāo)η表示支 持的觸摸點數(shù),各觸摸點族的序號為0,1,2丨11-1。
      5.根據(jù)權(quán)利要求3所述的觸摸屏的多點檢測計算方法,其特征在于,步驟S5中,所 述預(yù)定值是根據(jù)實際應(yīng)用環(huán)境而設(shè)定的,根據(jù)觸摸點包含像素的多少而定,觸摸點包含 像素大于一預(yù)定值,則設(shè)為大于等于8個像素的值,若觸摸點包含像素小于一預(yù)定值, 則取小于等于8個像素的值。
      6.根據(jù)權(quán)利要求3所述的觸摸屏的多點檢測計算方法,其特征在于,重心算法如下橫坐標(biāo)和累加ΣΧη=ΣΧη+Χ,縱坐標(biāo)和ΣΥη=ΣΥη+Υ ; 觸摸點族包含像素個數(shù)ΣΟι=ΣΟι+ 1 ; 重心坐標(biāo) A,Xn=EXn/ECn , A,Yn =EYn/ECn ;其中,X為讀出的觸摸點像素的橫坐標(biāo),Y為讀出的觸摸點像素縱坐標(biāo)下標(biāo)η表示支 持的觸摸點數(shù),各觸摸點族的序號為0,1》··η-1。
      全文摘要
      本發(fā)明公開一種觸摸屏的多點檢測計算方法,其包括以下步驟1)啟動攝像頭,采集觸摸圖像;2)對觸摸圖像進行二值化處理,得到觸摸圖像的像素值;3)將采集的像素值與預(yù)定的像素值大小進行比較,大于預(yù)定值就儲存觸摸圖像對應(yīng)的像素坐標(biāo);4)后端處理模塊讀出已儲存的像素坐標(biāo),采用靠近觸摸點像素族重心算法對每個像素坐標(biāo)進行分類并重新計算觸摸點像素族的重心,最終識別一個或多個觸摸點。本發(fā)明方法能快速準(zhǔn)確的識別兩個靠近甚至邊界連通的兩個觸摸點,可靠性高。
      文檔編號G06F3/042GK102023761SQ20101057463
      公開日2011年4月20日 申請日期2010年12月6日 優(yōu)先權(quán)日2010年12月6日
      發(fā)明者鄭金發(fā) 申請人:廣東威創(chuàng)視訊科技股份有限公司
      網(wǎng)友詢問留言 已有0條留言
      • 還沒有人留言評論。精彩留言會獲得點贊!
      1