| Bennett Wilburn, Neel Joshi, Vaibhav Vaish, Eino-Ville Talvala, Emilio Antunez, Adam Barth, Andrew Adams, Mark Horowitz, Marc Levoy
This paper presents a system of 100 custom video cameras used to explore imaging applications that benefit from large camera arrays. The system is designed to be inexpensive to produce and uses simple cameras, lenses, and mountings, assuming that processing large numbers of images will eventually be easy and cheap. The applications explored include approximating a conventional single center of projection video camera with high performance along one or more axes, such as resolution, dynamic range, frame rate, and/or large aperture, and using multiple cameras to approximate a video camera with a large synthetic aperture. This permits the capture of a video light field, to which spatiotemporal view interpolation algorithms can be applied to digitally simulate time dilation and camera motion. It also permits the creation of video sequences using custom non-uniform synthetic apertures.
The system consists of three main subsystems: cameras, local processing boards, and host PCs. The cameras are mounted on small printed circuit boards to give maximum flexibility in their arrangement. Each camera tile is connected to a local processing board through a 2m long ribbon cable. These processing boards configure each of the cameras and can locally process the image data before sending it out to the host computer in either its raw form or as an MPEG2 video stream. A set of 4 PCs hosts the system, either storing the collected data to disk, or processing it for real time display.
The cameras use CMOS image sensors with Bayer Mosaic color filter arrays. The system uses inexpensive lenses and optics as well as inexpensive sensors. The camera tiles measure 30mm on a side and mount to supports using three spring-loaded screws. These screws not only hold the cameras in place but also let us change their orientations roughly 20 degrees in any direction. For tightly packed camera arrangements, we mount the tiles directly to sheets of acrylic. For more widely spaced arrangements, we have designed plastic adapters that connect the tiles to 80/20 (an industrial framing system) components.
The system uses a custom imaging array, but one in which we leveraged existing standards as much as possible to minimize the amount of custom hardware that the system required for operation. The system uses IEEE1394 as the interface between the processing boards and the PCs. It guarantees a default bandwidth of 40MB/s for isochronous transfers, i.e. data that is sent at a constant rate. This is perfect for streaming video, and indeed many digital video cameras connect to PCs via IEEE1394. It is also well suited for a modular, scalable design because it allows up to 63 devices on each bus and supports plug and play.
The system uses a custom imaging array, but one in which we leveraged existing standards as much as possible to minimize the amount of custom hardware that the system required for operation. The system uses IEEE1394 as the interface between the processing boards and the PCs. It guarantees a default bandwidth ofThis paper presents a system of 100 custom video cameras used to explore imaging applications that benefit from large camera arrays. The system is designed to be inexpensive to produce and uses simple cameras, lenses, and mountings, assuming that processing large numbers of images will eventually be easy and cheap. The applications explored include approximating a conventional single center of projection video camera with high performance along one or more axes, such as resolution, dynamic range, frame rate, and/or large aperture, and using multiple cameras to approximate a video camera with a large synthetic aperture. This permits the capture of a video light field, to which spatiotemporal view interpolation algorithms can be applied to digitally simulate time dilation and camera motion. It also permits the creation of video sequences using custom non-uniform synthetic apertures.
The system consists of three main subsystems: cameras, local processing boards, and host PCs. The cameras are mounted on small printed circuit boards to give maximum flexibility in their arrangement. Each camera tile is connected to a local processing board through a 2m long ribbon cable. These processing boards configure each of the cameras and can locally process the image data before sending it out to the host computer in either its raw form or as an MPEG2 video stream. A set of 4 PCs hosts the system, either storing the collected data to disk, or processing it for real time display.
The cameras use CMOS image sensors with Bayer Mosaic color filter arrays. The system uses inexpensive lenses and optics as well as inexpensive sensors. The camera tiles measure 30mm on a side and mount to supports using three spring-loaded screws. These screws not only hold the cameras in place but also let us change their orientations roughly 20 degrees in any direction. For tightly packed camera arrangements, we mount the tiles directly to sheets of acrylic. For more widely spaced arrangements, we have designed plastic adapters that connect the tiles to 80/20 (an industrial framing system) components.
The system uses a custom imaging array, but one in which we leveraged existing standards as much as possible to minimize the amount of custom hardware that the system required for operation. The system uses IEEE1394 as the interface between the processing boards and the PCs. It guarantees a default bandwidth of 40MB/s for isochronous transfers, i.e. data that is sent at a constant rate. This is perfect for streaming video, and indeed many digital video cameras connect to PCs via IEEE1394. It is also well suited for a modular, scalable design because it allows up to 63 devices on each bus and supports plug and play.
The system uses a custom imaging array, but one in which we leveraged existing standards as much as possible to minimize the amount of custom hardware that the system required for operation. The system uses IEEE1394 as the interface between the processing boards and the PCs. It guarantees a default bandwidth of