deface 是一款专注于“人脸匿名化”的开源命令行工具,可自动识别视频或照片中的所有人脸,并在对应区域叠加匿名化效果。工具通过深度神经网络检测每一帧画面中的人脸位置,再对检测区域应用模糊、马赛克或黑框等滤镜,生成脱敏后的视频或图片文件。
工具支持常见桌面操作系统(Linux、Windows、macOS),依赖 Python 环境运行,更适合习惯命令行的开发者、内容创作者、安全与合规团队使用。默认配置下会移除原始音轨,也可以通过参数控制是否保留音频内容。

针对不同隐私与审美需求,deface 提供多种人脸处理方式:
人脸检测的阈值可以通过命令行参数灵活调整:
通过在真实业务素材上多次试验,可以为自己的数据类型找到合适的阈值配置。
在面对 1080p、4K 等高分辨率素材时,如果直接在原始分辨率上进行检测,推理速度可能明显下降。
deface 提供输入下采样选项:
--scale WxH 指定用于检测的下采样分辨率只需确保缩放比例与原视频的宽高比一致,即可避免因拉伸导致识别精度下降。
为了进一步提升处理速度,deface 支持结合 ONNX Runtime 等后端进行硬件加速:
在已激活的虚拟环境中,运行:
python3 -m pip install deface
如果希望直接使用 GitHub 最新(未正式发布)的代码版本,可以执行:
python3 -m pip install 'git+https://github.com/ORB-HD/deface'
假设原始视频路径为 myvideos/vid1.mp4,执行:
deface myvideos/vid1.mp4
工具会在同目录下生成一个新文件:
myvideos/vid1_anonymized.mp4
默认会对检测到的人脸进行模糊处理,并移除音频轨道。
如果设备连接了摄像头,可以直接对实时画面进行人脸匿名化预览:
deface cam
等价于对默认摄像头设备执行预览模式,可在隐私敏感场景中用作“实时打码监看”。当存在多路摄像头时,可以尝试不同的设备索引(如 <video1>、<video2> 等)。
下方为部分常见参数,方便根据需求调整:
deface input.mp4 -o output_anonymized.mp4
deface examples/city.jpg --boxes --replacewith solid -o examples/city_anonymized_boxes.jpg
deface examples/city.jpg --replacewith mosaic --mosaicsize 20 -o examples/city_anonymized_mosaic.jpg
deface input.mp4 --thresh 0.3 -o input_tuned.mp4
deface input.mp4 --keep-audio -o input_with_audio_anonymized.mp4
更多参数与组合方式可以通过帮助命令查看:
deface -h
借助命令行与脚本能力,可以轻松将 deface 集成到现有媒体处理流水线或自动化工具中。
欢迎开发者、研究者与内容团队在遵守相关法律法规和平台政策的前提下,将此工具用于隐私保护与数据合规场景。
deface 完全开源,可自由查阅源码与贡献改进:
GitHub 项目地址:https://github.com/ORB-HD/deface