-
Notifications
You must be signed in to change notification settings - Fork 2
feature match sieve_v0.1
The feature-match-sieve software provides basic sieves for matches filtering. Its use is specifically designed for cases where no filtering based on camera poses can be performed.
The proposed sieves are fully based on the matches list, without any other external parameters. Statistical, threshold and dichotomous sieves are availables and detailed below.
The feature-match-sieve software expects the following arguments and parameters. Starting with the stream arguments and parameters :
--input -i
Path of the input matches file.
--output -o
Path of the output matches file.
Sieve arguments and parameters :
--strenght -s, --minimum -m, --maximum -a
Sieve parameters. See below for their usage.
Software switch for sieve selection :
--stat-dist -r
Performs statistical filtering based on matches disparity value.
Matches that have a disparity bigger the the standard deviation
times --strenght are removed.
--thre-dist -t
Performs a threshold filtering based on matches disparity value.
Matches that have a disparity outside of the range defined by
--minimum and --maximum are removed.
--stat-disp -d
Peforms a statistical filtering based on both x and y components
of the matches disparity. Matches that have one or both components
bigger than their own standard deviation times --strenght parameter
are removed.
--stat-flow -f
Performs the same statistical filtering than --stat-disp, but
considering normalized disparity values. The normalization is simply
achieved by dividing each component by the norm and --strenght
parameter is used the same way as for --stat-disp sieve.
--dich-slop -d
Performs a dichotomous filtering based on matches disparity slope.
The matches that have the same slope as the statistically most
represented one are kept.
Considering the two rectilinear images extracted from panoramas taken with the Eyesis4Pi camera in Geneva :
and assuming information on camera poses are unknown, the SIFT keypoint generator and Flann keypoint matcher (OpenCV implementation) are used to extract matches between the two images. The left image below shows the raw matches provided by the SIFT and Flann algorithms. Using four passes of statistical disparity sieve (--stat-dist) with --strenght parameter at 0.5 and a dichotomous sieve (--dich-slop), the matches are filtered. The remaining matches are drawn on the right image below :
Repeating the same operation using SURF instead of SIFT, the left image below shows the raw matches and the right one shows the matches that passed the successive sieves :
One has to keep in mind that matches filtering without any information on camera poses is a difficult task. Usually, to obtain satisfying results, many sieve passes are necessary. Moreover, sieve parameters are usually function of images.
The four last images are generated using the feature-match-view software.
The software binary can be build using its specific makefile by simply typing in its base directory :
$ make clean && make
The binary is placed in the local bin directory and is not copied in the feature-suite main bin directory. To generate the documentation, use the command :
$ make documentation
When documentation is generated, the previous one is preliminary removed.
Documentation under CC BY-SA license (c) 2013-2014 FOXEL SA
[Home](home)
Section : image transformation
Section : image keypoints
Section : image matches
Section : file operations
Section : file standards
- [Feature file standard](Feature file standard_v0.2)
Development : logs