Work at SourceForge, help us to make it a better place! We have an immediate need for a Support Technician in our San Francisco or Denver office.

Close

[26cac0]: doc / autopano.txt Maximize Restore History

Download this file

autopano.txt    200 lines (167 with data), 10.9 kB

  1
  2
  3
  4
  5
  6
  7
  8
  9
 10
 11
 12
 13
 14
 15
 16
 17
 18
 19
 20
 21
 22
 23
 24
 25
 26
 27
 28
 29
 30
 31
 32
 33
 34
 35
 36
 37
 38
 39
 40
 41
 42
 43
 44
 45
 46
 47
 48
 49
 50
 51
 52
 53
 54
 55
 56
 57
 58
 59
 60
 61
 62
 63
 64
 65
 66
 67
 68
 69
 70
 71
 72
 73
 74
 75
 76
 77
 78
 79
 80
 81
 82
 83
 84
 85
 86
 87
 88
 89
 90
 91
 92
 93
 94
 95
 96
 97
 98
 99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
AUTOPANO(1) User Manual AUTOPANO(1)
NAME
autopano - Generate panorama project from SIFT keypoint files.
SYNOPSIS
autopano [options] output.pto keyfile1[.gz] keyfile2[.gz] [key-
file3[.gz] [..]]
DESCRIPTION
Generate panorama project from keypoint data. First, read in two or
more SIFT keypoint files, then correlate the keypoint data and build a
list of matches. This list undergoes some filtering and the best
matches are used to create control point information. The control point
information are writting to a PTO compatible panorama project file. For
example, programs such as hugin can read it.
Prior to any further use of the PTO, you ABSOLUTELY HAVE TO ADJUST THE
FOCAL LENGTH of all the images. This can be done in hugin, in the "Cam-
era and Lens" tab.
OPTIONS
--ransac <on|off|1|0>
Switch RANSAC postfiltration on or off. Default is on. There are
only a few reasons to switch this off: if the keypoint density
and matches are very sparse, RANSAC may filter too much. Or, if
the lens geometry used is unusual (fish eye, very wide angle,
micropanorama, ...) and does not resemble a rectilinear projec-
tion. That is, if you get really bad results with RANSAC on,
disable it.
--maxmatches <count>
Set the maximum number of control point pairs you want to gener-
ate per image pair. The default is 16, so for each image pair,
there are no more than 16 control points generated. If there are
more control points to choose from, an area maximization metric
is applied to keep the matches that cover most of the image
area. You can disable this by setting count to zero. Then all
matches are kept.
--disable-areafilter
At the final stage of creating control points, there is a list
of matches for every image pair that overlaps. All this matches
are thought to be correct and have been filtered using the
RANSAC algorithm. However, often there are more matches avail-
able than the user wants to keep (see the "--maxmatches"
option). In previous versions we applied a simple metric to
pick out the matches that have a good matching score. Now, we
have an area maximization algorithm, that maximizes the area
covered by the matches. In general, this leads to better cover-
age of the image overlap area. However, if you want the old
behaviour, that only considers the SIFT matching score of every
match, enable this option.
--integer-coordinates
Use natural number coordinates in the PTO file for the found
matches. Default is to use sub-pixel float coordinates to
increase precision. You may want to try this option in case you
use another frontend than hugin and you experience problems with
the PTO files created by autopano-sift.
--absolute-pathnames <on|off|1|0>
Store the absolute pathnames of the image files in the PTO file.
Normally, in case all images are in the same directory and the
output PTO file is also saved in this directory, only the image
filenames are used. Otherwise the absolute pathnames are used.
Using this option you can enforce the behaviour.
output.pto
The filename of the PTO project file to generate.
keyfile[.gz]
The SIFT XML keypoint data file, as generated with the gener-
atekeys(1) program. If the filename ends in ".gz", transparent
gzip(1) decompression is used.
ALIGN OPTIONS
--align
Enable fully automatic pre-aligning algorithm. This results in
yaw, pitch and rotation coordinates being assigned to the images
in the resulting PTO file. This option is not perfect yet, but
in most cases the result is far better than without using it.
There are a number of conditions on the input images that can be
used with this algorithm. First, the images should all be of the
same dimension, scale and have a simple (rectangular) geometry
with roughly euclidean distances. Second, the order of the input
images is considered so that the first images build an ordered
row on the horizon. That is, the first, second, third, etc.
images are strictly aligned left-to-right or right-to-left and
all lie roughly on the horizon. They must also all be of the
same rotation angle, which must be one of three rough cases:
bottom-is-bottom, bottom-is-left, bottom-is-right. Bottom-is-top
is forbidden. In case the bottom is either left or right, we
estimate its position based on average keypoint density (also
experimental).
In case the horizontal first row is not properly detected, try
to increase the downscale resolution when creating the keypoint
data. This will produce more keypoints which makes it easier to
build the horizont-row. In case it still does not work, you
should not enable this option. Please report bugs or successes
with this option.
--bottom-is-left
--bottom-is-right
Only usable if --align option is enabled. If your input images
are 90 or -90 degree tilted for the first row of horizontal
images, you can force the orientation by telling the program
where the bottom (floor) of the images is located: on the left
or right side. If this option is not used, the program will
attempt to automatically figure the orientation based on average
keypoint density in the left and right half of the image.
--generate-horizon <count>
Generate a horizon from the first row of aligned horizontal
images. This can only be used if the --align option is enabled.
Then, up to count number of horizon control lines are written
into the resulting PTO file at the middle of the first row
images. The lines are optimally spaced and you should use values
such as 2, 6 or 14 to get optimal results (the sum of power of
two, starting with 2, 2 + 4, 2 + 4 + 8).
REFINEMENT OPTIONS
--refine
Enable the refinement step. The refining is done as last step
before writing the PTO output file. For every matching control
point pair a small patch in the original images is extracted at
the original resolution. The image patches are matched against
each other with the highest possible quality of matching, usu-
ally yielding dozens of keypoints. As this matches are derived
from the original resolution image, their location is more pre-
cise and they are used to refine the original keypoint using one
of the two methods below. Note that enabling the refinement
step makes the total process longer, hence it is not enabled by
default.
--refine-by-middle
--refine-by-mean
Two methods are available to choose the best point from the high
resolution matches. Refine by middle searches the match closest
to the original keypoints position and keeps only this match.
Refine by mean builds the geometric center of all keypoints
found in the patch and uses this coordinates.
--keep-unrefinable <on|off|1|0>
In case a good match cannot be refined because it is located to
near to the boundary of the image, the original match is kept by
default. To disable this behaviour, you can use this option,
which throws away matches that cannot be refined. However, you
might want to increase the number of matches to keep per image
pair using the "--maxmatches" option then.
COMPONENT IDENTIFICATION
The program complains about non-connected components in case there is
one or more images or image groups which have no relationship to the
rest of the images. This means there is no way to jump from an image in
one group to another group by just following control point pairs
between any two images. This component identification is crucial for
further optimization: if there is one or more non-connected components,
global optimization based on control point pairs will be impossible.
To fix this problem, first identify the reason why there are no key-
point matches between the images in the different components. A common
reason is that the images in one component are very diffuse and only
have very few control points (such as images of the sky or water). If
this is the case, you can try to increase the number of keypoints found
in each image by increasing the downscaleResolution parameter of the
generatekeys(1) program. Or you can add control point pairs between the
images of the individual components manually, using software such as
hugin. Another reason for different components could be that the images
do not belong together to one panorama.
COMMON PROBLEMS
PTO does not optimize/render in hugin. Please check that you adjusted
the camera lens or focal length parameter for each image. We intention-
ally set it to a value that will disallow any operation from within
hugin as to force the user to set this parameter. Without knowing this
parameter, any work would be invalid, thats why we force such strict
behaviour, sorry.
BUGS
No bugs known, if you find any, please send a bug report to me. I will
try to fix it.
AUTHOR
Sebastian Nowozin <nowozin at cs dot tu dash berlin dot de>
SEE ALSO
autopano-sift(7), autopano-complete(1), generatekeys(1), autopanog(1),
showone(1), showtwo(1)
autopano-sift JANUAR 2005 AUTOPANO(1)