360° Camera

The 360° Camera project is developed by Heino Boekhout, Aiko Talens en Roelof Schram for the course Multimedia Systems, Master Media Technology, Leiden University.

Goal

Our goal is to produce a horizontal and vertical 360 degrees camera that can make real-time photo's or video of it's surrounding.

Novelty

Our camera is capable of making instant horizontal and vertical 360 degrees pictures or videoframes, without the need of manual stitching (compositing photo's).
This can be used for entertainment purposes where the images/video can be projected onto a huge sphere where people can get inside and perceive it as if they were at the place of filming. They also could interact with the surroundings.
The camera can also be used as a 'throw away camera'. People can take a picture when they throw the camera in the air and the camera makes a picture. This way a photographer is capable of shooting a picture from an unreachable perspective. The camera must be able to land undamaged.
Another novelty of our project is that the camera can be used in dynamic places, like at a soccergame where the camera is the football. When designing for an environment where the object is subjected to heavy forces, the camera has to be made out of flexibel and organic parts.
A tiny version of the camera can be used by surgeons who can use the camera for endoscopical examination.

First we searched for appropriate lenses and photography techniques to create our camera. We came with two ideas:

1. Usage of a camera that contains six wide-angle lenses.
2. Usage of the Omnicam.

Camera with six wide angle lenses

We made a dummy that has the shape of a ball and has six parallel divided lenses. Unfortunally we couldn't use real lenses and cameras, but we mimmiced how the camera would work. We photographed a scene both horizontal and vertical 360 degrees using an 27 mm digital camera on a tripod. The camera produced 40 pictures and we stitched them together into one big picture and then divided it into six slides (with a front, back, right, left, bottom and top picture), the way our camera would produce them. Apple's CubicVR can make a 360 degrees QTVR-movie of the six slides. First we used non-distorted pictures and this resulted in the movie below. The Quicktime plug-in is required to view the movie.

Result QTVR-movie made with six wide-lenses
Result QTVR-movie made with six wide-lenses

As you can see from the movie above; the surroundings behave like it's inside a cubic. Although the result seems rather artistical considered, this was not the result we tried to achieve. Therefore we had to distort the slides, but CubicVR does this automatically with a full picture (the original composited). See the result by viewing the movie below.

Result QTVR-movie made with six wide-lenses, after distortion
Result QTVR-movie made with six wide-lenses, after distortion

Omnicam

OmnicamWe used the half spherical mirror of the omnicam to create a 180 degrees vertical and 360 degrees horizontal photo of it's surrounding. An omnicam is a video camera that can 'see' in all directions. The optics of the sensor has been designed to ensure that all points in it's surrounding are projected through a single center of projection. Unfortunately, this camera is not capable of photographing it's full surrounding because the underground of the omnicam cannot be reflected by the half spherical mirror. Also, the camera will always be reflected.

When we made the pictures using the omnicam, we flattened them by using the filter 'polar coördinates' in photoshop. Then we composed the QTVR movie using the flattened image.


Below you can see the result of our experiment using the omnicam.

Omnicam images QTVR movies
Omnicam image QTVR Movie
Omnicam image QTVR Movie
Omnicam image QTVR Movie

Investigation of creating dynamic QTVR video

At this moment the latest version of Apple's Quicktime is not capable of embedding dynamic 360 degrees video, only static pictures. The way video could be embedded is the following: Film the omnicam, convert the polar coördinates (from a circle to a panorama) of the videoframes and add the frames in a videofile. The produced videofile must then be embedded in CubicVR. This way dynamic QTVR video can be created.

Main challenges we encountered

The process defined above, should be converted into an automated process done inside the camera itself. The reason we have done this manually is because of the costs of hardware (lenses) and the time and know-how to produce the software. We have tried to produce the software by using OpenGL. But in the short time we actually had, OpenGL was too complex for us to master at a sufficient level.