Mais conteúdo relacionado Semelhante a 第五組-AI視力檢測機AI Vision-Exam Presenation v.1.6.6 (20) Mais de IttrainingIttraining (20) 第五組-AI視力檢測機AI Vision-Exam Presenation v.1.6.62. 專題大綱
專題動機、問題及需求
可行性分析
A. 市場可行性
B. 技術可行性
核心技術、硬體架構
解決方案
1. UI 介面
2. 用人臉登入
3. 手勢方向辨識
4. 測試距離可以有彈性(配合室內空間)
5. 程式反應不要有延遲
6. 結果即時通知相關人員
獲利模式
未來產品延伸
7. AI 視力檢測機 情境描述
AI 視力檢測機
1. 無需其他人的協助就可以測試、驗光。
2. 可以很方便的在許多場所、時間檢測。空間距
離較小,也可以測試。
3. 不需要記憶他們的帳號,尤其方便老人、小孩
。
4. 測試的結果可以很快地通知相關人員,並記錄
歷史紀錄。
5. 是圖畫介面,容易了解,減少文字。
6. 檢測時,手勢的移動跟傳統的方法是一樣的
8. 解決方案
1. UI用Widget、可以畫圖形
• TKinter + matplotlib
2. 用人臉登入
• OpenCV HAAR + CNN
3. 手勢方向辨識
• YOLO
4. 測試距離可以有彈性(配合室內空間)
• 諮詢專業醫師: 視標大小與距離關係
5. 程式反應不要有延遲
• 邊緣運算(Movidius)
6. 結果即時通知相關人員
• LINE + Node.js
13. 解決方案: UI 介面
用人臉登入
Core
UI 介面
手勢方向辨識 反應不要有延
遲
測量距離可
以有彈性
Tkinter + MatPlotLib
即時通知相
關人員
諮詢專業醫師
Tkinter + MatPlotLib
LINE + Node.js
YOLO 邊緣運算
16. 2. ) 功能 選單
1.視力檢測:
利用AI 手勢辨識,不需驗光師
2. 血壓檢測: (未完成)
遠距檢測
3. 血糖檢測: (未完成)
遠距檢測
4. 健康趨勢分析:
眼力檢測記錄
19. 解決方案:用人臉登入
用人臉登入
Core
UI 介面
手勢方向辨識 反應不要有延
遲
測量距離可
以有彈性
Tkinter + MatPlotLib
即時通知相
關人員
諮詢專業醫師
Tkinter + MatPlotLib
LINE + Node.js
YOLO 邊緣運算
20. Face Recognition – Core Technology
Face
Reconigtion
Face Locating OpenCV's Haar-based cascade classifier
Face Recognition CNN Encoder and Distance Comparing
OpenCV HAAR + CNN
CNN Encoder 為已訓練大量人臉資料的編碼器, 新
的人臉不需要再訓練
21. Face Recognition - Theory
CNN Face
Encoder
CNN Face
Encoder
0.125, 0.280,
1.002, 1.561,
2.541, -1.002...
0.521, 0.321,
-1.112, 0.161,
2.100, -1.978...
Euclidean
distance
23. 解決方案:手勢方向辨識
用人臉登入
Core
UI 介面
手勢方向辨識 反應不要有延
遲
測量距離可
以有彈性
Tkinter + MatPlotLib
即時通知相
關人員
諮詢專業醫師
Tkinter + MatPlotLib
LINE + Node.js
YOLO 邊緣運算
28. 解決方案:反應不要有延遲
用人臉登入
Core
UI 介面
手勢方向辨識 反應不要有延
遲
測量距離可
以有彈性
Tkinter + MatPlotLib
即時通知相
關人員
諮詢專業醫師
Tkinter + MatPlotLib
LINE + Node.js
YOLO 邊緣運算
31. Raspberry Pi + Intel 神經棒
Train Model
meta & pb file
Enough ability to real-time
detecting?
Edge Computing
36. 解決方案:即時通知相關人員
用人臉登入
Core
UI 介面
手勢方向辨識 反應不要有延
遲
測量距離可
以有彈性
Tkinter + MatPlotLib
即時通知相
關人員
諮詢專業醫師
Tkinter + MatPlotLib
LINE + Node.js
YOLO 邊緣運算
38. 功能需求 vs. 解決方法
功能需求 說明 解決方法
1) UI 介面 Widget、Radio Button、圖型表示 Python TKinter、
Maplotlib
2) 用人臉登入 1. Face Locating (辨識臉部)
2. Face Recognition (對比128特徵點)
Cascade Classifier
OpenCV、DNN
3) 手勢方向辨識 1. 製作手勢資料
2. 標記手位置
3. 訓練YOLO模型
4. 測試新資料
YOLO
4) 測試距離可以有
彈性(配合室內
空間)
有Excel 表,可以根據測量距離遠近,
調整標記大小。
諮詢專業眼科醫師
5) 程式反應不要有
延遲
1. 用Movidius 加速棒 邊緣運算
6) 結果即時通知相
關人員
1. 必須可以穿過防火牆
2. 即時通知
Line Bot + Node.js
Ngrok server
Notas do Editor 視力檢查自動化,縮短就醫等候時間 視力檢查自動化,縮短就醫等候時間 視力檢查自動化,縮短就醫等候時間 硬體架構:
軟體開發時使用裝有GPU的PC, 完成後移植到 Raspberry Pi 以達到 IoT 邊緣運算的效果
核心為Raspberry Pi 外接HDMI介面的Monitor + USB Webcam + 增強運算能力的Interl NCS
IoT 聯網部分則使用Ethernet 或 Wifi
軟體上會將訊息傳到Line, 故硬體包含遠端的server 三個主要介面的核心技術:
人臉辨識 : 使用cascade classifier 定位臉部, 擷取臉部畫面後利用比對方式找出對應使用者
物件偵測 : 利用darkflow base 的 YOLO v2 訓練畫面中的手部位置, 實現即時偵測與控制
邊緣運算 : device 運算能力不足以做到基本水準的即時偵測, 需要搭配Intel NCS 的SDK(openVINO) 處理神經網路運算的部分
LINEBOT : 將測驗結果告至使用者, 透過LINE Developer提供的API搭配 web server 將訊息傳出 人工智慧的主流運算方式之一,相較於雲端運算,邊緣運算讓裝置有AI能力,特別適合需要「即時運算」的情境 人工智慧的主流運算方式之一,相較於雲端運算,邊緣運算讓裝置有AI能力,特別適合需要「即時運算」的情境 人工智慧的主流運算方式之一,相較於雲端運算,邊緣運算讓裝置有AI能力,特別適合需要「即時運算」的情境 人工智慧的主流運算方式之一,相較於雲端運算,邊緣運算讓裝置有AI能力,特別適合需要「即時運算」的情境 人工智慧的主流運算方式之一,相較於雲端運算,邊緣運算讓裝置有AI能力,特別適合需要「即時運算」的情境 人臉辨識流程:
鏡頭攝影定位人臉位置 -> 擷取人臉圖片 ->比對資料庫中所有使用者臉部照片 ->取差距最小的使用者
Locating 運用 openCV library中的 cv2.cascadeclassifier 搭配訓練好的權重
將圖片放入cascade classifier中, 可得到 臉部的位置資訊 (x, y, w, h)
Recognition 使用模組 “face_recognition”中的讀取圖片, 編碼及距離計算的函式 人臉比對基本原理:
將圖片中的人臉進行編碼, 此處的編碼模型為卷積神經網路, 經由訓練大量的臉部特徵差異得到編碼模型
因此每張臉的圖片可得到一組128個數字的編碼, 一組編碼就代表一張臉
而比對的方式則是用歐式距離計算各組編碼之間的距離, 來判斷是否為同一人的臉
程式流程:
cascade classifier 得到當前要登入的使用者的臉部照片並編碼
掃描使用者sign up 時所記錄資料pickle檔, 得到每一筆照片檔名
讀取照片後編碼
計算兩張照片的編碼距離
全部掃過後取最短距離並須低於threshold
經由紀錄最短距離的照片名稱找到使用者名稱
人工智慧的主流運算方式之一,相較於雲端運算,邊緣運算讓裝置有AI能力,特別適合需要「即時運算」的情境