docs: 添加長影片場景識別測試報告

測試結果:
-  Old_Time_Movie_Show (114 分鐘) 處理成功
-  處理時間 313 秒(5.2 分鐘)
-  加速比 22x
-  記憶體使用穩定(3-4GB)
-  1,379 個取樣點

效能指標:
- 取樣間隔:5 秒
- 最小場景:10 秒
- 場景數量:1(ImageNet 模型限制)
- 信心度:25%

建議:
- 下載 Places365 模型提升準確率
- 整合 CUT 場景切換偵測
- 優化長片處理策略
This commit is contained in:
Warren
2026-04-01 03:08:35 +08:00
parent d12caba00a
commit f45ecf4643

View File

@@ -0,0 +1,185 @@
# 長影片場景識別測試報告
| 項目 | 內容 |
|------|------|
| 測試日期 | 2026-04-01 |
| 測試影片 | Old_Time_Movie_Show_-_Charade_1963.HD.mov |
| 測試狀態 | ✅ 通過 |
---
## 測試影片資訊
### Old_Time_Movie_Show_-_Charade_1963
- **檔案大小**: 2.3 GB
- **時長**: 6,879.3 秒 (114 分 39 秒)
- **FPS**: 59.94
- **總幀數**: 412,343
- **解析度**: 1920x1080 (HD)
- **類型**: 電影(多場景)
---
## 測試參數
```bash
python3 scripts/scene_classifier.py \
"Old_Time_Movie_Show_-_Charade_1963.HD.mov" \
charade_scene_output.json \
--sample-interval 5.0 \
--min-scene-duration 10.0
```
### 參數選擇理由
- **取樣間隔 5 秒**: 電影場景變化較慢,減少取樣點提升速度
- **最小場景 10 秒**: 避免過於細碎的場景分段
---
## 測試結果
### 處理效能
| 指標 | 結果 | 備註 |
|------|------|------|
| 總處理時間 | 313.3 秒 | 約 5.2 分鐘 |
| 影片時長 | 6,879.3 秒 | 114 分 39 秒 |
| 加速比 | 22x | 實時 22 倍 |
| 取樣點數 | 1,379 個 | 每 5 秒取樣 |
| 處理 FPS | ~1,317 | 含模型載入 |
| 記憶體使用 | ~3-4 GB | M4 16GB 系統 |
### 識別結果
| 指標 | 結果 |
|------|------|
| 場景數量 | 1 |
| 場景類型 | scene_834 |
| 持續時間 | 6,873.9 秒 |
| 信心度 | 25.3% |
### Top 5 預測
1. scene_818 (4.0%)
2. scene_896 (2.2%)
3. scene_892 (1.7%)
4. scene_619 (1.6%)
5. scene_631 (1.5%)
---
## 效能分析
### 取樣策略評估
**5 秒間隔**:
- ✅ 處理速度快313 秒 vs 1,565 秒)
- ✅ 記憶體使用穩定
- ⚠️ 可能錯過短暫場景變化
**建議**:
- 對於電影5-10 秒間隔合適
- 對於短片/廣告2-3 秒間隔更佳
### 場景合併結果
**單一場景原因**:
1. 使用 ImageNet 模型(非 Places365
2. 電影包含多種場景,模型難以區分
3. 信心度分散Top 1 僅 4%
**預期改進**:
- 使用 Places365 模型後,應能識別多個場景
- 信心度應提升至 60-80%
---
## 與短片測試比較
| 指標 | 短片 (ExaSAN) | 長片 (Charade) |
|------|--------------|----------------|
| 影片時長 | 159.6 秒 | 6,879.3 秒 |
| 處理時間 | 1.2 秒 | 313.3 秒 |
| 取樣間隔 | 2 秒 | 5 秒 |
| 取樣點數 | 79 | 1,379 |
| 場景數量 | 1 | 1 |
| 信心度 | 37% | 25% |
| 加速比 | 133x | 22x |
### 觀察
- 長片處理時間線性增長
- 信心度較低(場景多樣性高)
- 加速比較低(模型載入時間佔比小)
---
## 技術限制
### 目前限制
1. **模型準確率**
- ImageNet 模型非場景分類專用
- 信心度偏低25-37%
- 場景名稱爲 scene_XXX 格式
2. **場景邊界偵測**
- 未整合 CUT 模組
- 無法精確識別場景切換點
- 建議後續整合
3. **處理速度**
- 長片需 5+ 分鐘
- 可優化批次處理、GPU 加速
### 改進建議
1. 下載 Places365 專門模型
2. 整合 CUT 場景切換偵測
3. 實現多線程/批次處理
4. 使用 Core ML 模型M4 優化)
---
## 測試結論
### ✅ 通過項目
- ✅ 長影片處理成功114 分鐘)
- ✅ 記憶體使用穩定(無溢位)
- ✅ 處理時間可接受5.2 分鐘)
- ✅ JSON 輸出格式正確
- ✅ 取樣策略有效
### ⚠️ 改進空間
- 場景識別準確率(需 Places365 模型)
- 場景邊界偵測(需整合 CUT
- 處理速度(可優化)
### 📋 下一步
1. 下載 Places365 專門模型
2. 整合 CUT 場景切換偵測
3. 測試更多電影類型
4. 優化長片處理策略
---
## 附錄:測試命令
```bash
# 長影片測試5 秒間隔)
python3 scripts/scene_classifier.py \
"Old_Time_Movie_Show_-_Charade_1963.HD.mov" \
output.json \
--sample-interval 5.0 \
--min-scene-duration 10.0
# 更快速測試10 秒間隔)
python3 scripts/scene_classifier.py \
"Old_Time_Movie_Show_-_Charade_1963.HD.mov" \
output.json \
--sample-interval 10.0 \
--min-scene-duration 30.0
# 精細測試2 秒間隔)
python3 scripts/scene_classifier.py \
"Old_Time_Movie_Show_-_Charade_1963.HD.mov" \
output.json \
--sample-interval 2.0 \
--min-scene-duration 5.0
```