Editing Panoramic Images
Helmut Dersch
der@fh-furtwangen.de
University of Furtwangen
July 7, 2000

Panoramic images are usually warped to cover large fields of view. It is therefore not possible to simply paste text or other images into the panorama. This article describes how to extract perspectively corrected rectilinear partial views, which can be edited using standard Photoshop or equivalent tools. The edited partial views are later seamlessly reinsterted into the panoramic image. Using this technique it  is possible to insert text and images into panoramas.

Requirements:
A working installation of the free Photoshop plug-in Panorama Tools is required. The program and installation instructions can be downloaded from this site. The program consists of two sets of plug-ins: Panorama Tools (submenu: Adjust/ Correct/ Perspective/ Remap) and PanCntrl (submenu: Apply Changes, Get Pano, Increment, Move left, Move Right, Tilt down, Tilt up, Zoom In, Zoom Out). The following tutorial example assumes that Photoshop is the installed plug-in host. Other programs may be slightly different.

The example below uses an image provided by and Copyright Thilo Nass. This image is a cylindrical 360° panorama as used for QTVR-panoramas. The original size is 1284*384 pixels. The task consists in inserting an image into the screen of the cinema. I chose the PTViewer logo designed by Jochum Berg.

1. Selecting an Editing Window

Open the image in Photoshop. Then select Panorama Tools->Adjust from the Filter menu. In the Preferences Dialog (Pref) choose options (b) and (c), and click OK to get back into the main 'Adjust' dialog. Select 'extract' and 'use options'. Then click 'Set' to set these options. A new dialog window is displayed, which you have to fill. There are 4 main entries:

  1. Image. This part specifies the characteristics of the editing window you are about to extract (and later reinsert). For the purpose of editing, you should choose 'Rectilinear' as format. The Hfov entry lets you select  the field of view. We use a  normal value of 60 degrees, but you can choose any value between 0 and 180 depending on the subject you want to edit. Width and Height are entered in pixels. You should use an image size which roughly corresponds to the size of the same feature in the original panorama. We use 300 (width) and 240 (height).
  2. Panorama. This part specifies your source panorama. The current image is a cylindrical panoramic image as used by QTVR, so we choose QTVR-pan. Panorama Tools may also be used for PSphere images as used in PTViewer or the LivePicture viewers. The Hfov-entry sets the horizontal field of view, 360 in this case. Width and heigth are read from the source image and need not be entered by the user. To use the interactive panorama editor, you also have to set 'Save to buffer'. This saves the panorama image into an internal buffer, so that Photoshop can access it later even if it is no longer the front window.
  3. Position. Enter the horizontal pan-angle (field yaw, range -180 to +180), vertical tilt angle (field pitch, range -90 to 90), and rotation-angle (field roll, range -180 to 180). These angles specify the center position of the Image with respect to the panorama. You only need some estimate for these values, they will be adjusted interactively later. In the present case, the position is pretty exactly the center of the panorama, so we choose yaw = 0, pitch = 0, roll = 0.
  4. Stitching. Ignored, leave default settings.
Then click OK, and in the main Adjust dialog again OK. The following image will be created.

2. Adjusting the Editing Window

This image does not exactly face the screen, and slight corrections are required. These can be performed using the PanCntrl tools. They resemble the usual controls of VR-viewers like horizontal panning (Move right, Move left), Vertical tilting (tilt up/down) and zooming. Movements are much slower since high quality bicubic interpolators are used. Selecting 'Increments' let you set increments for the pan angles and zoom factor. Using these controls, you can set any arbitrary view for editing. In the current example, only a slight horizontal movement is required: Set Increments->pan to 2 degrees, then Move Left once.

3. Editing the Partial View

You can now edit this image using any Photoshop tool. However, do not resize the window (which is possible but requires some more actions, see Readme of Panorama Tools). For our current example, we select a rectangular region the size of the screen, then fill this rectangle with yellow color. Then we insert the PTViewer logo.

4. Inserting the edited image into the panoramic image

The final image needs to be flattened first. Photoshop plug-ins only read the current active layer of the active document, and after editing, this is probably not the whole image you want to insert. After flattening, select PanCntrls->Apply Changes. This inserts the image into the previously saved buffer, hence the need to save it in the first place. To see the final result, choose PanCntrls->Get Pano, which loads the buffer into Photoshop. Save this file as final result.

For this example, I have added some more graffiti to the walls of the cinema. To edit the right wall, I extracted an image with Hfov=120 at position yaw=88, and resinserted it later. For the back wall, I chose yaw=178, and for the left wall yaw=-92. See the final image, or download the full size version:

 

5. Creating the VR-panorama

The final result can be converted into a QTVR-panorama. Be sure to turn it 90 ccw first. For this demonstration I used the java-viewer 'PTViewer'. In this case, the image has to be remapped to 'PSphere' format (see PTViewer documentation). You can see the final result as Java-panorama here.

Copyright ©2000 H.Dersch der@fh-furtwangen.de