OBS Face Tracker 面部追踪插件完全指南
2026-02-07 05:07:05作者:庞队千Virginia
项目概述
OBS Face Tracker 是一款专为 OBS Studio 设计的面部追踪插件,通过先进的 dlib 机器学习算法实现实时面部检测与智能追踪功能。该插件能够自动捕捉视频中的人脸动态,实现精准的缩放和跟踪效果,为直播和视频制作带来革命性体验。
功能特性详解
三种使用模式
面部追踪源模式
- 将面部追踪功能实现为独立的视频源
- 添加方式:在源列表中点击添加按钮,选择"Face Tracker"
- 在属性面板底部设置"Source"属性指定输入源
面部追踪滤镜模式
- 将面部追踪功能实现为效果滤镜
- 可应用于任何视频源
- 添加方式:在源滤镜中添加"Face Tracker"
面部追踪 PTZ 模式
- 实验性 PTZ 摄像头控制功能
- 作为音视频滤镜使用
- 添加方式:在音视频滤镜中添加"Face Tracker PTZ"
环境搭建与编译
获取项目代码
git clone https://gitcode.com/gh_mirrors/ob/obs-face-tracker.git
cd obs-face-tracker
git submodule update --init
构建项目
创建构建目录并进行编译配置:
mkdir build && cd build
cmake -DLIBOBS_INCLUDE_DIR=$d0/obs-studio/libobs -DLIBOBS_LIB=$d0/obs-studio/libobs -DOBS_FRONTEND_LIB="$d0/obs-studio/build/UI/obs-frontend-api/libobs-frontend-api.dylib" -DCMAKE_BUILD_TYPE=RelWithDebInfo
make
模型文件准备
HOG 模型文件
构建完成后,生成 HOG 模型文件:
mkdir data/dlib_hog_model/
./build/face-detector-dlib-hog-datagen > ./data/dlib_hog_model/frontal_face_detector.dat
CNN 模型文件
下载并准备 CNN 模型:
mkdir data/dlib_cnn_model/
git clone --depth 1 https://github.com/davisking/dlib-models
bunzip2 < dlib-models/mmod_human_face_detector.dat.bz2 > data/dlib_cnn_model/mmod_human_face_detector.dat
面部特征点模型
5 点面部特征点模型:
mkdir data/dlib_face_landmark_model/
git clone --depth 1 https://github.com/davisking/dlib-models
bunzip2 < dlib-models/shape_predictor_5_face_landmarks.dat.bz2 > data/dlib_face_landmark_model/shape_predictor_5_face_landmarks.dat
核心配置参数解析
面部检测选项
左右上下扩展参数
- 用于调整识别到的面部区域大小
- 基于面部宽度或高度的倍数进行缩放
- 参数值将保存到预设中
图像缩放比例
- 在发送到面部检测算法前对帧进行缩放
- 默认值为 2,较大值可降低 CPU 使用率
- 面部检测引擎要求面部尺寸至少为 80x80
检测器裁剪区域
- 在面部检测前对图像进行裁剪
- 单位为缩放前的像素值
- 不影响追踪功能
追踪目标位置
缩放参数
- 设置目标缩放倍数
- 1.0 表示面部尺寸与屏幕尺寸相同
- 较小值导致面部显示较小,即缩放程度较低
X、Y 坐标
- 设置面部中心位置
- 0 表示中心位置,+/-0.5 表示面部中心位于边缘
追踪响应控制
PID 控制参数
- Kp:比例常数,单位 s⁻¹,较大值响应更快
- Ki:积分常数,单位 s⁻¹,较大值更能追踪缓慢移动
- Td:微分常数,单位 s,0 表示无微分项
死区非线性带
- 为误差信号创建死区和非线性带
- 单位为源宽度和高度平均值的百分比
- 误差信号在死区内时强制归零,避免追踪微小移动
实用应用场景
直播场景应用
在单人直播中,OBS Face Tracker 能够自动锁定主播面部,确保人物始终处于画面最佳位置。这种智能追踪功能特别适合教育直播、游戏直播等场景,大幅提升观众观看体验。
视频制作应用
对于在线课程录制、培训视频制作等场景,插件能够自动调整镜头焦点,保证主讲人面部清晰可见,让视频内容更加专业和吸引人。
调试与优化
调试功能
显示面部检测结果
- 启用后显示面部检测和追踪结果
- 蓝色框显示面部检测结果
- 绿色框显示追踪结果
停止面部追踪
- 启用后显示完整图像
- 黄色框显示裁剪区域
技术注意事项
性能优化建议
- 对于低分辨率图像,建议将缩放比例设为 1
- 如果分辨率过小,可创建中间场景应用滤镜
- 合理设置死区参数避免微小移动干扰
已知限制
- 持续面部检测时内存使用量逐渐增加
- 消耗较多 CPU 资源
- 面部检测结果波动可能导致画面抖动
通过本指南,您可以全面掌握 OBS Face Tracker 的使用方法和配置技巧,充分发挥面部追踪功能在视频创作中的优势。
登录后查看全文
热门项目推荐
相关项目推荐
atomcodeClaude Code 的开源替代方案。连接任意大模型,编辑代码,运行命令,自动验证 — 全自动执行。用 Rust 构建,极致性能。 | An open-source alternative to Claude Code. Connect any LLM, edit code, run commands, and verify changes — autonomously. Built in Rust for speed. Get StartedRust0215
cann-learning-hubCANN 学习中心仓,支持在线互动运行、边学边练,提供教程、示例与优化方案,一站式助力昇腾开发者快速上手。Jupyter Notebook0138
uni-appA cross-platform framework using Vue.jsJavaScript08
GLM-5.2智谱开源 GLM-5.2,这是针对长文本任务的最新旗舰模型。相较于前代产品 GLM-5.1,它在长文本任务处理能力上实现了显著飞跃,并且首次在稳定的 100 万 token 上下文中提供这一能力。Jinja00
SwanLab⚡️SwanLab - an open-source, modern-design AI training tracking and visualization tool. Supports Cloud / Self-hosted use. Integrated with PyTorch / Transformers / LLaMA Factory / veRL/ Swift / Ultralytics / MMEngine / Keras etc.Python00
tiny-universe《大模型白盒子构建指南》:一个全手搓的Tiny-UniverseJupyter Notebook03
项目优选
收起
deepin linux kernel
C
32
16
openEuler内核是openEuler操作系统的核心,既是系统性能与稳定性的基石,也是连接处理器、设备与服务的桥梁。
C
471
465
暂无描述
Dockerfile
780
5.08 K
本项目是CANN提供的transformer类大模型算子库,实现网络在NPU上加速计算。
C++
878
2.03 K
Ascend Extension for PyTorch
Python
758
968
本项目是CANN提供的神经网络类计算算子库,实现网络在NPU上加速计算。
C++
698
1.4 K
昇腾LLM分布式训练框架
Python
185
231
本项目是CANN提供的数学类基础计算算子库,实现网络在NPU上加速计算。
C++
1.1 K
1.14 K
本仓库是 Flutter SDK 与 Flutter Engine 的 OpenHarmony 适配版本,由 CPF-Flutter 团队维护。开发者可使用熟悉的 Flutter 技术栈开发 OpenHarmony 应用,3.35.7 及以后的适配版本可基于本仓库源码构建支持 OpenHarmony 的 Flutter Engine。
Dart
1.04 K
271
JiuwenSwarm 是一款基于openJiuwen开发的智能AI Agent,它能够将大语言模型的强大能力,通过你日常使用的各类通讯应用,直接延伸至你的指尖。
Python
2.25 K
677