What is this for#

The Stereoscopic Imaging (or Stereoscopy) is intended to create an impression of volume to the observer, as if they were looking at a solid object instead of a flat image. Thereby the name that was given to it: Στερεός - Σκοπέω "Solid Seeing".
The idea can not be simpler: just present to each eye the image it would see naturally: take two photos spaced by a distance that is equivalent to base distance between our eyes, and then show each photo to the corresponding eye.
It is quite easy to shoot this pair of photos. They can be made with a single camera as far as the scene does not move. But there are two issues to address:

  • Watching them: we must have some means to make each eye to see only its corresponding image.

  • Before watching: they must be aligned to correct the unavoidable aiming errors of the cameras. If this is not done well, instead of a pleasant viewing experience we would get a headache maker. This is the purpose of this program: STMANI (STereo MANIpulation) is a tool for aligning stereo photos

Origin#

This project started years ago when I switched from film to digital. First I gave a try to the available stereo photo programs most notably:

SPM (Stereo Photo Maker). I barely used it in those early times. In one hand perhaps I didn't fully understand it, in another hand I wanted to tamper with the alignment more than the program allows. However today it is doubtless the most useful program to easily handle stereo photos, and I often use it as a test bench and as a reference for the STMANI project.

HUGIN (Panorama Photo Stitcher). This provided me most of the inspiration to develop STMANI. In spite it is not intended for stereo, it has most of the necessary resources though, notably a Matching Points setting tool. I used it for a time to align my stereo photos: using the Matching Points exported from HUGIN, I calculated the geometrical transform that minimizes the vertical disparity (a nice mathematical problem).

STMANI partially shares the philosophy of HUGIN: It gives the user very fine control of the alignment process, which is good (at least for me:-), but perhaps not very user friendly.

Another idea inspired in HUGIN is the restraint to modify the images. The main output of the program being side–car text files. Well, it does not modify the images proper but it can modify some metadata of the image files: Title, Date and Focal Length. It can also rename the photo files and erase them.

Features:#

  • General Philosophy:

    • It does not modify the original images, except some EXIF metadata

    • Two levels of Alignment:

      • Angular Alignment to minimize Vertical Disparity. Results in "side–car" file: *.pair

      • Output Rendering, including Framing and Horizontal Disparity selection:
        Based on Size and Disparity Prescriptions.

  • Thumbnail Browsing:

    • Manual and Semi-automatic association of Left-Right images into Stereo Pairs

    • Main files are RAW when they exist. Actual work is done on JPEG derivatives.

    • Erasing / Recover of photos

  • Angular Alignment:

    • Based on Matching Points, one of them is assigned "Datum". Automatic or Manual Matching Point assignment.

    • Angular Alignment target: Minimum Vertical Disparity

    • User control of Angular Alignment parameters.

    • Provide figures of Angular Alignment Quality.

    • User control of Margins, Masks and Texts.

  • Output Rendering (Framing and Horizontal Disparity):

    • Based on User Prescriptions of:

      • Size and Framing.

      • Far & Near Horizontal Disparity

    • Other functions: Show Matching Points, Draw Cutting Guide Lines, et al.

Screen Areas#

The STMANI screen has two parts:

  • Thumbnail browsing at the left
  • Viewing Area at the right

The thumbnails are shown in two parallel columns that are intended to show the left and right part of the corresponding stereoscopic pair.
However the photos, belong they to stereoscopic pairs or not, may lie initially at any position and any column as explained in the Thumbnails Handling chapter

The viewing area has three tabs for the following uses:

Some Screenshots: