Stanford photo scientists are out to reinvent digital photography with the introduction of an "open-source" digital camera, which will give programmers around the world the chance to create software that will teach cameras new tricks.
If the technology catches on, camera performance will be no longer be limited by the software that comes pre-installed by the manufacturer. Virtually all of the features of the Stanford camera – focus, exposure, shutter speed, flash, etc – are at the command of software that can be created by inspired programmers anywhere. "The premise of the project is to build a camera that is open source," said computer science professor Marc Levoy.
Computer science graduate student Andrew Adams, who helped design the prototype of the Stanford camera (dubbed Frankencamera,) imagines a future where consumers download applications to their open-platform cameras the way Apple apps are downloaded to iPhones today. When the camera's operating software is made available publicly, perhaps a year from now, users will be able to continuously improve it, along the open-source model of the Linux operating system for computers or the Mozilla Firefox web browser.
From there, the sky's the limit. Programmers will have the freedom to experiment with new ways of tuning the camera's response to light and motion, adding their own algorithms to process the raw images in innovative ways.
Frankencamera at minimal cost
Levoy's plan is to develop and manufacture the "Frankencamera" as a platform that will first be available at minimal cost to fellow computational photography researchers. In the young field of computational photography, which Levoy helped establish, researchers use optics benches, imaging chips, computers and software to develop techniques and algorithms to enhance and extend photography. This work, however, is bound to the lab. Frankencamera would give researchers the means to take their experiments into the studios, the landscapes, and the stadiums.
For example, among the most mature ideas in the field of computational photography is the idea of extending a camera's "dynamic range," or its ability to handle a wide range of lighting in a single frame. The process of high-dynamic-range imaging is to capture pictures of the same scene with different exposures and then to combine them into a composite image in which every pixel is optimally lit. Until now, this trick could be done only with images in computers. Levoy wants cameras to do this right at the scene, on demand. Although the algorithms are very well understood, no commercial cameras do this today. But Frankencamera does.
Another algorithm that researchers have achieved in the lab, but no commercial camera allows, is enhancing the resolution of videos with high-resolution still photographs. While a camera is gathering low-resolution video at 30 frames a second, it could also periodically take a high-resolution still image. The extra information in the still could then be recombined by an algorithm into each video frame. Levoy and his students plan to implement that on Frankencamera, too.
Yet another idea is to have the camera communicate with computers on a network, such as a photo-hosting service on the Web. Imagine, Levoy says, if the camera could analyze highly-rated pictures of a subject in an online gallery before snapping the shutter for another portrait of the same subject. The camera could then offer advice (or just automatically decide) on the settings that will best replicate the same skin tone or shading. By communicating with the network, the camera could avoid taking a ghastly picture.
Of course users with Frankencameras would not be constrained by what is already known. They'd be free to discover and experiment with all kinds of other operations that might yield innovative results because they'd have total control.
"Some cameras have software development kits that let you hook up a camera with a USB cable and tell it to set the exposure to this, the shutter speed to that, and take a picture, but that's not what we're talking about," says Levoy. "What we're talking about is, tell it what to do on the next microsecond in a metering algorithm or an autofocusing algorithm, or fire the flash, focus a little differently and then fire the flash again — things you can't program a commercial camera to do."
Behind the lens cap
To create an open source camera, Levoy and the group cobbled together a number of different parts: the motherboard, per se, is a Texas Instruments "system on a chip" running Linux with image and general processors and a small LCD screen. The imaging chip is taken from a Nokia N95 cell phone, and the lenses are off-the-shelf Canon lenses, but they are combined with actuators to give the camera its fine-tuned software control. The body is custom made at Stanford. The project has benefited from the support of Nokia, Adobe Systems, Kodak, and Hewlett-Packard. HP recently gave graduate student David Jacobs a three-year fellowship to support his work on the project. Kodak, meanwhile, supports student Eddy Talvala.
Within about a year, after the camera is developed to his satisfaction, Levoy hopes to have to have the funding and the arrangements in place for an outside manufacturer to produce them in quantity, ideally for less than $1,000. Levoy would then provide them at cost to colleagues and their students at other universities.
The son, grandson, and great-grandson of opticians, Levoy sees his mission as not only advancing research in computational photography, but also imbuing new students with enthusiasm for technology. This spring he launched a course in digital photography in which he integrated the science of optics and algorithms and the history of photography's social significance with lessons in photographic technique.
As many ideas as Levoy's team may want to implement on the camera, the real goal is to enable the broader community of photography researchers and enthusiasts to contribute ideas the Stanford group has not imagined. The success of Camera 2.0 will be measured by how many new capabilities the community can add to collective understanding of what's possible in photography.
David Orenstein is the associate communications director for the School of Engineering.