Upgrade to Pro — share decks privately, control downloads, hide ads and more …

DPUを用いたマルチタスクDNN表情認識システムのFPGA実装

Takuto ANDO
January 11, 2025

 DPUを用いたマルチタスクDNN表情認識システムのFPGA実装

Takuto ANDO

January 11, 2025
Tweet

More Decks by Takuto ANDO

Other Decks in Research

Transcript

  1. 3/23 表情認識とは ロボットが感情を理解するために必要 Ekmanの基本感情により6種類に分類される[1] 怒り 嫌悪 恐怖 喜び 悲しみ 驚き

    [1] P. Ekman and W. V. Friesen, ‘‘Constants across cultures in the face and emotion,’’ J. Pers. Soc. Psychol., vol. 17, no. 2, pp. 124–129, 1971. Ekmanの基本感情
  2. 5/23 先行研究では Vinh らは SoC FPGA* を用いた表情認識システムを実装[2] 顔検出 :Haar Cascade

    検出器 (non-DNN) 表情認識 :DNN推論 FPGA プロセッサ “Happy” 顔画像 カメラ画像 (入力画像) 推論結果 * CPU とFPGA が同一チップ上で構成されるデバイス 顔検出 non-DNN 表情認識 DNN 1 2 [2] Pham The Vinh and Truong Quang Vinh. Facial expression recognition system on soc fpga. In 2019 International Symposium on Electrical and Electronics Engineering (ISEE), pp. 1–4. IEEE, 2019. CPU FPGA
  3. 6/23 本研究の立ち位置 本研究 CPU DPU 全体の制御 顔検出 (DNN) 表情認識 (DNN)

    FPGA ACC : accelerator DPU:Deep learning Processing Unit 先行研究 CPU FPGA ACC 顔検出(non-DNN) 全体の制御 表情認識(DNN) 精度が低い Cascade 検出器
  4. 8/23 2つのDNNモデル 2. 表情認識 CNN model [4] ・顔領域の座標 (x, y,

    w, h)を出力 ・Xilinxが提供している軽量なモデル HAPPY ・7種類の表情認識クラスを出力 ・FER-2013データセットを用いて学習 [3] Vitis AI Library User Guide UG1354 (v3.5) June 29, 2023 [4] https://github.com/kckeiks/Facial-Expression-Recognition-2018/tree/master (最終閲覧日 2023,9/1). 1. 顔検出 Densebox [3]
  5. 9/23 FER-2013 [5] ・怒り,嫌悪,恐怖,喜び,悲しみ,驚き,中立 が付与 ・顔画像(48x48 pixel) ・Train:約 27,000 枚

    Test:約 3,500 枚 [5] Carrier, P.L.; Courville, A.; Goodfellow, I.J.; Mirza, M.; Bengio, Y. FER-2013 Face Database; Universit de Montral: Montreal, QC, Canada, (2013). 怒り 嫌悪 恐怖 喜び 悲しみ 驚き 中立 7つの表情ラベル (Ekmanの基本感情 + “中立”)
  6. 12/23 マルチスレッド戦略 - DPUは処理命令を与えられるまでアイドル時間状態 - アイドル状態が長いため効果的にDPUを利用できていない シングルスレッドにおける問題点 CPU DPU Input

    frame FD inference FER inference ・・・ ・・・ next frame processing … wait wait wait Processing FD step Processing FER step FD : Face Detection FER : Facial Expression Recognition アイドル時間が長い
  7. 16/23 それぞれの推論を評価 [8] X. Zhu and D. Ramanan. Face detection,

    pose estimation, and landmark localization in the wild. 2012 IEEE Conference on Computer Vision and Pattern Recognition, pp. 2879–2886, 2012.
  8. 17/23 顔検出の実験結果 認識精度 (AP IoU = 0.5) 1枚当たりの処理時間 [ ms

    ] DenseBox (本研究)を Haar Cascade検出器 (先行研究)と比較 先行研究と精度の比較 0.531 0.917 0 0.2 0.4 0.6 0.8 1 Previous work* This work Average Precision (IoU=0.5) This work Previous work Average processing time [ms] 42.1 798 0 200 400 600 800 1000 約9.8 倍高速化 先行研究との平均処理時間の比較 0.386 ↑ *ARM Cortex-A53(KV260プロセッサ)
  9. 18/23 表情認識の実験結果 認識精度 (AP IoU = 0.5) 1枚当たりの処理時間 [ ms

    ] DenseBox (本研究)を Haar Cascade検出器 (先行研究)と比較 先行研究と精度の比較 66 67.4 0 20 40 60 80 100 Previous Work This Work Accuracy (%) This work Previous work 平均処理時間 [ms] 0 2 4 6 8 10 先行研究との平均処理時間の比較 *ARM Cortex-A53(KV260プロセッサ)
  10. 20/23 システム全体の評価 Previous work : 11.67 FPS Our work (single-threading):

    14.69 FPS Our work (multi-threading) : 25.00 FPS 消費電力あたりのスループットの比較 スループットと消費電力を評価 スループット リアルタイム処理を実現 3.89 6.12 9.26 0 2 4 6 8 10 Previous work Our work (Single-threading) Our work (Multi-threading) Throught per Watt [FPS/W]
  11. 21/23 DPUの利用効率の検証 システムランタイムに占めるDPU処理時間の割合を計算 DPU使用率が約3.43倍向上 スレッド別のDPU使用率の比較 0 20 40 60 80

    100 Single-threading Multi-threading DPU utilization [%] スレッド別DPU使用率の比較 表情認識 顔検出 DPUのアイドル時間の割合