挑战
制作多摄像头内容(采访、播客、小组讨论)需要编辑人员手动筛选数小时的视频素材,以识别活跃说话人并进行剪辑。这个过程存在以下问题:
- 极其耗时(手动审查需要实际时长的 10-15 倍)
- 容易在说话人归属上出现人为错误
- 阻碍内容快速交付的瓶颈
我们的解决方案
我们构建了一个 AI 驱动的视频分析平台,该平台具有深度学习管道,通过融合音频和视觉信号自动检测活跃说话人。
架构
- 后端:采用 MongoDB 和 Redis 的 Python/Flask REST API
- 机器学习管道:TalkNet 音视频融合模型,用于人脸检测的 YOLOv8 Nano,用于转录的 OpenAI Whisper
- GPU 优化:采用 CUDA 的 PyTorch,帧抽取实现 3 倍加速,批处理
- 基础设施:多实例部署,采用基于 MongoDB 的分布式锁
处理管道
- 媒体提取 - 视频下载和音视频分离
- 场景检测 - 通过 PySceneDetect 进行基于内容的边界检测
- 人脸检测 - 采用帧抽取的 YOLOv8 Nano 人脸检测
- 人脸追踪 - 基于 IoU 的跨帧链接
- TalkNet 推理 - 具有多时长评分(1秒、2秒、4秒、6秒窗口)的音视频融合
- 转录 - 基于 Whisper 的语音转文本,带词级时间戳
主要功能
- 具有跨模态注意力(唇部动作 + 音频)的活跃说话人检测
- 多时长置信度评分,实现可靠的说话人识别
- 带词级时间戳的自动转录
- 支持取消的后台任务调度
- 性能监控和 GPU 内存管理
成果
技术栈
常见问题
MicrocosmWorks 开发了一个多模态融合模型,该模型通过使用交叉注意力层,将从每个摄像头输入中提取的唇部运动视觉特征与音频信号关联起来。该模型为每个可见的面部输出每帧说话人概率分数,即使在多名参与者同时说话的情况下,也能实现 94% 的准确率。
MicrocosmWorks 优化了推理管道,使其在 NVIDIA T4 GPU 上运行,并采用 TensorRT 加速,实现了从帧捕获到说话人识别的端到端延迟低于 150ms。这一延迟完全在实时制作切换的可接受范围内,通常的切换延迟为 300-500ms。
MicrocosmWorks 在各种遮挡场景下训练了该模型,并实现了一种时间平滑算法,该算法可在短暂遮挡期间利用纯音频置信度分数保持说话者跟踪。当视觉置信度低于阈值时,系统会回退到音频源定位,利用来自多麦克风阵列的波束成形数据。
MicrocosmWorks 构建了一个配套控制模块,将演讲者检测输出转换为标准指示灯/控制信号,通过 ATEM SDK 与 Blackmagic ATEM 兼容,并通过 NewTek NDI 支持 TriCaster 系统。制作总监可以将系统设置为自动切换模式或建议模式,在此模式下,系统会建议切换,但不会实际执行。
MicrocosmWorks 以每小时 $30-$50 的费率构建定制的 AI 视频分析系统,其中一个多摄像机活跃说话人检测系统(包括模型训练、TensorRT 优化和切换器集成)通常需要 500-750 个开发小时。模型训练阶段需要 GPU 计算资源,这通常会使项目成本增加 $2,000-$5,000。
