How to Blur Faces in a Video from Command Line
Privacy is always incredibly important, especially with visual media where you may not have the permission of individuals in the video. If you’re filming something in public, it’s likely you’ll catch someone’s face who simply doesn’t want or need to be identified. This recently got me to thinking: what’s the easiest way to blur faces in a video via command line?
The best open source utility I found for blurring faces in a video was deface
. Let’s have a look at how you can use deface
to blur faces in videos!
Start by downloading Python-based via pip
:
python3 -m pip install deface
With deface
installed, simply provide the video name and get the output file with blurred faces:
sudo deface ./sample-4k-faces-video.mp4 Input: ./sample-4k-faces-video.mp4 Output: ./sample-4k-faces-video_anonymized.mp4 100%|█████████████████████████████
The resulting video does an impressive job of blurring out faces of persons walking by in the original recording:

View the resulting video of persons walking down the streets of New York:
The default threshold for face recognition works very well, even on moving subjects. You can experiment with thresholds with the thresh
argument, and even draw the thresholds out while debugging:

I downloaded a handful of YouTube videos using my favorite YouTube downloading utility youtube-dl
and I was amazed at how well deface
did on a variety of visual environments. Faces were identified at a reliable level even at default threshold!
Vibration API
Many of the new APIs provided to us by browser vendors are more targeted toward the mobile user than the desktop user. One of those simple APIs the Vibration API. The Vibration API allows developers to direct the device, using JavaScript, to vibrate in…
Being a Dev Dad
I get asked loads of questions every day but I’m always surprised that they’re rarely questions about code or even tech — many of the questions I get are more about non-dev stuff like what my office is like, what software I use, and oftentimes…