iT邦幫忙

2025 iThome 鐵人賽

DAY 9
0
AI & Data

從RAG到EmoRAG:讓AI真正聽懂你的心聲系列 第 9

第9天:OpenCV與DeepFace圖像情緒辨識(下)

  • 分享至 

  • xImage
  •  


圖片來源:https://zhuanlan.zhihu.com/p/161828142

前言

昨天我們看了Deepface的模型特色--對齊機制 和網路結構,我們知道相比其他人臉辨識API,Deepface的特色就是對齊機制,今天我們就來聊聊建立對齊機制的工具們。
今天的實作是針對網路結構的優化過程,詳情可見colab檔

哪些公開 3D 臉部模型可用於正面化

現今有多個公開的 3D 臉部模型可用於正面化處理,這些模型各具特色並適用於不同應用場景,為面部重建和對齊提供了豐富的選擇 。

主要 3D 臉部模型

FLAME 模型

FLAME(Faces Learned with an Articulated Model and Expressions)是目前最受歡迎的 3D 臉部模型之一,該模型基於超過 33,000 個精確對齊的 3D 掃描數據訓練,包含來自 3,800 個受試者的頭部掃描數據 。

FLAME 的核心特點包括 :

  • 線性身份形狀空間
  • 關節化的頸部、下顎和眼球
  • 姿態相關的校正混合形狀
  • 全域表情混合形狀

Basel Face Model (BFM)

Basel Face Model 是經典的 3D 可變形面部模型,包括 BFM09 和更新的版本 。該模型基於 200 名受試者(100 名女性和 100 名男性)的 3D 面部掃描構建 。BFM 廣泛應用於面部重建研究,並提供了與 FLAME 模型的轉換工具 。

3D Morphable Model (3DMM) 變體

現代 3DMM 系統提供了多種專門化的模型 :

  • 形狀模型:控制面部幾何結構
  • 紋理模型:控制面部外觀和顏色
  • 反射模型:處理光照和材質屬性

專門化模型

HIFI3D+++

HIFI3D+++ 是一個高品質的 3DMM 基礎模型,通過對齊和重新拓撲化多個 3D 面部資料集構建 。該模型在 REALY 基準測試中展現出優異性能,提供了更精確的面部重建能力 。

MICA 統一模型

MICA(Metrical Face Reconstruction)框架提供了統一現有 3D 面部資料集的方法,將不同資料集轉換為通用 FLAME 拓撲結構 。這種統一方法使得研究者能夠利用更大規模的訓練數據。

可用資料集

FLAME 相關資料集

FLAME 生態系統提供了豐富的資料集選擇 :

  • BP4D+:127 個受試者,每人一個中性表情網格
  • CoMA:12 個受試者,每人 12 個極端動態表情
  • D3DFACS:10 個受試者,總計 519 個動態表情
  • FaceWarehouse:150 個受試者,每人一個中性表情網格
  • LYHM:1,216 個受試者,每人一個中性表情網格

多模態資料集

現代資料集還包括多模態信息 :

  • VOCASET:12 個受試者,每人 40 個語音序列與同步音頻
  • MEAD-3D:情感說話面部資料集的 FLAME 網格和模型參數
  • SingingHead:27 小時同步歌唱視頻、音頻、3D 面部運動和背景音樂

技術實現工具

開源工具鏈

多個開源項目支持這些模型的使用 :

  • FLAME PyTorch:PyTorch 版本的 FLAME 層實現
  • DECA:從單一圖像重建帶有動畫細節的 3D 面部
  • EMOCA:從單一圖像重建表情豐富的 3D 面部
  • MICA:從圖像重建精確度量的 3D 面部

應用框架

現代應用框架提供了完整的正面化處理管道 :

  • photometric_optimization:使用可微分渲染將 FLAME 擬合到圖像
  • TF_FLAME:將 FLAME 擬合到 2D/3D 特徵點
  • flame-fitting:將 FLAME 擬合到掃描數據

模型選擇建議

研究應用

對於學術研究,FLAME 模型提供最全面的功能和最大的社群支持,特別適合需要表情控制和頭部姿態調整的應用 。Basel Face Model 則更適合基礎的面部重建任務 。

商業應用

商業應用可考慮使用經過優化的模型變體,如針對特定人群或應用場景優化的專門模型 。

實時應用

對於實時處理需求,輕量級的 FLAME 變體或經過優化的 3DMM 實現更為適合 。

所有這些模型都可以通過適當的許可協議免費用於研究目的,為面部正面化和重建提供了強大的技術基礎。

資料來源1:https://flame.is.tue.mpg.de
資料來源2:https://dl.acm.org/doi/fullHtml/10.1145/3395208
資料來源3:https://github.com/TimoBolkart/FLAME-Universe
資料來源4:https://openaccess.thecvf.com/content/CVPR2023/papers/Han_Learning_a_3D_Morphable_Face_Reflectance_Model_From_Low-Cost_Data_CVPR_2023_paper.pdf
資料來源5:https://github.com/TimoBolkart/BFM_to_FLAME
資料來源6:https://pmc.ncbi.nlm.nih.gov/articles/PMC9687570/
資料來源7:https://www.ecva.net/papers/eccv_2022/papers_ECCV/papers/136680072.pdf
資料來源8:https://arxiv.org/html/2308.07551
(本文章由perplexity和筆者協作而成)

實作

資料集

由筆者從Kaggle FANE: Facial Expressions & Emotion Dataset 抓取圖片,再到roboflow做標記後生成。總比數有1149筆,開心的有553筆,憤怒的有596筆。

信心度:

正確預測平均信心度: 0.8951
正確預測置信度標準差: 0.1037
錯誤預測平均置信度: 0.7109
錯誤預測置信度標準差: 0.1402

可測試圖片情緒:(目前結果只有憤怒、開心兩種)

實作放在colab


上一篇
第8天:OpenCV與DeepFace圖像情緒辨識(上)
系列文
從RAG到EmoRAG:讓AI真正聽懂你的心聲9
圖片
  熱門推薦
圖片
{{ item.channelVendor }} | {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言