Character Input System for Smart
Glasses by Using Gesture Recognition

組員:莊子嬋、姚詩軒、陳星宇

簡介

用於智慧眼鏡上的手勢輸入法,利用Leap Motion、Google Cardboard 及搭載Android手機模擬具有Depth Sensor的智慧眼鏡

動機

智慧眼鏡可預期會是將來人們生活中相當重要的隨身智能配件,而現有的Google Glass或Microsoft Hololens主要是採用聲控達成使用者輸入文字的功能;然而聲控在比較要求寧靜的場合或是輸入內容需要保有隱私的情境下,或許並不是一套好的辦法。

系統介紹

硬體設備

系統架構

技術

SVM

我們使用libsvm.net的SVM來學習收集到的資料。設計兩個models:

  • model1: 判斷close、open
  • model2: 判斷其餘四種手勢。
  • 此兩組models使用不同的features:

  • model1: palm sphere(手掌所形成的球半徑)
  • model2: 大拇指指間方向、掌心法向量、手掌法向量與手臂方向向量夾角、食指第二節骨頭與大拇指指間距離、食指指尖與手掌上下關係。
  • 兩個models皆使用Radial Basis Model,其中有兩個可控制參數——Cost與Gamma,我們利用實驗來決定所使用的兩個參數。

    每次Leap motion擷取到手部資訊,就會計算所需的features,並給SVM進行手勢判斷。然而不是每次都有對應的手勢。因此對於每次的predict,計算probability,若超過所設定的threshold才會採納此手勢。

    此外,為了增加整體正確率與使用者經驗,我們計算一段時間內出現次數最高的手勢,此手勢才會被真正當作最終判斷結果並傳給手機

    APP

    於Unity上使用Google Cardboard SDK實作出擴增實境效果,並接收Windows電腦中C#執行程式上Leap Motion的資訊,達到判讀手勢功能,最終得以讓使用者利用手勢輸入並顯示於手機螢幕上。

    操作說明

    操作流程圖

  • Waiting page: 等待掃描QRcode
  • Sentence page: 顯示已輸入完的句子
  • Bopomofo page: 選擇要輸入的注音
  • Word page: 選擇要輸入的字
  • Sound page: 選擇要輸入的聲調
  • 操作細節

  • 使用者可遵循途中箭號的方向滑動尋找所需物件。
  • 在尋找的過程中,藉由與中心之距離控制滑動速度。
  • 握拳可將物件鎖定住,使其不再滑動,再次握拳可將選定之 物件解鎖。
  • 手勢圖




    成果

    confusion table


  • 0: 沒有手勢(使用者無意圖做上述六種手勢)
  • 1: Close
  • 2: Open
  • 3: Rotate
  • 4: Press
  • 5: Delete
  • 6: Enter
  • 執行截圖





    成果影片




    未來展望

    將我們實作的成果轉移到合適且成熟的智慧眼鏡平台上,成為人們在聲控以外可以依賴的另一套輸入方式。