← Back

ofxStereoCam180

github.com/gerardobort/ofxStereoCam180 · @gerardobort
OF 0.9 Computer Vision

Stereographic video recording + 180º tilt/rotation by software using a pair of fisheye USB cameras.

40 10 Last commit 9y ago Created 10y ago

Branches ahead of master

These branches have commits not yet on master — could be unmerged fixes or work in progress worth a look.

opengl-es2 3 commits ahead · last commit 10y ago
opengl-es2-old 3 commits ahead · last commit 10y ago
raspberrypi3b 1 commit ahead · last commit 10y ago
sphere-mapping-tests 1 commit ahead · last commit 10y ago

README

ofxStereoCam180





This project is a proof of concept on 3d side by side video recording by using 2 180º fisheye cameras. The prototype built uses 2 cameras in an array mode to generate a stereographic stream (real time), with the addition of 3d navigation as result of the 3d mapping and a virtual camera within a skydome.

The App counts with 2 major functionalities: 1. Video recording: files get stored under bin/data/videos. 2. Video streaming: udp only for now.

Inspiration

The 180º image rectification process is based on the work presented by Paul Burke, here.

Hardware



Homemade Camera



The protoype requires a custom homemade set of cameras. A pair of 180º cameras imitating the humain eyes. I used a small cardboard box with two holes and a couple of pair of screws.



The camera device looks like this...



And here is where you can find them.

Software in action



App in action - video

Watch the video:





Resources

The 3d navigation software is implemented in C++ using OpenFrameworks 0.9. Modules used:

1. ofxGui for menues and settings 2. ofVideoGrabber for video capture 3. ofxVideoRecorder for video recording / live streamming 4. ofSphere / ofBox for skydome 5. OpenGL 3.2 - GLSL v150 for image rectification 6. ffmpeg - video encoding / streaming

Next Steps

1. Generate real-time video straming for mobile devices (cardboard) 2. Transmit sphere texture instead of rectified captures, in order to make rectification on the mobile device and have real-time tilt/rotation. 2. Build 360º views using an array of 4-5 cameras.

:hamburger:

Get this addon

HTTPS
SSH