Ranking the Members of the U.S. Senate (According to Their Smiles)
Al Franken is the saddest senator, science says.
We judge our elected representatives on lots of things: voting record, message consistency, rhetorical ability, charisma. Given all the pageantry of politics, though, it's sort of shocking that it hasn't occurred to us to judge them on the thing that pretty well sums up everything else: their facial expressions.
Well, okay, maybe that's not the best way to judge them. But it's a funny way. And, courtesy of mandatory congressional portraits and some open APIs, we now have a tool to do it. Dan Nguyen, a developer/journalist at ProPublica, made use of Sunlight Labs' Congress API, The New York Times' Congress API, and Face.com's facial detection algorithm to gather senators' images; to size the images to consistency; to break down the images according to "face coordinates"; and then to use those coordinates to determine the relative smiliness of each senator's photo.
In particular, Nguyen took advantage of faces.detect, Face.com's facial recognition feature, which measures proportionality within images and identifies "shapes proportional to the average human face and containing such inner shapes as eyes, a nose, and mouth in the expected places."
Thus geometricized, an image breaks down, in part, to something like this:
The Face.com API, crucially for Nguyen's analysis, also returns tags that include, in addition to geometric information about the faces in question, attributes concerning those faces -- including "gender, is wearing glasses, and is smiling." From there, Nguyen was able to rank the senators on a scale of Frown to Upside-Down.
And:
And:
Aw. Al Franken.
The project, its obvious and tremendous civic significance aside, is actually, Nguyen says, a teaching tool, a fun way of explaining and experimenting with the Ruby programming language. But it's also kind of hilariously revealing. (See: "Lieberman, Joe.") And, more to the point, it's a good reminder of the fantastic things that can be done when you combine open APIs with a healthy dose of programming knowledge and an even healthier dose of creativity.
All images: Dan Nguyen, using images provided by Sunlight Labs' Congress API.