When the Number of Faces is Too High
Project information
- Category: App
- Project date: December, 2020
- Project URL: https://github.com/MHromiak/face_blurrer
I wanted to learn a bit of computer vision by replicating the technology that censors victims during police interviews or on live news. The project branched out to include video manipulation, live feed censoring and image censoring. The fun part of the project was deciding which classification model would work best for each media type. In the end, Haar cascades worked best for video while a multi-task cascaded convolutional network (MTCNN) performed better for image censoring. Whenever a censor fails to recognize a face, I chose to pause the live video, allowing near flawless censoring to occur. The only caviat with this method is that if a face is recognized that is not the solo face --- and this method only helps for single faces --- then the uncensored face is shown.
I'd like to continue the project by adding in more comprehensive error handling, mocking unit tests, allowing the user to save censored media and providing the user the choice of which faces to censor for image censoring. Furthermore, training a custom classifier may help increase facial recognition rates. The opencv-provided models work well in the meantime.