• 
    

    
    

      99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看

      ?

      基于顏色識別的手指多點(diǎn)跟蹤人機(jī)交互系統(tǒng)

      2012-11-27 01:46:08王鵬程官洪運(yùn)許文杰鄔曉琳
      關(guān)鍵詞:膚色鼠標(biāo)顏色

      王鵬程,官洪運(yùn),許文杰,鄔曉琳

      (東華大學(xué) 信息學(xué)院,上海 201620)

      隨著計算機(jī)視覺技術(shù)的發(fā)展以及人們對新的交互手段的需求,基于計算機(jī)視覺的交互系統(tǒng)也逐漸發(fā)展起來。傳統(tǒng)的交互方式如鼠標(biāo)、鍵盤、手柄等在某些特殊領(lǐng)域己經(jīng)無法發(fā)揮便利的作用。本系統(tǒng)將計算機(jī)視覺技術(shù)做新的應(yīng)用,帶來了人機(jī)交互的便利,實現(xiàn)如畫圖、圖片瀏覽等功能,將電視棒連接到處理器后還可實現(xiàn)對網(wǎng)絡(luò)電視的頻道切換和音量控制。本系統(tǒng)是基于顏色識別的多點(diǎn)跟蹤識別系統(tǒng),可以通過識別手部的動作(如拉伸、靠近等動作)實現(xiàn)對計算機(jī)及與其連接設(shè)備的控制功能,讓用戶完全擺脫對遙控器和鼠標(biāo)的依賴,實現(xiàn)更加便捷、人性化的人機(jī)交互。

      傳統(tǒng)的人機(jī)交互方式在使用過程中確定性比較強(qiáng),比如按下鍵盤的按鈕或者點(diǎn)擊鼠標(biāo)的左右鍵,計算機(jī)都己將此關(guān)聯(lián)到一定的系統(tǒng)事件中。

      而基于顏色識別的手指多點(diǎn)跟蹤交互方式表達(dá)的意義豐富。如帶上顏色標(biāo)記的指套后,通過不同手勢、位置、方向等可以組合出多種信息,更能符合人的操作習(xí)慣。整個交互的流程為:先通過攝像頭拍攝手勢圖像視頻流,然后從圖像中根據(jù)特定算法提取出手指的顏色和識別點(diǎn)以及位置信息,之后把這些信息點(diǎn)進(jìn)行相應(yīng)分類取舍,接著基于Windows API將這些提取出的信息點(diǎn)根據(jù)需求驅(qū)動相應(yīng)的系統(tǒng)動作。

      1 常用的色彩模型及轉(zhuǎn)換

      1.1 常用的色彩模型

      本系統(tǒng)涉及到的色彩空間有:

      (1)RGB 顏色模型

      RGB彩色系統(tǒng)為一直角坐標(biāo)系統(tǒng),其中的三個基量是選擇可見光中的三原色光,為使色光定義能夠統(tǒng)一,CIE定出三原色的波長為紅(700 nm)、綠(546.1 nm)和藍(lán)(435.8 nm)。通常不直接處理RGB彩色影像,例如欲從一個彩色影像中找出物體的邊緣,如果分別對R、G和B以邊緣強(qiáng)化處理,如此得到的為一個別成份的邊緣而非物體的真正邊緣。直接處理RGB影像的情況只有在每個成份改變的情形都一樣時,才不會造成顏色失真。

      (2)HSV 顏色模型

      HSV色彩屬性模式是根據(jù)色彩的三個基本屬性:色相、飽和度和亮度來確定顏色的一種方法。

      色相(H)是色彩的基本屬性,就是平常所說的顏色名稱,如紅色、黃色等,依照在標(biāo)準(zhǔn)色輪上的位置,取0~360°的數(shù)值(也有用100%的方法確定的)。飽和度(S)是指色彩的純度,越高色彩越純,低則逐漸變灰,取0~100%的數(shù)值。明度(V)也叫“亮度”,取 0~100%。這種模式是1978年由AlvyRaysmith創(chuàng)立的,它是三原色光模式的一種非線性變換。

      1.2 顏色模型轉(zhuǎn)換

      研究表明,雖然不同人的膚色相差很大,但通常不同人的膚色相差主要是亮度,而在色度上的差異并不大。因此需要把圖像中表達(dá)顏色的色度與亮度分開。通常是將獲取的圖像中所用的R、G、B三原色的顏色分量所表達(dá)的色彩空間轉(zhuǎn)換為HSV色彩空間,轉(zhuǎn)換后就可以對人體膚色的色度進(jìn)行一個閉值分割來達(dá)到膚色分割的目的。

      (1)膚色模型

      [1]結(jié)合了HSV顏色空間和RGB空間構(gòu)造出混合膚色模型,該論文首先分析了膚色在H-S平面的聚類情況。并通過大量膚色樣本,發(fā)現(xiàn)膚色像素在HS平面上表現(xiàn)出的明顯聚類,表明人體膚色的RGB圖像轉(zhuǎn)換到HSV色彩空間后H與S分量的關(guān)系。并且隨光照強(qiáng)度不同,V的取值范圍應(yīng)較大,否則會忽略某些膚色像素點(diǎn),同時也會引入誤差。

      (2)CamShift顏色跟蹤算法及其改進(jìn)

      CamShift算 法 (即 “Continuously Apative Mean-Shift”算法)基本思想是將視頻圖像的所有幀作MeanShift運(yùn)算,并將上一幀的結(jié)果作為搜索窗的初始值,如此迭代下去實現(xiàn)對目標(biāo)的跟蹤。

      (3)膚色模型+CamShift跟蹤

      CamShift算法簡單,跟蹤實時效果較好,在簡單背景下完全勝任跟蹤識別要求,缺點(diǎn)是復(fù)雜背景圖對識別精度有一定的干擾,導(dǎo)致跟蹤不穩(wěn)定。結(jié)合膚色識別和CamShift顏色跟蹤算法,在每幀同時得到CamShift顏色跟蹤窗口以及膚色二值圖像,在顏色跟蹤窗口中包含一定數(shù)量膚色二值像素時才認(rèn)為是有效目標(biāo)。

      合成的方案具有較好的識別跟蹤效果,使用改進(jìn)的CamShift算法,即便出現(xiàn)跟蹤丟失現(xiàn)象,也會在數(shù)幀內(nèi)再次跟蹤上目標(biāo)顏色,因此采用此方案為系統(tǒng)的實施方案。

      2 系統(tǒng)功能與指標(biāo)

      系統(tǒng)通過對4個指套顏色的識別與跟蹤,可以在Windows操作系統(tǒng)中實現(xiàn)[2]如鼠標(biāo)移動、點(diǎn)擊、文檔翻頁和多點(diǎn)放大縮小。為了方便操作,一般左右手食指和拇指各戴一個指套,右手手指的移動作為鼠標(biāo)移動和單擊消息,用右手食指和拇指的“捏”的動作實現(xiàn)單擊操作,而“捏住”并移動手指可以實現(xiàn)拖動操作。左手作為多點(diǎn)觸控消息,在左右手的食指拇指同時“捏住”后,通過兩手的遠(yuǎn)離拉開和靠近縮回實現(xiàn)“多點(diǎn)觸控”。

      3 實現(xiàn)原理

      3.1 OpenCV基礎(chǔ)

      OpenCV (全稱是OpenSourceComputerVision Library)[3]作為一個基本的計算機(jī)視覺、圖像處理和模式識別的開源項目,可以直接應(yīng)用于很多領(lǐng)域,作為二次開發(fā)的理想工具。

      3.2 膚色模型

      先將原圖像RGB色彩空間轉(zhuǎn)換到HSV空間,然后判斷像素點(diǎn)是否在膚色模型HSV取值中,若在范圍內(nèi),則該像素點(diǎn)置”1”(255),即置為白色,否則設(shè)置為”0”(黑色)。再進(jìn)行相應(yīng)形態(tài)學(xué)處理以及輪廓提取便可得到膚色二值圖像,進(jìn)行深度信息提取。

      3.3 CamShift顏色跟蹤算法

      CamShift算法是MeanShift的修改算法,克服了MeanShift不適合實時跟蹤的缺點(diǎn)。

      CamShift算法基本實現(xiàn)流程如下:

      (1)Back Projection 背景投影計算

      計算Back Projection的步驟如下:

      ①根據(jù)目標(biāo)顏色圖像計算被跟蹤目標(biāo)的色彩直方圖。

      根據(jù)如圖1的目標(biāo)顏色計算出如圖2的直方圖。

      利用背景投影圖計算質(zhì)心即跟蹤窗口進(jìn)行顏色跟蹤。

      ②根據(jù)獲得的色彩直方圖將原始圖像轉(zhuǎn)化成色彩概率分布圖像,這個過程稱為Back Projection。

      (2)MeanShift重心計算

      MeanShift算法是一種一組數(shù)據(jù)的密度分布中尋找局部極值的穩(wěn)定的方法。若分布是連續(xù)的,處理過程比較容易,這種情況下本質(zhì)上只需對密度的直方分布圖應(yīng)用爬山算法即可。然而,對于離散的數(shù)據(jù)集,這個問題某種程度上是比較麻煩的。

      MeanShift算法步驟如下:

      ①選擇搜索窗口。

      ·窗口的初始位置;

      ·窗口的類型(均勻、多項式、指數(shù)或者高斯類型);

      ·窗口的形狀(對稱的或歪斜的,可能旋轉(zhuǎn)的,圓形或巨型);

      ·窗口的大?。ǔ龃翱诖笮t被刪除)。

      ②計算窗口(可能帶權(quán)值的)的重心。

      ③將窗口中心設(shè)置在計算出的重心處。

      ④返回第②步,直到窗口的位置不再變化 (通常會)。

      (3)CamShift算法

      將MeanShift算法擴(kuò)展到連續(xù)圖像序列,就形成了CamShift算法。它的基本思想是視頻圖像的所有幀作MeanShift運(yùn)算,并將上一幀的結(jié)果作為下一幀MeanShift算法的Search Window的初始值,如此迭代下去,就可以實現(xiàn)對目標(biāo)的跟蹤。整個算法的具體步驟分5步:

      ①將整個圖像設(shè)為搜尋區(qū)域。

      ②初始化Search Window的大小和位置。

      ③計算Search Window內(nèi)的彩色概率分布,此區(qū)域的大小比Search Window要稍微大一點(diǎn)。

      ④運(yùn)行MeanShift,獲得Search Window新的位置和大小。

      ⑤在下一幀視頻圖像中,用③獲得的值初始化Search Window的位置和大小。跳轉(zhuǎn)到③繼續(xù)運(yùn)行。

      在OpenCV中,有實現(xiàn)CamShift算法的函數(shù)cvCamShift,使用較方便。

      3.4 合成方案:膚色模型+改進(jìn)CamShift跟蹤

      結(jié)合膚色識別和CamShift顏色跟蹤算法,在每幀同時得到CamShift顏色跟蹤窗口以及膚色二值圖像,在顏色跟蹤窗口中包含一定數(shù)量膚色二值像素時才認(rèn)為是有效目標(biāo)。如圖3所示,系統(tǒng)分別識別出了膚色和目標(biāo)色紅色,并確認(rèn)出介于膚色之間的紅色位置才是目標(biāo)位置。

      綜合膚色模型和CamShift顏色跟蹤算法,可以在較復(fù)雜背景下實現(xiàn)目標(biāo)顏色跟蹤。

      4 系統(tǒng)硬件組成

      系統(tǒng)硬件組成包括:核心控制系統(tǒng)、視頻采集系統(tǒng)、USB接口的電視棒、天線、視頻音頻輸出模塊,系統(tǒng)硬件構(gòu)成如圖4所示。

      圖4 系統(tǒng)硬件框圖

      5 系統(tǒng)軟件流程

      整個軟件系統(tǒng)分為三種狀態(tài):移動狀態(tài)、單點(diǎn)狀態(tài)、多點(diǎn)狀態(tài)。通過設(shè)置兩個標(biāo)志位flag來判斷所處狀態(tài)。只有進(jìn)入單機(jī)狀態(tài)后才能進(jìn)入多點(diǎn)狀態(tài),而一旦退出多點(diǎn)狀態(tài)將進(jìn)入移動狀態(tài)(如圖5)。在圖形界面上,本系統(tǒng)用VS2005的MFC框架,基于Dialog的結(jié)構(gòu),編寫了友好的人機(jī)交互界面[4]。

      圖5 軟件流程圖

      如下代碼介紹了如何在獲取的視頻信號中識別紅色指套,其他顏色的指套采用相同的方法可進(jìn)行識別,由識別到的手指位置對Whindows鼠標(biāo)消息進(jìn)行響應(yīng),從而對系統(tǒng)進(jìn)行控制[5]。

      (1)構(gòu)建搜索目標(biāo)色的數(shù)據(jù)結(jié)構(gòu)

      本系統(tǒng)最大的特色在于用雙手手指更形象的操作代替原來鼠標(biāo)單一的左右鍵點(diǎn)擊,并能完成部分鼠標(biāo)單擊無法完成的多點(diǎn)觸控功能[6]。本系統(tǒng)使用OpenCV技術(shù),通過對顏色的識別跟蹤,實現(xiàn)了新型的輸入方式,讓電腦能夠讀懂人的動作。本系統(tǒng)的另一個特色是可以和電視棒、網(wǎng)絡(luò)視頻軟件結(jié)合起來。多少年來,電視機(jī)的操作設(shè)備一直是遙控器,用戶每次要對電視操作時都要找遙控器,費(fèi)時費(fèi)力,隨著科學(xué)技術(shù)的發(fā)展,這種方式顯得過于落后,本系統(tǒng)創(chuàng)新性的將基于顏色的手部動作識別和電視操作結(jié)合在一起,符合智能家居的概念,使得操作更加人性化。在實際測試過程中,本系統(tǒng)穩(wěn)定運(yùn)行,并且效果良好。

      參考文獻(xiàn)

      [1]黃菁.基于單目視覺的觸摸屏技術(shù)研究[D].杭州:浙江工商大學(xué),2009.

      [2]RICHTER J, NASARREC.Windows核 心 編 程 [M].北京:清華大學(xué)出版社,2009.

      [3]BRADSKIG, KAEBLER A.LearningOpenCV[M].北京:清華大學(xué)出版社,2009.

      [4]PROSISE J.Programing Windows with MFC Windows[M].Microsoft Press,2007.05.01.

      [5]郭世龍.基于Camshift算法的移動機(jī)器人視覺跟蹤系統(tǒng)[D].武漢:華中科技大學(xué),2008.

      [6]齊婷.基于視覺的多點(diǎn)觸摸基本技術(shù)實現(xiàn)方法 [D].昆明:昆明理工大學(xué),2009.

      猜你喜歡
      膚色鼠標(biāo)顏色
      Progress in Neural NLP: Modeling, Learning, and Reasoning
      Engineering(2020年3期)2020-09-14 03:42:00
      Conversation in a house
      人的膚色為什么不同
      好孩子畫報(2020年3期)2020-05-14 13:42:44
      認(rèn)識顏色
      特殊顏色的水
      和顏色捉迷藏
      兒童繪本(2015年8期)2015-05-25 17:55:54
      膚色檢測和Hu矩在安全帽識別中的應(yīng)用
      膚色檢測和Hu矩在安全帽識別中的應(yīng)用
      為什么人有不同的膚色?
      45歲的鼠標(biāo)
      逊克县| 昌平区| 莎车县| 花垣县| 扶风县| 江达县| 深圳市| 行唐县| 通州市| 渭源县| 广丰县| 岐山县| 乌苏市| 翁牛特旗| 崇文区| 古丈县| 台南市| 收藏| 金溪县| 英德市| 鲁甸县| 南通市| 莫力| 尉犁县| 台江县| 乾安县| 会同县| 德阳市| 天峻县| 双柏县| 太原市| 德阳市| 西乌珠穆沁旗| 荣昌县| 麻栗坡县| 屯留县| 桦川县| 肃北| 巴青县| 大荔县| 兴文县|