1 / 28

南台科技大學 電子工程研究所 使用 Android 手機 實現 手勢辨識 指導 教授 : 薛雲太 研究生 : 許育豪

南台科技大學 電子工程研究所 使用 Android 手機 實現 手勢辨識 指導 教授 : 薛雲太 研究生 : 許育豪. 班級 : 碩研資管二甲 學號 : MA290110 姓名 : 陳靜宜. 目錄. 緒論 文獻探討 系統架構 實 作 結論. 緒論. 研究動機: 智慧型產品大多使用「體驗筆」或「觸控」方式。 手勢 辨識可以應用於「瘖啞人士」。 臉部辨識、車牌辨識以及監視器紀錄人數之使用。 研究目的 : 打破限制將手勢辨識帶出門。. 文獻探討 2.1 影像構成. 影像: 長*寬 = 像素。 像素: R 、 G 、 B 三種顏色構成。

Download Presentation

南台科技大學 電子工程研究所 使用 Android 手機 實現 手勢辨識 指導 教授 : 薛雲太 研究生 : 許育豪

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. 南台科技大學 電子工程研究所使用Android手機實現手勢辨識指導教授:薛雲太研究生:許育豪 班級:碩研資管二甲 學號:MA290110 姓名:陳靜宜

  2. 目錄 • 緒論 • 文獻探討 • 系統架構 • 實作 • 結論

  3. 緒論 研究動機: • 智慧型產品大多使用「體驗筆」或「觸控」方式。 • 手勢辨識可以應用於「瘖啞人士」。 • 臉部辨識、車牌辨識以及監視器紀錄人數之使用。 研究目的: • 打破限制將手勢辨識帶出門。

  4. 文獻探討2.1影像構成 • 影像:長*寬=像素。 • 像素:R、G、B三種顏色構成。 • 色相(H):基本屬性,顏色名稱。 飽和度(S):色彩的純度,越高顏色越濃烈,越低越黯淡。 明度(V):反光之強度,取0-100%。

  5. 2.2灰階影像 • 影像由Camera所拍攝之彩色影像轉為灰階影像,以便做邊緣偵測。 • 顏色比例:由人眼對綠色的亮度感最大,而對藍色最小。 • 舉例:像素(27,129,67),套用公式轉換為91.434,電腦判 定色階91。

  6. 2.3邊緣偵測2.3.1邊緣偵測簡介 • 目的:尋找物體輪廓及辨識影像中變化明顯的點。 • 方格與方格之間變化較大,容易用邊緣偵測找到邊緣。 • 深度上不連續。 • 表面方向不連續。 • 物質屬性變化。 • 物體光線變化。 邊界: • 影像灰階落差較大的地方。 • 主要辨別物體粗估形狀或結果。

  7. 2.3.2 梯形 • 梯度的計算:假設一個二維影像的灰階值函數,那麼灰階變化梯度為斜率變化的向量。 • 計算梯度方法:對於不連續的數位影像有三種方法。 水平方向 垂直方向 第一種方法 對影像進行迴旋積而得到近似結果

  8. 第二種方法 所得到 第三種方法 可以讓計算所得之梯形剛好是f(x,y)

  9. 2.3.3邊緣偵測種類介紹 梯形運算方式:Sobel、Prewitt、Robert、Laplacian及LoG。 • Robert:設計簡單,容易受雜訊干擾。 • Laplacian:常常出現雙邊緣。 • Prewitt:可偵測八個方向的梯形值。 • Sobel:與Prewitt相似,常用運算方法。 理想邊緣偵測: • 好的檢測:演算法能盡量得多標示出實際正確邊緣。 • 好的定位:演算法所認定出來的邊界與實際物體邊界越近越好。 • 最小影響:想像中的邊界只會標記一次。

  10. 2.3.4Canny邊緣偵測 • 傳統的邊緣偵測只能滿足檢測和好定位。 • 以較大的值去除偵測到的雜訊。 • 以較小的值去偵測變化較不明顯的邊緣達到去除雜訊,又把較不明顯的邊緣忽略掉達到最佳的結果。

  11. 2.4特徵提取 • 特徵點分為不同的「集」。 • 相同特徵的點為一個集。 • 其他相似之特徵的數點再歸類為一個「集」。 • 邊緣:影像之輪廓,區別物體與背景的像素。 • 角:先偵測邊緣,再開始分析邊緣的方向尋找變化極大的地方。 • 脊:長條形之物體都稱為脊。 • 區域:區域檢測可以代替角檢測器檢測那些對於角檢測太過平滑的區域。

  12. 2.5Fast特徵偵測 • Fast特偵提取:速度最快的檢測方法,只利用周圍的像素比較訊息就可得特徵點。 • 中心點與周圍選中的點灰度值差別大的時候,則認為該點為一個特徵點。

  13. 2.6特徵描述與比對 • 特徵描述: 分辦所有的特徵點為什麼為「集」。 特徵點讓程式判斷,而要可以讓程式判斷就要先對特徵點做描述。 • 特徵比對: 不同的角度或光源下得到的兩張影像,把這兩張影像的特徵點互相對應到一樣的特徵點。 • 檢測器:決定哪個點是特徵點,較不會產生錯誤的比對地方,找出特徵點在哪。 • 描述:特徵描述後,才能對兩個以上的點做特徵點比對。 • 角偵測:一個角定義兩個邊緣的交叉點。

  14. 2.7 OpenCV • 跨平台的機器視覺函式庫。 • 可使用在學術領域及商業且免費。 • 主要以C++語言所撰寫。 • 支援C#、CH、Ruby。 • 運用: • 人機互動 • 物體識別 • 影像分割 • 人臉辨識 • 動作辨別 • 運動跟蹤 • 機器人

  15. 2.8Android智慧型手機 • 免費且開放原始碼之作業系統。 • 分為「應用層、應用框架層和函式庫層」。

  16. 2.9人機介面 • 人們與電腦或3C產品的溝通。 • 大部分運用於工業及商業,略分「輸入」和「輸出」。 • 互動:至少包含兩點,「使用者」和「系統」。 • Norman互動模式: • 訂立目標 • 組成意圖 • 標明行動順序 • 執行 • 觀察系統 • 詮釋系統狀態 • 評估

  17. 系統架構 特徵辨識 手指辨識

  18. 2.邊緣偵測架構流程 1.開啟Camera架構流程 OpenCV內Canny函式庫

  19. 3.特徵提取之架構流程 4.特徵描述之架構流程 特徵提取的影像 手勢特徵 標準手勢特徵

  20. 5.特徵比對 6.最大輪廓之流程與架構 函式庫

  21. 7.尋找手掌中心點及角度 6.尋找指尖架構與流程 JavaCV裡的cvMoment(),使用Moment尋找出中心點再找出手指出現之合理角度。 計算面積 計算中心點 計算中心點

  22. 9.為手指命名架構與流程

  23. 四、實作 1.尋找手掌中心點及角度 • 不儲存則將Camera偵測到的影像回傳當成拍照的preview。 2.邊緣偵測 • 透過cvCanny處裡影像為灰階再將影像轉為RGBA格式完成邊緣偵測。

  24. 3.特徵提取 • 本文以Fast,速度較快、可靠度也較高加上在手機上運行速度的要求比較高。 4.特徵描述與比對 • 拍攝一張影像來跟標準手勢做比對。

  25. 5.尋找最大輪廓 • 程式判斷白點為手掌而找出手掌的所在位置,之後將手掌之邊緣白點回傳即可找到手掌輪廓。 6.尋找中心點 • JavaCV裡的Moment()。 • 參數為:m00,m10,m01,m11,m20,02所有白點總和。 • M10:白點x座標總和。 • M01:白點y座標總和。 • x座標中心點: (m10/m00)。 • y座標中心點: (m01/m00)。

  26. 7.尋找指尖 • 判斷指尖與凹陷的地方則用任兩點連接起來。 • 連線中心點不在手掌內判斷為凹陷。 • 反之則判斷指尖。 8.命名手指 • 幫手指標上相對應的名字使用labelTumbIndex()。 • 參數:指尖(fingerTip)和事先命名(nameFingers),將自動對應。 • 食指和拇指另寫一副程式getNewt()。

  27. 9.劃出手指名稱 實現辦別手指與標上對應之手指名稱 手勢二(勝利)之手勢辨識失敗 手勢五之手勢辨識失敗圖 手勢一之手勢辨識成功 手勢二(勝利)之手勢辨識成功 手勢一之手勢辨識失敗

  28. 五、結論 • 手機上實現手勢辨識。 未來展望: • 瘖啞人士能使用手勢辨識啟動電器用品。 • 製作手機上手勢辨識遊戲。

More Related