Stereo Photo Cube App for Cardboard Viewer


Here's a screen display for an Android app I wrote in the Processing language/library framework. It displays a photo cube. When viewed with a Google Cardboard VR viewer (as a stereoscope), the cube will appear in 3D and since one photo is a left and right stereo pair, that photo will appear in 3D in the cube. The cube can be rotated using the arrow keys with a bluetooth keyboard connected to the phone or by dragging your finger across the screen.

You can try this yourself with code I posted on GitHub at:

The stereo display framework code is based on work done at:

I simplified the Stereo.java library code to only use Processing P3D/OPENGL library calls. I did this because I could not get the CreativeCodingLab implementation to work as written with the OpenGL ES libraries that were needed to build. It turned out Processing-Android P3D/OPENGL has everything I need, for this project at least.

Processing 2.2.1 in the Android build Mode (target 4.0.4) with Sony Z1S phone running Android 5.0.2, 


Using Google Cardboard as a Stereoscope

Homemade Cardboard Viewer, rear view phone mount area

As a device to view 3D photos, the Google Cardboard VR (Virtual Reality) viewer has its limitations. The lenses do not have enough field of view to completely see a side by side (parallel) 3D photo that fills the entire display on a phone. I think the design intention was that the cardboard wearer would move to view an entire image as it shifts corresponding to head movement. Cardboard is foremost a Virtual Reality viewer, not just a stereoscope.

Berezin Stereo Photography Products has a  rectangular lens (product 3791) with a better field of view for viewing parallel 3D photos on phones. Having used this lens with my phone I found the experience viewing 3D photos better than the Cardboard lenses.

Berezin 3DVu Lens, before hacksawed in half
My next step was to try the Berezin 3D viewer lens in a Cardboard viewer. I was able to do this by downloading plans for making my own Cardboard viewer and altering the design to fit the lenses. This required rectangular  holes for the lenses and increased lens distance from the phone for normal sighted persons.

The Berezin 3D viewer lens come in a plastic frame that does not have enough separation for Cardboard. I solved this by cutting the frame in half with a hacksaw and mounting each frame half and lens in my Cardboard. I did not try to remove the lens from the plastic because I feared destroying the lens. Besides, the plastic frame offered a convenient mount to hot glue to the cardboard.  I increased the distance from the lens to the phone by 38 mm, adjusting the plans before I cut out my custom Cardboard viewer.

I'm very pleased with the resulting stereoscope. My 3D photos look much better when Cardboard is used as a simple stereoscope because I can see the full screen image without moving. I also found my modified viewer better for looking at photo-spheres and other VR Cardboard apps with head movement too. The trade off  for my Cardboard viewer with the Berezin lenses is that the screen is not fully immersive for virtual reality, that is, I can see the walls inside the viewer. But I found this is not a distraction.

Morris Arboretum Insect Sculptures 3D Photos

David Rogers (artist), Big Bugs Exhibit: I photographed these side by side (parallel) stereo 3D photos of insect sculptures on display at the Morris Arboretum, Philadelphia, PA, August 30, 2013.

You will need a stereoscope viewer to see in 3D.















FujiFilm W3 3D Stereo Movie Viewing With Cardboard

UPDATED with additions and corrections (2015/4/4, 2015/4/12 )

This post describes procedures I used to prepare a FujiFilm W3 camera 3D stereo movie for viewing with Google's Cardboard VR viewer on my Android Sony Xperia Z1S smart phone.

First download Stereo Movie Maker (SMM for Windows) from Muttyan's site:  http://stereo.jpn.org/eng/stvmkr/index.html
I use this program to convert and re-size a FujiFilm W3 AVI movie file to a side by side version for viewing with Cardboard.

Next I downloaded 32-bit ffdshow:  http://sourceforge.net/projects/ffdshow-tryout/  to provide Stereo Movie Maker with video codecs for reading and writing the movie file. If you do not, SMM gives an error about a missing MJPEG decoder. To configure I used information supplied by http://3dstereophoto.blogspot.com/2011/05/fujifilm-finepix-real-3d-w3.html  Make sure you run the VFW configuration program (View for Windows), not the video decoder configuration program, turning on libavdecoder for MJPEG.

Now open your video file using SMM:


Next you should align with the Adjust menu, Auto Alignment since the W3 cameras may be slightly misaligned. Also make any other adjustments you might want, such as under View, auto color adjustment, for example to fix the brightness.



Save your movie in side by side format. I chose to re-size for the Cardboard viewer for my phone's display screen 1920x1080. The SMM re-size parameters are 960x540 (each eye). If I had a phone with larger display, like Samsung Galaxy S6 with its 2560x1440 display, I would not need to re-size to X 1280 and Y 720 since this is nearly the resolution of W3 movies out of the camera (1196x720).

Unfortunately my codec does not have a license for HD 2560x1440 size. Initially I used 960x540 for the re-size. I found I could crop to 4x3 aspect ratio and avoid the resize to approximate 960x720 per eye. With this aspect ratio my video looked best in the Cardboard viewer.


A video compression window will appear. If you leave uncompressed the file size is large and video is low quality. I chose GoPro since I own a GoPro and have their software installed on my computer. The quality is very good if you choose to configure. I tried several video compression formats, but only had success with GoPro-CineForm  and Cinepac codecs. You can get a GoPro codec from here.





After saving the movie file, I transferred it to my Z1S via USB cable. A dialog box appears recommending conversion, do this. The transfer program converts the file to MP4 format that the Sony phone can show. With MAGIX Movie Edit Pro 2014 video editor I am also able to convert from AVI to MP4 so as to not rely on my phone transfer to do this.

On the phone I used the VLC for Android media player app for viewing the movie. https://play.google.com/store/apps/details?id=org.videolan.vlc
I also tried Cardboard Theater, but found VLC much easier to use.


Celebrating PI Day


And Einstein's birthday and any other irrational activities you can think of!

Photographer's Dilemma

http://www.nytimes.com/2015/02/22/style/shutterbug-parents-and-overexposed-lives.html
"A photograph may distort or even push out our actual memory of an event, studies suggest."

As a photographer I am sometimes concerned if I shoot pictures at an event that I will miss out in experiencing the event. The above excellent article made clear some problems with shooting events and at same time trying to experience an event. Doing both observer and participant roles together are not always possible, I can't multitask.

3D Photo Viewing With Cardboard


Updated 2015/4/12, Major revision

Got Google's Cardboard, it's an inexpensive VR (virtual reality) viewer for smartphone displays. Bought mine from "Unofficial Cardboard" with the idea of seeing how my 3D stereoscopic photos look on my phone with the Cardboard viewer compared  to my 3D tablet (Inferno/Gadmei INF2890)

None of the Android stereo viewing or VR apps I tried worked as I would like with my photos. The cardboard lenses limit the viewing area on the phone since the headset is meant to move around to change the display with VR apps. I don't want to have to move my head around with the viewer just to see a stereo 3D slideshow. Of course for panoramic photos that is a great feature, but my photos are not panoramas.  With many photo apps, it was cumbersome to get my photos to be the right size for viewing in Cardboard. So instead I used an easy method to view my 3D photos in Cardboard without VR apps.

For my Sony Xperia Z1S phone (1920 W x 1080 H screen)  I used StereoPhotoMaker to resize side_by_side stereo photos to 1920x540 pixels (with black borders if necessary to match the display width of 1920 specifically for the Z1S). Each eye view has an aspect ratio of 16x9. In the Cardboard viewer I look at photos in full screen mode with an app like Full Screen Pic. Full screen viewing mode is a requirement. The result looked good with Cardboard, and actually much better than my 3D tablet. However I can see the pixels of the photos due to lens magnification. 

With more experimentation I improved the viewing experience using side_by_side photos resize to 1920x720 pixels. Each eye view has an aspect ratio of 4x3. This turned out to be a better viewing experience with cardboard. The cardboard lenses prevent seeing the entire photo (on the edges), but with more pixels the images look better. Finally after yet more experimentation, I cropped the photo to 8x9 aspect ratio to get the best results. On the 1920x1080 phone this produced full screen images. Looks great if you can use this aspect ratio for your photo. Finally I used different lenses that do not limit my field of view in a homemade cardboard viewer. I may discuss this topic in another post. 

Placing the main subject in the center of the photo helped too. This may detract from the art of composing photo subjects as would be done in 2D photos (such as with rule of Thirds).

I also experienced some eyestrain discomfort, but this may be due to how near my eyes are to the lenses in the cardboard frame, because when I back away the image is sharper.

Full Screen Pic has a slideshow mode that works well because it does not use or can turn off annoying transitions or zooms and it works in full screen.