Research in Foiling Facial Recognition

By: Steven Mazliach and Matthew Gray

Introduction and Goals

The goal of this project is to explore the use of various forms of facial appearance alteration such as through the use of makeup, accessories, or fabrics, in order to avoid facial detection by common facial recognition algorithms.

We hope to identify an easily-applied and semi-inconspicuous facial appearance alteration that will be successfull at avoiding detection by common facial recognition algorithms.

For this project, we will be primarily testing our designs and alterations against the openCV facial recognition algorithm, building upon the work of Adam Harvey's CVDazzle project and others, with a goal of finding a practical and adaptable solution for those who wish to avoid facial detection.

How does openCV detect faces?

OpenCV detects faces by moving a square window of face size across an image, evaluating for a face at each location. The detection method makes use of the Viola-Jones Face Detection Algoritm. This algorithm, detailed in the papers "Rapid object detection using a boosted cascade of simple features" (Voila, Jones 2001) and "Robust Real-time Object Detection" (Voila, Jones 2001), works by running through series of stages in which the square target on the image is compared against smaller rectangles of light and dark regions to identify features on the face. The image is converted to grayscale and then the pixels in the rectangles have their sums added together in an integral sum and compared to the integral sum of a neighboring region to determine if it meets the criteria for the feature. These features are called haar-like features and the processes of running through multiple iterations of tests of haar-like features are called haar cascades. The face detection process goes through several stages of haar-like feature detection using the Viola-Jones method. Each stage becomes more difficult to pass and involves more features. The features are specified in a xml file, generated after training

Early stage of haar feature detection
image from

Later stage of haar feature detection
image from

If all stages pass in the given square window, the algorithm will mark that window as a positive confirmation. In order to improve accuracy of facial recogniton and to avoid false-positives, the Viola-Jones algorithm requires a specified number of overlapping confirmations in order to identify that region as a face (Typical values range from 2-5).

Our Designs

Here are some designs that we have come up with that foil openCV's face detection if impelemented properly. These designs are not meant to guarantee your privacy against facial recognition and face detection algorithms, but simply make it harder for the algorithms to identify you.

Design 1:

Design 2:

Design 3: