·
Feature descriptor
The feature descriptor that I use is
mainly based on the MOPS (multi-scale oriented patches) descriptor. With the
feature point, first find out the dominant orientation of the image window, rotate
to horizontal, and then save the 5*5 square window centered at feature point as
the descriptor. At last, normalize the window by subtracting the mean, dividing
by the standard deviation in the window.
It is important to find the dominant
orientation of the image window around the feature point, which is given by , the eigenvector of H corresponding to the largest eigenvalue .
Assuming , in order to get the eigenvalue, which satisfies Hx=, let )=0, which means det
We can get the result that , considering b=c in H.
Assume that , so that orientation
·
Why choices this design
This descriptor is invariant to
rotation (by rotate the descriptor according to the domain orientation), translation
and illumination (by normalizing).
·
Performance (the ROC curve and AUC) on the provided
benchmark image sets.
o
Two sets of 6 ROC curves of Yosemite and graf, respectively.
Figure 1 ROC of Yosemite (left) and graf (right)
There is a large translation between Yosemite1 and
Yosemite2, which may account for the poor performance of simple and MOPS
descriptors. Furthermore, the performance of ratio test is not satisfying with
lower AUC than SSD match method. SIFT always performs the best in both cases.
o
For one image each in both the Yosemite and graf test pairs, an image of the Harris operator is showed below.
Figure
3 Harris feature image of Yosemite
(left) and graf (right)
o
Average AUC for two feature detecting (both
simple 5x5 window descriptor and MOPS descriptor) and matching code (both SSD
and ratio tests) on four benchmark sets -- graf, leuven, bikes and wall.
Descriptor |
5x5 window descriptor |
MOPS descriptor |
||
Matching |
SSD |
ratio tests |
SSD |
ratio tests |
graf |
0.507238 |
0.500029 |
0.473587 |
0.484041 |
leuven |
0.318475 |
0.420399 |
0.521641 |
0.461822 |
bikes |
0.426898 |
0.484124 |
0.624961 |
0.484685 |
wall |
0.258767 |
0.487066 |
0.573809 |
0.452281 |
·
Strengths and weaknesses of my algorithms
From the above AUC table, we can see
that AUC of different image database differ significantly from each other. The
main difference of the database of graf is rotation, leuven is illumination, bikes is resolution,
and wall is scale. MOPS descriptor is better than the simple 5*5 window
descriptor when there is illumination, resolution and/or scale variance. Mostly,
although ratio test performs better with 5*5 window descriptor as expected,
ratio test dose not perform better with MOPS descriptor. However, with the
rotation images (graf), ratio test do perform better
with both descriptor.
·
My own images and performance