【工具】用于视频遮盖行人及车牌的工具,基于YOLO

发布于:2025-08-15 ⋅ 阅读:(17) ⋅ 点赞:(0)

最近录制数据时,为了保护隐私,我做了一个小工具:video-privacy-blur

在采集街景、测试视频时,经常会拍到人脸和车牌,这些信息在分享或存储前必须做匿名化处理。手动后期太耗时,于是我基于 Ultralytics YOLO + OpenCV 做了一个一键批处理的工具。

只需要一条命令,就能完成车牌 / 人脸检测并自动马赛克或模糊处理,支持 CPU / GPU / Apple MPS,既能处理视频文件,也能直接用摄像头输入。

https://github.com/MengWoods/video-privacy-blur


✨ 功能特点

  • 检测模型:基于 YOLOv8,高精度检测人脸和车牌
  • 设备支持:CPU / GPU / MPS 自动选择
  • 可选目标:可独立开关人脸或车牌处理
  • 匿名化方式:高斯模糊 / 像素化(马赛克)
  • 易用性:文件或摄像头都能直接处理
  • 零配置:车牌检测权重直接下载即可使用,无需手动标注
    请添加图片描述

📦 快速开始

python3 -m venv .venv && source .venv/bin/activate
pip install -r requirements.txt
pip install -e .

🚀 使用示例

# 同时模糊人脸和车牌(高斯模糊)
privacy-blur --plate-weights models/license_plate_detector.pt \
             --face-detector yolo \
             --face-yolo-weights models/yolov8n-face.pt \
             --input input.mp4 --output out.mp4 --device auto --show

# 仅处理车牌
privacy-blur --input dashcam.mp4 --no-blur-faces

# 仅处理人脸,像素化,使用 GPU
privacy-blur --input street.mp4 --no-blur-plates --method pixelate --device cuda

🔧 常用参数

  • --input 输入视频路径或摄像头序号
  • --output 输出视频路径(默认 out_blurred.mp4
  • --device 运行设备:auto / cpu / cuda / mps
  • --method 匿名方式:gaussian(模糊) / pixelate(马赛克)
  • --blur-strength 模糊强度(数值越低越模糊)
  • --pixelate-blocks 马赛克块数(数值越低越粗)

💡 开发初衷

我在进行自动驾驶和感知系统测试时,需要录制道路视频。但数据中经常包含大量无关人员和车辆的隐私信息,如果后期一个个手动遮挡,不仅耗时还容易遗漏。
另外这个车牌识别模型还是有一些不足的地方,未来有可能我重新训练个模型来提升准确率。


网站公告

今日签到

点亮在社区的每一天
去签到