Camera Firmware Hackers Build a Fully Open-Source Digicam

'Frankencamera's' Mad Scientists

Professor Marc Levoy and grad student Andrew Adams hope their open source digital camera while drive innovation in photography.L.A. Cicero, Stanford News Service

Photography has made countless technological leaps since George Eastman drew up the patent for his innovative roll film technology, and even since the first digital cameras hit the market. But in large part, photogs have been tethered to the innovations and technologies made and doled out by a handful of companies. But Stanford computer science professor Marc Levoy and graduate student Andrew Adams are looking to change that by creating an open-source digital camera, dubbed "Frankencamera."

The pair hopes to release the camera's operating software to the public within year, at which point any programmer will be able to write apps controlling any element of the camera's performance: focus, exposure, flash, shutter speed, aperture, ISO, you name it, all freely downloadable and installable by users of the device. Programmers will also be able to create their own algorithms for processing images in new and unprecedented ways. The exploration is already underway in the lab, but a crowd-sourced effort could create limitless possibilities in the emerging field of computational photography by taking the research out of the lab and into the studio and the stadium, the countryside and the streets.

For several years, open-source developers have made available a free alternative firmware for Canon cameras, permitting users of off-the-shelf cameras to add brand-new features like live histograms, ISO tweaking, and even games. But the Frankencamera project is aiming higher.

The ultimate goal is to create a Frankencamera from widely available hardware at a cost that is accessible to those who wish to explore the platform, ideally under $1,000, a price most serious photographers will agree is pretty fair for serious photo optics. The prototype, assembled at Stanford, uses a TI processor running Linux, an imaging chip from a Nokia N95 phone, and Canon lenses. From there, users just need to start assembling the monster's many parts. For instance, one idea that has been extensively explored in the lab, but is still stuck there, is dynamic range expansion: taking multiple pictures of the same scene at varying exposures, and then compositing them into a single image in which each pixel is optimally lit. Computers in the lab can extend dynamic range. So can Frankencamera. But no commercially available camera can.

More programmers toying with more ideas will hopefully lead to a better understanding of what digital photography is capable of and drive innovations to market. Several other ideas have been kicked around for Frankencamera, including using high-res still shots to enhance low-res video and creating an online network allowing cameras to communicate with each other, swapping information about settings and enabling cameras to make smart recommendations to users.

But the idea, of course, is for the open-source platform to allow for developments Levoy and Adams haven't even thought of yet, reanimating the kind of outside-the-viewfinder thinking that prompted George Eastman to spool film onto a roll, the kind of uncontrolled thinking that escapes from the lab and takes the world by storm.