Quarky 人面辨識
- 人面識別用於實時檢測人的面部,用於監視和跟踪人或物體。
- 它被廣泛應用在與相機相關的技術之中,例如我們手機/單反相機中便有這類的系統
常見的例子有 :
- 過往 Facebook 具有人臉檢測算法來檢測圖像中的人臉並進行識別並標記人物。
- 現代手機具有面部解鎖功能如Face ID,可識別面部並檢查其是否被紀錄的人面。
Quarky 跟 Pictoblox 也能透過相機拍攝及編程分辨人臉 , 以做出一些簡單的保安系統。
所需物料 :
Quarky x 1
Pictoblox x 1
具鏡頭的電腦 / 平板 x 1
Pictoblox link (如使用藍牙連接)
USB Type C (如使用USB連接)
連接 Quarky :
在上方工具列選取「Board」再選擇 Quarky 。
以 USB Type C 或藍牙連接你的 Quarky , 假如使用藍牙請開啟 Picotoblox link。
加入 Face Recognition Extension :
加入 「Face Recognition 」 Extension , 按下左下角的「+」號以進入 Extension 頁面。
面部檢測的模組需要幾秒鐘來下載
下載完成時你將收到「Model loaded successfully」
認出人臉表情 :
先利用「video on stage 及 show bounding box」來設定相機 , 然後加入「analyse image from camrea」分析拍攝到的影像 , 最後利用「Tobi」說出該人物的表情。
實例 :
加入 Train Face Block :
加入全新自定義的 「Train Face」 Block , 作用跟Function相似 , 給予定義後只需把「Train Face」拖進編程便會做出定義的內容。我們可利用它來認出這人臉/人是誰。
設定 Backdrop :
在右下角可以選擇「Choose a Backdrop」 / 「Upload a Backdrop」等設成 Stage 的背景 ,
作用是當 Pictoblox 在學習分辨人物後可以即時轉到其他畫面 , 避免它誤認相機最新收到的影像為需辦認的人。
這次選擇 Blue Sky 2 , 建議使用純色或不像人臉的圖片作Backdrop。
Define Train Face
「define Train Face」在你建立出這個自定義Block後便會在 Pictoblox workspace出現 ,
加入 「turn on video on stage」以開啟鏡頭及stage以分辨人面 , wait 1 seconds 為間隔 ,
然後在「look」加入 switch back drop to Blue Sky 2(剛選擇的Blackdrop) ,
作用是在學習/認出等等的人臉前 stage 的影像會變成純色背負 , 這樣便能確保在訓練 Pictoblox 分辨人臉時能確保影像 input 是要訓練人臉而不是用家面對鏡頭時的人臉或其他影像。
加入 「add class 1 as ____ from camera」以進行訓練 , 名字可自行更改。
由於這次我會使用 Obama 的影像來進行分辨 , 所以改成「Obama」
點擊 「 Train Face」以進行訓練 , 把要被認出的的人臉放至相機前 , 成功訓練後 Stage 上該人臉會被方形框框住。
加入「When Clicked」以啟動編程(進行人臉識別) , 一樣先加入相機設定。
加入 forever 「do face matching on camera」 , 目的是做出人臉辨識 ;
加入 if else 「 face is 1 class detected」即剛訓練的人臉 ,
if yes --> 在 Quarky display happy emotion , else --> display crying emotion
加入 Text to Speech 豐富編程 :
加入 「Text to Speech」 Extension , 按下左下角的「+」號以進入 Extension 頁面。
加入「speak Obama」及「speak who are you」作聲音提示 , 以做出無障礙的保安系統幫助視障人仕。