如何建構採用ARM架構的人臉辨識 AIoT 裝置
FaceMe®
< All Articles

如何建構採用ARM架構的人臉辨識 AIoT 裝置

2021/03/04

本篇文章中,我們將與您分享如何於採用ARM 架構(如:Jetson、Qualcomm、MediaTek和NXP)的AIoT(人工智慧物聯網)裝置中,以最佳化的方式發揮人臉辨識效能,打造出各種具備人臉辨識功能的 AIoT裝置。

什麼是 ARM架構的 AIoT 裝置?

首先,我們先來定義 ARM 架構的 AIoT 裝置。AIoT 裝置是連線到網際網路,並透過 AI 演算法執行工作的裝置。實際的裝置內部是 採用ARM架構的 SOC(單晶片系統)或 SOM(系統模組),搭配一般性用途的 CPU 和用於加速的 GPU。許多 AIoT 廠商也在 SOC 或 SOM 中導入了 APU(人工智慧處理器)或 NPU(神經網絡處理器),讓 AI 應用程式可以提升在邊緣端(而非在雲端伺服器)的執行效率。

ARM 架構的裝置的具備功耗優勢,與 x64架構的電腦相比,可耗費較少能源。ARM 處理器常用於輕量化的邊緣 AIoT 裝置,如:資訊服務站(KIOSK)、工業用平板、電子看板、穿戴式和行動裝置。

AIoT 裝置上的人臉辨識

AIoT 裝置的使用案例範圍廣泛,為智慧居家、智慧辦公室等情境帶來諸多好處。下方我們列出了幾個最常見的使用案例。

工業設備、工廠和倉庫

人臉辨識為製造業帶來了許多好處。首先,員工在進出工作場所時可立即辨識其臉孔,快速記錄上下班時間。將導入人臉辨識的 AIoT 裝置安置在出入口,也可在未預期的訪客嘗試進入場所時提醒管理人員。另外還可以用來確保安全規程。例如:將 AIoT 裝置連線到需要臉部 ID 進行驗證才能存取的機械設備。您可閱讀此文章以深入了解如何透過人臉辨識打造智慧製造及智慧倉儲

零售業

各家零售商為了從眾多競爭者中脫穎而出(尤其是線上商城),零售業者可透過部署一系列的 AIoT 裝置並導入臉辨識,以改變顧客在門市購物的體驗。當顧客在門市購物時並走向導入人臉辨識的自助服務站時,服務站會辨識出其為 VIP 客戶和忠誠會員。系統會顯示其個人檔案或帳戶,建議購物者可能喜歡的商品並提供優惠。配有人臉辨識的 AIoT 裝置也可用來精簡結帳流程,結帳人員可以透過臉部授權來存取收銀機。此外,以餐飲業為例,人臉辨識也可用來改善餐飲業的顧客體驗

辦公室

有了人臉辨識,許多商業大樓可以流暢地執行自動化門禁管理和監控,提升安全性。配有人臉辨識的 AIoT 裝置可放置在大樓的出入口以取代員工使用的門禁卡,透過人臉偵測和辨識即可授予進出權限。同樣的解決方案也可應用在管制區域的進出,例如 IT 人員進出伺服器機房。

智慧看板

另一個人臉辨識和 AIoT 的重要使用案例是智慧看板。例如:機場旅客可以走到互動式智慧看板,並使用預先註冊的臉部 ID 來提示螢幕顯示相關的航班資訊和可能發生的航班異動,例如登機門臨時變更和航班延遲。

醫療保健

AIoT 是醫療保健創新的關鍵驅動力,為醫療設備、病患辨識和監控存取等領域帶來改變。其中一個令人注目的 AIoT 使用案例是使用人臉辨識來存取藥櫃。導入人臉辨識的智慧藥櫃不但提升了安全性還能加強管制藥物的控管,確保只有授權人員可以存取,並會自動精確地記錄人員姓名、取用項目和時間。

智慧門鈴

智慧門鈴是人臉辨識和 AIoT 中日益普及的使用案例,且對消費者來說輕易上手。將傳統的門鎖改為智慧門鈴可以大幅提升居家安全。導入人臉辨識的智慧門鈴可以馬上辨識出鄰居、家人和朋友,並依照屋主設定的規則執行操作,例如自動為家庭成員解鎖,或在未知人士接近家門時傳送通知進行示警。

智慧門鎖

和智慧門鈴相似,導入人臉辨識的 AIoT 智慧門鎖可以為多種產業提升安全性。飯店和大型遊輪可以藉此實現無鑰匙、免房卡的智慧開鎖服務。醫療保健場所可以用智慧門鎖管制私人區域的進出權限。商業大樓可以藉此授予員工進出辦公室的權限。這樣的使用案例不計其數,相較鑰匙和門禁卡可以用借的或甚至被偷,智慧門鎖只會讓已授權的人員進入。

車用資訊娛樂系統

AIoT 和人臉辨識的一個新興的使用案例是汽車,具體地說是車上整合的資訊娛樂系統。當有人坐在駕駛座時,人臉辨識會辨識出該特定駕駛並自動套用其偏好的設定,例如喜歡的廣播電台、車內溫度、座位調整和後照鏡的位置。

設計 AIoT 裝置時的注意事項

既然我們已經看過一些人臉辨識主要的使用案例,現在必須討論在建構用於人臉辨識的 AIoT 裝置時,需要考慮的重要因素。AIoT 裝置的規格會根據使用案例和其放置環境而有所不同。另外像是效能需求、費用,功率消耗等因素也應納入考量。

計算效能

要決定計算效能的需求,必須先確定裝置的確切使用目的。思考你需要人臉辨識執行的工作,以及這些工作的複雜程度。你也需要思考每秒需要偵測和辨識的臉部數量。你每次只需要裝置辨識一張臉?或者你需要裝置同時執行多個人臉辨識?以智慧門鎖的大門進出權限為例。若只需要裝置在每次有人接近時辨識一張臉,那麼計算效能較低的小型 AI 模型即可符合你的需求。FaceMe®的高精準模型(H)模型便足以應付這樣的使用案例。不過,如果想要在繁忙的賣場出入口所安置的攝影機執行人臉辨識,用以辨識阻擋名單上的人員,你便需要更強大的計算能力。

你也需要決定使用案例中是否需要執行人臉辨識,或是只需要收集人口統計資訊。若只需要智慧看板辨別人口統計資訊(如年齡和性別),那麼計算效能較低的選擇就能滿足你的需求。若智慧看板也需要執行人臉辨識,便需要較高的計算效能。

費用

AIoT 裝置所需的計算效能越高,所需的費用也越高。因此,若預算是你在 AI 和人臉辨識專案上的關鍵考慮因素,你必須將效能需求納入考量。

各家晶片廠商(例如 NVIDIA、Intel、Qualcomm 等)各有其定價策略,並根據不同的連接或擴充介面(如:Wi-Fi、HDMI 或 USB)推出不同等級的產品線和價格。例如:NVIDIA Jetson 因其良好的效能成為了常見的晶片組解決方案,但是也因此價格較高。

外形規格

外形規格即是裝置的尺寸。若 AIoT 裝置需要符合特定大小(例如安裝在門上的智慧門鎖),那尺寸因素很有可能會限制你的選擇。但若裝置配有大型電子螢幕,在選擇上便有較多彈性。

功率消耗

計算效能和功率密切相關。裝置的效能越高,功率也越高。不過,當使用專用的晶片來加速視覺技術和 AI 演算法時,可以提高電源的使用效率。

導入 APU(人工智慧處理器)的 MediaTek i350 晶片組便是一個很好的例子。結合 APU 和 NeuroPilot 人工智慧平台可以提升 AI 運算效能。和一般性用途的 CPU 指令集相比,APU 可提升大量平行資料的計算效能,例如一次對多個資料點進行乘積累加運算操作,這很常見於電腦視覺 AI 演算法的圖像處理。

NVIDIA 的 Jetson 系列
來源: NVIDIA

MediaTek 的 Pumkin 開發板
來源: MediaTek

四個最熱門的人臉辨識 AIoT 配置

以下是四個採用ARM架構,最常用於人臉辨識的 AIoT 裝置配置,我們將從效能/費用最高的配置開始介紹。

  1. NVIDIA Jetson 平台

    效能:高
    費用:高

    Jetson 系列的首次登場是 NVIDIA 在 2014 年推出的 Jetson TX。從那以後,NVIDIA 相繼推出多代版本以快速改進這項產品。其系列的最新版本為 Jetson Xavier NX,在 AI 推論效能、耗電量和費用之間取得很好的平衡。Jetson 平台一次可以處理一個以上的視訊輸入,同時執行其他應用程式。若你的裝置需要同時執行多項工作,那麼 Jetson 會是一個合適的選擇。

    NVIDIA 提供多種工具和 SDK,包括 CUDA、TensorRT、DeepStream 等,這些都是市面上最完善的選擇之一。這些工具讓 AI 演算法的執行更流暢,進而讓 Jetson 在部署人臉辨識上更加輕鬆。NVIDIA 提供了 JetPack 開發者工具,其中包含了修改版的 Ubuntu 和所需的全部工具鏈與程式庫。

    根據我們的測試,Jetson Xavier NX 可支援 72 fps 的 FaceMe VH 模型(每張輸入圖像只有一張臉,且圖像解析度為 1080p )。

    Jetson 裝置的尺寸也很小。Jetson Xavier NX 的體積僅 70 mm x 45 mm。不過,其價格也比較昂貴。

  2. Qualcomm

    效能:可接受 – 中等
    費用:中等 – 低

    從用於手機和平板的 Snapdragon 產品線,到用於 AIoT 邊緣產品的 QCS410/610,Qualcomm 提供了廣泛的 SOC 選擇。Qualcomm 的神經處理引擎開發套件(SNPE)能讓演算法作為 SOC 的一部分在 GPU 或 DSP 晶片上執行,是提升人臉辨識 AI 演算速度的最佳平台之一。

    FaceMe ®的測試中,我們使用了搭載 Snapdragon 660 的研華科技 Android 系統工業平板電腦。我們發現讓 AI 與 SNPE 在 GPU 上運行,可讓端對端的人臉辨識處理時間減少了 40%,且 CPU 的使用量也減少了 64%。Snapdragon 660 可支援 16fps 的 VH 模型/26fps 的 H 模型,皆為 720p 解析度。

  3. MediaTek i350

    效能:中等
    費用:低

    MediaTek i350 在具有競爭力的價格下提供了 AIoT 裝置的合理效能,適用於配有觸控螢幕的裝置,例如 POS 終端機、智慧門鎖、工業用平板電腦,或是嵌入智慧家電或健身器材的顯示面板。MediaTek 是以提供行動裝置出色的一站式解決方案而聞名。他們提供了 SDK、範例程式碼和工具,讓任何人都可以輕鬆地建構適合自己的應用程式。i350 可同時支援 Android 和 Ubuntu 系統。

    在我們使用 FaceMe® 測試的結果中,MediaTek i350 可支援 8fps 的 VH 模型/18fps 的 H 模型,皆為 720p 解析度。

  4. NXP i.MX8M Plus

    效能:中等
    費用:低

    NXP (恩智浦半導體)為保全、辨識、汽車、網路功能、無線電、類比和電源管理提供了多樣性的混合訊號和標準產品。目前 NXP i.MX8M Plus 處於前製作業階段,預期在 2021 年初上市。這是 NXP 首次在他們的 SOC 中導入 NPU。這可以在執行 AI 應用程式時,有效提高 AI 的演算效能,並減少 CPU 的工作量。

    為了在 NXP 上支援 APU,使用了 TensorFlow Lite 架構和推理引擎。TensorFlow Lite 是一種開放原始碼計劃,主要由 Google 開發並用於 Google 的多款 AI 應用程式中。它是一款功能豐富、穩定且成熟的平台。i.MX8M Plus 適合用來將許多 AI 應用程式移植到平台上。若你有其他的 AI 應用程式想要用於此平台,移植程序也非常簡單。

    在我們使用 FaceMe® 測試的結果中,iMX8M Plus 可支援 5fps 的 VH 模型/6.3fps 的 H 模型,皆為 720p 解析度。

    以下的表格顯示了每個平台的效能

    平台
    FaceMe 模型
    圖像解析度
    效能 (FPS)
    Jetson NX
    VH
    1080p
    72
    UH
    1080p
    23
    Jetson Nano
    VH
    1080p
    20
    Snadragon 660(搭載 SNPE 加速器)
    H
    720p
    26
    VH
    720p
    16
    MediaTek i350(搭載 NeuroPilot 加速器)
    H
    720p
    18
    VH
    720p
    8
    NXP i.MX8 Plus
    H
    720p
    6
    VH
    720p
    5

AIoT 和臉部辨識的作業系統

用於人臉辨識 AIoT 裝置的兩個主要作業系統是 Linux(Ubuntu 和 Debian)和 Android。在選擇適合的作業系統時,需要先考慮在特定使用案例上的需求。FaceMe ®是功能最全面的人臉辨識引擎之一,可支援多達十種以上的作業系統,包括 Linux、Ubuntu、Redhat、CentOS、Android、iOS 或 Windows。其中最常用的兩個系統,有一些關鍵差異需要留意:

Linux & Ubuntu

Linux 的自訂性和靈活度高。你可以針對特定使用案例來完全自訂作業系統的元件,盡可能地減少體積。你可以輕鬆移除不需要的服務,提升軟體的執行速度並節省能源。Ubuntu 是最熱門的 Linux 發行版之一,從邊緣裝置到雲端伺服器都廣為使用。Ubuntu 每兩年會推出長期支援版本(Long-term support,縮寫:LTS )來幫助維持基礎技術的更新,並提供長達五年的支援。由於它是開放原始碼,因此有大量的程式碼程式庫可供使用,大幅加快專案的開發速度。

Android

Android 是由 Google 開發,其核心是建立在 Linux 的修改版本上。其最常用於智慧型手機和平板電腦。Android 是更適合開發人員的解決方案,且通常是 AIoT 裝置偏好的作業系統。Android 工具鏈、整合式開發環境(Android Studio)和 SDK 都已開發成熟,讓開發人員可以輕鬆開發。不但可以免費使用專業工具,並且不收取任何使用費。Android 應用程式通常是以 Java 程式語言開發,其和 C++ 程式語言相比更容易編碼和管理資源與記憶體。Android 應用程式也支援將 C++ 的元件整合到 Java 程式,將兩個語言的優點集於一個平台。

建構適合你的 AIoT 裝置

在建構執行人臉辨識的系統時,有許多熱門的 AIoT 配置可供工程師和開發人員採用。這可以協助你找到最適合的選擇。在評估選項時,首先一定要了解你的使用案例。然後再考慮對效能、外形規格,擴展性和預算上的需求。

一旦你決定好所需的建置和設計,我們建議在正式部署應用程式之前先進行概念驗證(POC),以發現需要的改進和調整。

如欲了解更多關於人臉辨識的原理、如何在各式應用場景中進行優化以及相關的技術細節說明,請參考人臉辨識的原理及邊緣運算應用

若要了解人臉辨識在 2021 年的應用情況,請參閱人臉辨識2021應用趨勢分析

對訊連科技FaceMe®方案有疑問或想進一步了解?