Kadence

人臉辨識

在 AI 科技教育中,常見的人臉辨識能夠根據人臉的特徵,如:眼睛、鼻子、嘴巴等,計算出人臉的特徵值。再藉由比對各個人臉的特徵值,判斷人臉的身份以及相似度。

Web:AI 除了可以學習人臉辨識原理,還能提供人臉的座標位置、辨識信心度,在課堂中做出輕鬆人臉辨識、門禁系統、照片比對、人臉解鎖等等 AI 生活應用。

匯入人臉模型

在使用「人臉辨識」積木前,需要先透過「匯入模型」將「人臉辨識模型」下載入板子中,才能開始進行人臉辨識。

步驟

  1. 下載人臉辨識模型
  2. 將 Web:AI 開發板透過 USB 連接上積木平台。
  3. 點擊「更多」中的「匯入模型」。
  4. 選擇剛剛下載的「face_recognition.kmodel」。
  5. 等待匯入模型完成就可以開始使用「人臉辨識」積木!

開始人臉辨識

「開始人臉辨識」積木會自動開啟 Web:AI 開發板鏡頭,並讀取人臉辨識模型。
使用時,可以透過右側方框選擇:
– 是否框選螢幕中的人臉
– 是否框選螢幕中的人臉五官

使用時會執行辨識 1 次,可以搭配「重複」積木重複辨識。

人臉特徵值

在比對人臉前,需要先取得人臉的特徵值,「人臉特徵值」積木能夠將人臉五官特徵轉換成字串資訊。
藉由比對這些「人臉特徵值」,能夠判斷人臉之間的相似度。

將「拍攝照片」積木或「圖檔」積木放入,能夠將拍攝到的照片或圖檔中的人臉資訊轉換成特徵值。

因為使用的模型與訓練方式不同,無法和 Webduino 兌換券 – 人臉辨識+情緒感知 中的臉部特徵值共用!

範例:說出人臉的特徵值

➤ 前往 範例連結

  1. 使用「開始人臉辨識」積木搭配「重複」積木,讓 Web:AI 能不斷辨識人臉。
  2. 將「拍攝照片」積木放入「人臉特徵值」積木中,並使用「按鈕」積木觸發動作。
  3. 完成積木如下,執行後對著拍攝的人臉按下 L 按鈕,可以看到小怪獸說出特徵值。

    特徵值為一段相當長的字串。

人臉命名

為了做出門禁系統等生活應用情境,需要將「取得的特徵值」紀錄到 Web:AI 中,「人臉命名」積木能夠將人臉命名為「小明」、「小王」等自訂的名稱。

因為人臉數量越多會影響辨識度,建議設定人臉數量為 5 個內。

「人臉命名」積木中必須放入「人臉特徵值」積木。

人臉資訊

辨識到人臉時,可以使用「人臉資訊」積木取得以下資訊:
– 名稱
– 信心度
– x 座標
– y 座標

人臉名稱為「人臉命名」積木設定的人臉

如果辨識到的是未設定的人臉,則會顯示半形問號「?」。

範例:辨識與設定人臉

➤ 前往 範例連結

  1. 使用「開始人臉辨識」積木,搭配「LCD 顯示」積木和「重複」積木,能夠重複辨識並在螢幕上顯示人臉名稱。
  2. 在程式剛執行時,設定變數「順序」為 0,並在每次按下 L 按鈕時「順序」增加 1。
  3. 接著分別設定 ( 此處命名的字串可以自訂名稱 ):
    • 當順序 = 1:將拍攝的人臉命名為「studentA」
    • 當順序 = 2:將拍攝的人臉命名為「studentB」
    • 當順序 = 3:將拍攝的人臉命名為「studentC」

  4. 將積木組合起來如下圖,按 L 按鈕分別設定人臉 A、B、C,並且在螢幕上顯示辨識到的人臉名稱。

應用範例:LINE 警報通知

➤ 前往 範例連結

當 Web:AI 偵測到不認識的人臉時,會傳送照片連結和警報訊息到 LINE。

  1. 使用「開始人臉辨識」積木,搭配「重複」積木,能夠重複辨識螢幕上的人臉。
  2. 辨識到陌生人會發送通知。
    使用「邏輯」積木搭配「重複」積木,當「辨識人臉的名稱」是「?」時,會執行後續的動作。
    因為使用到兩個「重複」積木,所以需要勾選「背景執行」。

  3. 先拍照上傳雲端,再將圖片網址透過 LINE Notify 發送,加入 2 秒的延遲時間。
    >- 使用前必須先設定 LINE Notify,歡迎參考:LINE 積木
    >- 因為「重複」積木會不斷發送訊息,因此多增加 2 秒的時間間隔。

  4. 將積木組合如下,當辨識到陌生人時,會傳送照片連結並發送 LINE 通知。
分享