On 19 Jan., 14:18, Jeffrey Martin <[email protected]> wrote:
> I am also quite confused by all the options in Cpfind.
>
> Is anyone able to explain what they all mean?
Many of these options finetune the mathematical processes in the CPG.
They aren't even specific to cpfind, but are common throughout the
genre. To understand their meaning, one has to familiarize oneself
with the underlying technology. Initially, there is the algorithm to
find candidates for the control points - the so-called feature points.
This part of the process is also the part where there are patent
issues. Keywords here are SIFT (as in autopano-sift) and SURF (used in
Panomatic), and apperently cpfind is now using another feature
detector which is unencumbered by patent issues. Once feature points
have been detected in all images, they have to be compared between
images to find matching pairs. The 'features' in a feature point are
very complex; often they consist of some 100 individual values.
Matching them is not easy. The kdtree is one algorithm used in the
process. In this process, quite a few fals positives are found. They
have to be eliminated, and one well-understood mathematical way of
doing so is the ransac algorithm.
All these mathematical methods are used to our advantage by the CPG
algorithms. They can be finetuned, but usually the default values
provide near-best performance. Only in extreme situations (fisheye
photos are extreme, mathematically) can it become necessary to modify
them; usually the CPGs will query the lens type and adapt
automatically, but especially in a CPG which is still in active
development, like cpfind, manual intervention for testers and
experimentors must be possible - that's where the cryptic, unintuitive
parameters come in.
My advice concerning these is: if you don't understand what they do,
best don't mess with them. It is highly unlikely that trial-and-error
is going to get you anywhere. If the CPG doesn't perform with your
data, there is more likely another problem:
- the treatment of the particular lens is not correct
- the mathematical method isn't suited to the type of image processed
- the image is flawed (parallax, distortion)
so, of the various options that go beyond the obvious, I think you can
make rougly two groups. The first may be useful to play around with
and some can even make a big difference, particularly:
--fullscale Uses full scale image to detect
keypoints (default:false)
This is often helpful if you have hi-res images, it can dramatically
increase the number of CPs found, but it will take (sometimes much)
more time. The reason for this is that the CPG routinely scales down
the images to reduce processing time. Using --fullscale stops it fro
downscaling. Other CPGs give you the option to specify how much
downscaling you want, here you can only switch it on or off.
--multirow Enable heuristic multi row matching
(default: off)
--linearmatch Enable linear images matching (default :
all pairs)
--linearmatchlen <int> Number of images to match in linear
matching (default:1)
these are used for avoiding to have to compare every image to every
other. Usually your hugin settings will decide whether to use them or
not. They have little effect on the match quality, but a great effect
in speeding up matching for mutlirow or linear panos.
--minmatches <int> Minimum matches (default : 4)
I'm not sure if this one is actually looked at, but if you get too few
CPS, you may try and raise it.
The remainder deal with the mathematics I've outlined above. The
defaults are sensible and experimentation with them is unlikely to be
productive unless you know what you're doing:
--sieve1width <int> Sieve 1 : Number of buckets on width
(default : 10)
--sieve1height <int> Sieve 1 : Number of buckets on height
(default : 10)
--sieve1size <int> Sieve 1 : Max points per bucket
(default : 50)
--kdtreesteps <int> KDTree : search steps (default : 200)
--kdtreeseconddist <double> KDTree : distance of 2nd match
(default : 0.25)
--ransaciter <int> Ransac : iterations (default : 1000)
--ransacdist <int> Ransac : homography estimation distance
threshold (pixels)
(default : 25)
--sieve2width <int> Sieve 2 : Number of buckets on width
(default : 5)
--sieve2height <int> Sieve 2 : Number of buckets on height
(default : 5)
--sieve2size <int> Sieve 2 : Max points per bucket
(default : 2)
I hope this has shed some light on the issue.
Kay
--
You received this message because you are subscribed to the Google Groups
"Hugin and other free panoramic software" group.
A list of frequently asked questions is available at:
http://wiki.panotools.org/Hugin_FAQ
To post to this group, send email to [email protected]
To unsubscribe from this group, send email to
[email protected]
For more options, visit this group at http://groups.google.com/group/hugin-ptx