Archive for 2010

OpenCV Face Detection: Visualized

OpenCV Face Detection: Visualized from Adam Harvey on Vimeo.

This video visualizes the detection process of OpenCV’s face detector. The algorithm utilizes the Viola Jones method of calculating the integral image and then performing some calculations on all the areas defined by the black and white rectangles. The sub-window (in red) is scanned across the image at various scales to detect if there is a potential face. In the post-processing stage all the potential faces are checked for overlaps. Typically, 2 or 3 overlapping rectangles are required to confirm a face. Loner rectangles are rejected as false-positives.
This visualization was done as part of the documentation for CV Dazzle, camouflage from face detection. For more information, visit http://cvdazzle.com

CV Dazzle vs OpenCV

OpenCV vs CV Dazzle

CV Dazzle vs OpenCV Face Detection: The Results

In this image the dotted lines represent all possible face detections, including false positives, before post-processing. Solid lines indicate a positive face detection. Each of the different colors represent the different Haar Cascade face profiles that were used. Images without any solid lines are classified as false-positives and have beaten the face detector.

Post-processing in OpenCV helps remove false positives. Though false positives are still possible, they are reduced by searching for overlapping detections. Only detections that overlap at least 3 (default) other rectangles are considered to be a face. The default setting can be changed to 2 for a higher detection rate, but with more false positives. Setting the overlap minimum to 0 returns all possible detections, as shown here by the dotted lines.

The solid lines represent the faces. They are confirmed by multiple overlapping rectangles. And the colors correspond to the difference detection profiles. OpenCV includes four robust profiles for detecting faces in a frontal view. These profiles include the “frontalface_default.xml”, “frontalface_alt.xml”, “frontalface_alt2.xml”, and “frontalface_alt_tree.xml” files. Each detector returns different noticeably different results.

OpenCV is a computer vision framework available in many different programming languages. For this test, I used the Java port created for Processing from http://ubaa.net/shared/processing/opencv/opencv_image.html and then confirmed the results using the standard framework in C.

The images on the bottom row without any solid lines indicate that no faces were found. Although some potential faces were found. They were ignored, because there was not enough confidence.

These images show a proof of concept hair + makeup pattern capable of deceiving the OpenCV face detector. It was developed as my master’s thesis project at the Interactive Telecommunication Program at NYU. A more detailed report will be posted on CVDazzle.com when it’s ready.

Model: Jen Jaffe, Hair: Pia Vivas, Makeup: Leigh Brown

Photoshop Splash Screen Hack

Photoshop CS3 Splash Screen

Hacking the Splash screen in Photoshop CS3 – Speed Hack: Time 90min

I thought it would be a good idea to change the names to the opening credits to include my own. Using Rezilla to edit the resource file it was an easy fix. But then I found something better.

Inside the resource file, there was a little-known easter egg called the Transient Witticisms. They have been included since Photoshop 3.0 and are now a tradition at Adobe and offer valuable insight to Adobe’s design process, such as “I hates cruft.”, “Whip me, beat me, make me know love.”, “Alex, get back in the box!”, and the classic “Son, it’s always a choice between a douche and a turd.”. So instead of seeing the credits with you name on the top, you can hack the splash screen information to randomly grab a few of the witticisms and display them on startup. Here’s how to hack it to your liking.

How to add your name to the Photoshop Splash Screen

  • Download Rezilla – A free resource map editor
  • Right-click on the Photoshop icon in the dock and select Show in Finder
  • Right-click on the Photoshop icon in this folder and select Show Package Contents
  • Open the Contents folder.
  • Open the Resources folder.
  • Make a backup of your Adobe Photoshop CS3.rsrc file. (important!)
  • Open this file in Rezilla.
  • Scroll down to the field labeledSTR*
  • Edit the field credits
  • Now add your name or message to the beginning of the list of names
  • Save both the window you opened and the rsrc file
  • Restart Photoshop. Voila!

How to add the Transient Witticisms to the Photoshop Splash Screen

You can watch the fullscreen HD version on Vimeo to see what’s happening.

Choice Witticisms

  • I hates cruft.
  • “Design Eye for the Engineering Guy”
  • “More cowbell!”
  • Process is the antithesis of Progress.
  • “Photoshop: The number 1 choice of fake news makers around the world.”
  • “I reject your reality, and substitute my own!”
  • Download a txt file of the full witticism list from here

Haar Cascade Visualizer

haarcascade_frontalface_default

Open source app for visualizing Haar cascade files used for object detection

Download: Mac version | PC Version (both include application and source code)

The Haar cascade visualizer takes input from the OpenCV (type_id=”opencv-haar-classifier”) formatted XML files used for object detection and outputs each stage of the cascade as a separate TIF file. A set of cascade files ships with OpenCV, which can be download from WillowGarage

Haar Cascade Visualizer Screenshot

Features

  • Outputs all stages as .tif files
  • Option for creating preview of 1st feature for each stage (much faster)
  • Runs on Mac, should run on Windows (not tested yet)

Edit Source Code To:

  • Change margins, max width, and images per row
  • Change output type from TIF to JPG
  • Change background image

Notes

  • Feel free to use for any project
  • Email if you like it or have a great cascade to share
  • NB: Some cascades have stages with a lot of features. If you’re using a large cascade be prepared for high CPU usage.
  • Built with Processing

CV Dazzle vs PhotoTagger

CV Dazzle is camouflage from face detection. It’s based on the original Dazzle camo from WWI and targets automated face detection and recognition systems by altering the contrast and spatial relationship of key facial features. For more info, http://cvdazzle.com

Coffee Makes Creative

Coffee lid from somehwere in Brooklyn

 

Coffee lid from somehwere in Brooklyn

For Natalie @ CoffeeMakesCreative

Camouflage Gets Hi-Tech Makeover

CV Dazzle Public Presentation

Thursday May 6 at 5:20PM

The last 20 minutes of my two years at ITP will be spent sharing what I’ve learned about CV Dazzle and privacy enhancing technologies. Please join me for the public presentation tomorrow at 721 Broadway Floor 4. If you can’t make it, there is a live stream available here http://itp.nyu.edu/thesis/audience.html. For a full lineup of all thesis presentations, there is a schedule posted here http://itp.nyu.edu/shows/thesis2010/.

Flits Wederom Flits

Goedele Magazine

Goedele Magazine

Recent press for the anti-paparazzi clutch from Belgian magazine Goedele. Thanks Ann-Marie. Within the next month I’ll be posting more information about the development of the clutch, expected productions dates and some exciting news about where it’s headed. Until then, it’s all about hiding from surveillance.

Rainy Day in NYC

A Sad Day for Umbrellas in NYC

The rainiest March in history in NYC.

Walking around collecting umbrella handles is a few degrees north of what I usually do. Sometimes stepping outside of my comfort zone can be fun. Last night I collected a bag full of these while walking from Penn Station down to Greenwhich Village. Fun exercise for a rainy, rainy day.

A sad, sad day.

 
All content © 2003-2010 Adam Harvey All Rights Reserved | Contact