Produccing 2D images for LG Optimus 3D


As you can imagine, if you get an stereo camera you start to shot stereo photos. Then you have to share them with some other people and you realise that those side by side jpegs (.jps format) does not look that nice in a normal laptop.

So I wrote a very simple program named sbs_proc (Side By Side Processor). The program accepts a single option and them a bunch of files to convert. The current available options are:

  • -left. Extracts the left side of the stereo pair
  • -right. Extracts the right side of the stereo pair
  • -ana. Produces a simple anaglyph from the stereo pair

When no option is provided anaglyph is selected. A couple of execution examples:

$ sbs_proc /tmp/*jps

The command above produces a new image for each jps file in /tmp, containing the anaglyph for the stereo pair and adding the suffix _anaglyph to the original file name. Output files are stored in the current directory.

$ sbs_proc -right /tmp/*jps

This command is performs the same operation but only extracting the right image form the original jps and using the _right prefix for the output files.

The application only works with JPEG files, that is what the LG Optimus3D produce

And that's it. It cannot be simpler, but it just does what I need. A simple example of the application output.

This is the original image rescaled (the original is 4096 width)

Stereo Pair from LG Optimus3D (rescaled)Stereo Pair from LG Optimus3D (rescaled)

This is the anaglyph produced by the tool. You would need one of those red and blue glasses to see the 3D effect. Note that the photo is a bit forced as the first BeagleBoard is too close.

sbs_proc Produced Anaglyph from LG Optimus 3D stereo pairsbs_proc Produced Anaglyph from LG Optimus 3D stereo pair

And this is what we get for the right channel.

sbs_proc Extracted Right Channel from LG Optimus 3D stereo pairsbs_proc Extracted Right Channel from LG Optimus 3D stereo pair

cheers!