Jump to: navigation, search

Moving source images example

This section deals with moving source images around in the panorama in order to align them if they weren't stitched at all (no common control points found) or if they were poorly positioned.

Why

The most common reason for wanting to move the source images around is to align them more properly with the remaining images than what the matching algorithm did. In some cases the matching algorithm (SIFT) wont create any links between images, so you will also want to move them manually. Photos shot without using a fisheye lens have the advantage of resulting in a higher resolution panorama, but their disadvantage is such that when each shot contains something with no clear patterns or elements, like a clear or completely overcast sky, they are impossible to automatically stitch. You have two options then: use the "Guess Unlinked Image Locations" tool in the Control Points Editor, and if that fails, align the unstitched, or badly stitched, photos manually.

How

There are two ways of doing this: by dragging each photo using the mouse, and by using the yaw, pitch, roll and fov boxes to fill in the appropriate data.

Method 1: using the mouse

Use this method if you do not know and cannot deduce the numerical values of the images location. Using the mouse you can visually see more or less where your image will end up, but after every operation you have to wait for APP to project the panorama again, which can take a considerable amount of time when dealing with many large source photos, especially when their bit deptch is greater than 8bit.

Click on the "Move Images" tool Motion mode off.png, then simply use the mouse to click on an image of your choice and move it around. Releasing the mouse button drops the image and projects the panorama, during which time you should wait and not do anything more.

Method 2: using numbers

Use this method whenever you can, it's faster and more accurate, but only works if you tried to stick to a grid while shooting - keeping even intervals between shots.

Step 1 - project your panorama so images align in a grid

First about what to do before we can use this method easily. You need to project the panorama in such a way that all the source images will be more or less vertical (assuming they were shot vertically). This means that your center point may not be on the nadir (straight below your feet) or zenith (straight above your head) because then you'd have images in two circles facing inwards. Neither can the center point be anywhere else other than vertically on the horizon. Techniques for straightening out panoramas were covered in the Geometry Editing article.

Step 2 - move them into place

Lets assume you now have a panorama consisting of two rows of images, like this:

07 08 09 10 11 12
01 02 03 04 05 06

Images 1 - 7 and 12 were stitched properly, but 8 - 11 were not stitched at all, they share no control points with neighboring images because they contain just the plain blue sky, or they shared some really bad control points that you deleted. Using the mouse you would first have to fiddle around using the "Move Images" tool to place them in possible locations and also fiddle around with rotation and zoom. Every time you'd make an action, you'd have to wait for the whole panorama to update. But we are wiser than to use that and know better tricks, so we will use numbers. First you need to figure out the parameters for image 07. Assuming you shot each photo every 60° horizontally (yaw), and the bottom row is at -45° vertically (pitch) and the top one is +45° vertically (pitch). We click on photo 07 and the four boxes get filled with data. Photo 7 could have this data:

  • Yaw: 0.102°
  • Pitch: +45.890°
  • Roll: 1.342°
  • Fov: 88.397°

The yaw/pitch/roll values are not ideal because nothing is ideal, the pano head had tiny physical imperfections, there were tiny parallax errors in the panohead alignment and we weren't very precise. That doesn't matter if the errors are small, since our unlinked photos have nothing clear in them that would look out of place if even misaligned by a tiny amount anyway.

We now click on image 08, the first unstitched photo, and we update the parameters:

  • Yaw: 60.102° (because each shot was 60° apart horizontally)
  • Pitch: +45.890° (same pitch for the whole row)
  • Roll: 1.342° (same roll for all of them, more or less)
  • Fov: 88.397° (same for all)

Note that in this example, 60° was added and the fraction .102 was kept, you do not have to do this! Setting Yaw to 60° and then 120°, 180°, and so on, will probably work just as well! Also very often you will find that in 360°x180° panoramas the Roll value will change... in some images it might be +2°, in others it gradually changes to -2°, so you might want to take notice of this when positioning your images. If image 07 had a Roll value of 1.342° and image 12 had roll -3°, then make images 08-11 gradually change roll from about 1° to about -2.5°. Of course you might not see any difference if your photos really are very plain, e.g. clear sky, then this would be a waste of time.

Once Yaw, Pitch, Roll and Fov for image 08 are filled in, hit the green tick to confirm and apply changes and project the pano.

Image 09 would have the same parameters as image 8 except for Yaw, which would be 120.102°, and so on. Soon, in no time, you will have all of the shots aligned with almost the same accuracy as with which you manipulated your pano head while shooting!

Step 3 - retry adding control points

Local geometric optimize colors.gif

Once that is done, you can try detecting control points again to hopefully align them perfectly (assuming they contain something where stitching errors will be visible, e.g. a silhouette skyline). To do this open the Control Points Editor Cp mode off.png and minimize the window that opens (do not close it!). Now rightclick on the number in the center of an image, e.g. the (08) circle in the center of image 08, then select "Local Geometry Analysis". APP will look for control points. Now that you told APP where the images should be, there is a higher chance that it will find some control points. When APP finishes looking for CPs, rightclick again on (08) and this time choose "Local Optimize". Hopefully your image will "pop" into place. If, on the other hand, it looks worse, then just undo History.png the last 2 steps and leave it as it was. If it worked well, redo it for all images that you moved.

Your images are now properly aligned, but they are not color corrected like the rest of the stitched shots were. We will now take care of this.

Step 4 - correct colours and exposure

After aligning all of the unstitched shots, SAVE YOUR PANO, just in case! Click on the Edit Color Anchor icon Ancre edit on.png, and then click on the "Optimize Color" button. If you cannot click on it, and you don't want to change anchors in the pano, just rightclick on the existing yellow anchor, and select "Hard anchor" from the list that pops up. That wont change anything but it will let you click on "Optimize Color". Do it, click on it, and the unstitched photos that you just aligned will be color corrected to match the rest of the panorama.

You're done!