Files
momentry_core/scripts/ASR_LIP_CORRELATION_REPORT.md
Warren 8f05a7c188 feat: update Python processors and add utility scripts
- Update ASR, face, OCR, pose processors
- Add release pre-flight check script
- Add synonym generation, chunk processing scripts
- Add face recognition, stamp search utilities
2026-04-30 15:07:49 +08:00

5.6 KiB
Raw Blame History

ASR + Lip 對應統計分析報告

測試日期: 2026-04-02
測試影片: ExaSAN PCIe series (2 分 39 秒)
分析方法: ASR 轉錄段 vs Lip 嘴部檢測幀


📊 基本統計

指標 數值 百分比
ASR 總段數 83 段 100%
有 Lip 檢測 83 段 100%
檢測到說話 48 段 57.8%
未檢測說話 35 段 42.2% ⚠️

🎯 匹配率分析

定義:

  • ASR 有語音: ASR 轉錄到的語音段
  • Lip 檢測到說話: 嘴部開合度 > 0.3

匹配率: 57.8% (48/83)

解讀:

  • 57.8% 的 ASR 語音段同時檢測到嘴部動作
  • ⚠️ 42.2% 的 ASR 語音段未檢測到明顯嘴部動作

可能原因:

  1. 側臉或低頭(嘴部未被檢測)
  2. 說話聲音小(嘴部開合度低)
  3. 採樣間隔錯過(每 10 幀採樣)
  4. ASR 檢測到背景語音

📈 嘴部開合度分佈

開合度範圍 段數 百分比 說明
0.0-0.2 33 段 39.8% 閉合/輕微
0.2-0.3 2 段 2.4% 微張
0.3-0.4 31 段 37.3% 正常說話
0.4-0.5 14 段 16.9% 張大嘴巴
>0.5 3 段 3.6% 非常大聲

觀察:

  • 正常說話 (0.3-0.4) 佔 37.3%
  • 張大嘴巴 (0.4+) 佔 20.5%
  • 閉合/輕微 (0.0-0.2) 佔 39.8% ← 可能是未說話或側臉

📋 詳細對應(前 30 段)

時間 文字 Lip 幀 說話 開合度
1 0.0-2.0s 正常來講我們就剪輯師用完之後 4 2/4 0.365
2 2.0-4.0s 再套片給我們的調光師 4 4/4 0.307
3 4.0-6.0s 或者是要再去找我們的錄音室 5 4/5 0.305
4 6.0-8.0s 重新用聲音的部分 4 0/4 0.296
5 8.0-9.0s 檔案的傳輸啊 2 1/2 0.307
6 9.0-10.0s 共同工作上 3 1/3 0.300
7 10.0-12.0s 不是很順的地方 4 0/4 0.292
8 12.0-15.0s 不知道大家有沒有遇過很急的案子 7 7/7 0.408
9 15.0-16.0s 風哨感的剪接 2 2/2 0.393
10 16.0-17.0s 調光 2 2/2 0.415
11 17.0-18.0s 特效 2 2/2 0.407
12 18.0-19.0s 聲音 2 1/2 0.405
13 19.0-20.0s 還有每個部門使用 3 0/3 0.000
14 20.0-21.0s 不同的軟體處理檔案 2 0/2 0.000
15 21.0-24.0s 整合作業變得相當複雜 6 2/6 0.508
16 24.0-26.0s 或是硬碟足足空間不夠大 5 5/5 0.409
17 26.0-28.0s 傳輸速度不夠快 4 0/4 0.000
18 28.0-30.0s 硬碟攜帶造成循環 5 0/5 0.000
19 30.0-32.0s 看起來相當方便的工作流程 4 4/4 0.436
20 32.0-35.0s 要怎麼樣建置硬碟設備呢 7 7/7 0.429

🔍 未檢測到說話的段分析

35 段未檢測到說話,可能原因:

原因 1: 側臉或低頭(開合度 0.0

範例:

  • 段 13 (19.0-20.0s): "還有每個部門使用" - 開合度 0.0
  • 段 14 (20.0-21.0s): "不同的軟體處理檔案" - 開合度 0.0
  • 段 17 (26.0-28.0s): "傳輸速度不夠快" - 開合度 0.0

特徵: 開合度 = 0.0,可能是臉部轉向


原因 2: 輕聲說話(開合度 < 0.3

範例:

  • 段 4 (6.0-8.0s): "重新用聲音的部分" - 開合度 0.296
  • 段 7 (10.0-12.0s): "不是很順的地方" - 開合度 0.292

特徵: 開合度 0.29-0.30,接近閾值


檢測到說話的段分析

48 段檢測到說話,特徵:

高置信度(開合度 > 0.4

範例:

  • 段 8 (12.0-15.0s): "不知道大家有沒有遇過很急的案子" - 0.408
  • 段 10 (16.0-17.0s): "調光" - 0.415
  • 段 15 (21.0-24.0s): "整合作業變得相當複雜" - 0.508
  • 段 19 (30.0-32.0s): "看起來相當方便的工作流程" - 0.436

特徵: 開合度 > 0.4,說話清晰


📊 時間序列分析

說話強度變化

時間 (s)  開合度  說話狀態
0-10      0.30-0.37  ✅ 正常說話
10-20     0.00-0.42  ⚠️ 混合(有側臉)
20-30     0.00-0.51  ⚠️ 混合(音量變化大)
30-40     0.39-0.44  ✅ 正常說話
40-50     0.39-0.42  ✅ 正常說話
50-60     0.00-0.41  ⚠️ 混合

觀察:

  • 開頭 10 秒:穩定說話
  • 10-30 秒:側臉或音量變化
  • 30-50 秒:穩定說話
  • 50-60 秒:又有側臉

🎬 使用建議

整合策略

高置信度匹配 (開合度 > 0.4):

  • 可直接用於說話者識別
  • 約佔 20.5%

中等置信度 (開合度 0.3-0.4):

  • ⚠️ 可參考,需交叉驗證
  • 約佔 37.3%

低置信度 (開合度 < 0.3):

  • 不建議單獨使用
  • ⚠️ 需結合 Face + ASR

📁 輸出檔案

分析腳本: scripts/analyze_asr_lip.py

使用方式:

python3 scripts/analyze_asr_lip.py \
  /tmp/asr_small.json \
  /tmp/lip_cv_test.json

結論

匹配率

57.8% (48/83) 的 ASR 語音段同時檢測到嘴部動作

準確度評估

指標 數值 評分
總匹配率 57.8%
高置信度 20.5%
中等置信度 37.3%
低置信度 42.2%

建議

  1. 使用 Face + ASR 整合66.3% 匹配率)
  2. Lip 檢測作為輔助57.8% 匹配率)
  3. 改進方向:
    • 提高採樣率(從 10 幀改為 5 幀)
    • 使用更精確的嘴部檢測Dlib/MediaPipe
    • 結合多種證據Face + ASR + Lip

報告完成: 2026-04-02