This document summarizes VLFeat, an open source computer vision library. It provides concise summaries of VLFeat's features, including SIFT, MSER, and other covariant detectors. It also compares VLFeat's performance to other libraries like OpenCV. The document highlights how VLFeat achieves state-of-the-art results in tasks like feature detection, description and matching while maintaining a simple MATLAB interface.
Note on Coupled Line Cameras for Rectangle Reconstruction (ACDDE 2012)Joo-Haeng Lee
The presentation file for the talk in ACDDE 2012.
http://www.acdde2012.org/
It deals with the research result published in ICPR 2012 with the title as "Camera Calibration from a Single Image based on Coupled Line Cameras and Rectangle Constraint"
https://iapr.papercept.net/conferences/scripts/abstract.pl?ConfID=7&Number=70
Note on Coupled Line Cameras for Rectangle Reconstruction (ACDDE 2012)Joo-Haeng Lee
The presentation file for the talk in ACDDE 2012.
http://www.acdde2012.org/
It deals with the research result published in ICPR 2012 with the title as "Camera Calibration from a Single Image based on Coupled Line Cameras and Rectangle Constraint"
https://iapr.papercept.net/conferences/scripts/abstract.pl?ConfID=7&Number=70
Template matching is a technique in computer vision used for finding a sub-image of a target image which matches a template image. This technique is widely used in object detection fields such as vehicle tracking, robotics , medical imaging, and manufacturing .
Kernel based models for geo- and environmental sciences- Alexei Pozdnoukhov –...Beniamino Murgante
Kernel based models for geo- and environmental sciences- Alexei Pozdnoukhov – National Centre for Geocomputation, National University of Ireland , Maynooth (Ireland)
Intelligent Analysis of Environmental Data (S4 ENVISA Workshop 2009)
Find out how the integer transform, the "heart" of an H.264 codec, actually works. How does it compare to the Discrete Cosine Transform? What are the encoding and decoding processes?
Mathematics (from Greek μάθημα máthēma, “knowledge, study, learning”) is the study of topics such as quantity (numbers), structure, space, and change. There is a range of views among mathematicians and philosophers as to the exact scope and definition of mathematics
P04 restricted boltzmann machines cvpr2012 deep learning methods for vision
Modern features-part-3-software
1. Software
Feature implementation and computation
Andrea Vedaldi, University of Oxford
https://sites.google.com/site/eccv12features/
goo.gl/jKC2J
2. 2
VLFeat
MATLAB ease of use
Covariant detectors, MSER, SIFT, etc ...
OpenCV
One-shop experience
The most popular vision library
Others
There is certainly no lack of software!
3. 3
VLFeat
MATLAB ease of use
Covariant detectors, MSER, SIFT, etc ...
OpenCV
One-shop experience
The most popular vision library
Others
There is certainly no lack of software!
4. VLFeat 4
An open and portable library of CV software
http://www.vlfeat.org/benchmarks/index.html
Quick Start with MATLAB
>>"untar"http://www.vlfeat.org/download/vlfeat50.9.165bin.tar.gz"
>>"run vlfeat-0.9.16/toolbox/vl_setup
Mac Linux Windows
Since 2008
ACM OSS award
5. SIFT detector and descriptor 5
1. load an image
imPath = fullfile(‘oxford.jpg’) ;
im = imread(imPath) ;
2. convert it to single precision gray scale
imgs = im2single(rgb2gray(im)) ;
3. run SIFT
[frames, descrs] = vl_sift(imgs) ;
4. visualise keypoints
imagesc(im) ; colormap gray; hold on ;
vl_plotframe(frames) ;
5. visualise descriptors
vl_plotsiftdescriptor(...
descrs(:,432), frames(:,432)) ;
8. Other covariant detectors 8
frames = vl_covdet(imgs, 'verbose') ;
imagesc(im) ; vl_plotframes(frames) ;
Do not forget to convert the images to
grayscale in single precision. Use
im2single(im) and not single(im) !
9. Understanding feature frames 9
x
x a11 a12 b
x t1
affine tf. = +
1 y a21 a22 b
y t2
b
x
b
y
y
• frames has a feature frame for each column
containing a stacked affine transformation (A,T)
2 3
t1
6 t2 7
6 7
6a11 7 x a11 a12 b
x t1
frames(:,i) = 6
6a21 7
7 = +
6 7 y a21 a22 b
y t2
4a12 5
a22
10. A frame as an oriented ellipse 10
reference = two vectors
uniquely identifies
the affine
1 transformation
b
x
b
y
reference = oriented ellipse
11. Different cornerness measures 11
frames = vl_covdet(imgs, 'method', 'Hessian') ;
DoG Hessian
• Difference of Gaussian (Laplacian, trace of Hessian, or SIFT)
• Hessian (determinant of)
HarrisLaplace HessianLaplace
15. Upright features 15
By default the rotation is
selected so that the vertical
axis stays vertical.
In formulas
x a11 0 b
x t1
= +
y a21 a22 b
y t2
Remark: for general affine transformations
the horizontal direction may appear rotated
even for upright features.
17. Computing descriptors 17
[frames, descrs] = vl_covdet(imgs) ;
• Each column of descrs is a stacked SIFT descriptor
• How is a SIFT descriptor associated to a feature?
• What about other descriptors?
18. Computing descriptors 18
[frames, descrs] = vl_covdet(imgs, 'Descriptor', 'patch') ;
Each column of descrs is a stacked
normalised image patch.
19. The geometry of an normalised patch 19
• Normalisation and patch resampling is controlled by three parameters:
(antialiasing effect)
affine tf.
(size of patch in normalised units)
(number of pixels)
30. Maximally Stable Extremal Regions (MSER) 30
[Matas et al. 2002]
• Extracts MSER regions regions and fitted ellipses frames:
imgs = uint8(rgb2gray(I)) ;
[regions,"frames]"="vl_mser(imgs)";
• Control region stability:
[regions,"frames]"="vl_mser(imgs,"...
""""""""""""""""""""""""""""‘MinDiversity’,"0.7,"...
""""""""""""""""""""""""""""‘MaxVariation’,"0.2,"...
""""""""""""""""""""""""""""‘Delta’,"10)";
31. Many other features and tools 31
superpixels MSER agglomerative information bottleneck distance transform
di erent mode seeking algo-
sent (some of) the data points
nal to the Parzen density esti-
wards the mode approximately
ates mean shift trajectories by
xt and in Fig. 2, medoid shifts
circles. This disconnects por-
alleviated (but not solved) by
ect. 3) seeks the energy modes
s, trading-o mode over- and
randomized kd-trees fast k-means feature maps, stochastic gradient SVM
s, where d is the dimension-
is only O(dN 2 T ), where T Fast Dense SIFT
lever implementations yield
32. Many other features and tools 32
SLIC superpixels Histogram of Oriented Gradients (HOG)
HARVEST Programme
New SGD Learning of SVMs
33. OpenCV 33
• The largest, best known vision library
• Features
- OpenCV 2.1:
Harris, Tomasi&Shi, MSER, DoG, SURF, STAR and FAST,
DoG + SIFT, SURF, HARRIS, GoodFeaturesToTrack
- OpenCV 2.4:
ORB, BRIEF, and FREAK
Example: computing ORB features.
#include <opencv2/core/core.hpp>
#include <opencv2/features2d/features2d.hpp>
#include <vector>
Mat image = importImage8UC1(in[IN_I]);
Mat descriptors;
std::vector<KeyPoint> frames;
ORB orb(numFeatures, scaleFactor, numLevels, edgeThreshold, 0,
wtak, scoreTypeToORBPar(scoreType), patchSize);
orb(image, Mat(), frames);
34. This is not all folks 34
• Abundance of open source / free software for CV
- Always check out authors home pages
• Examples
Rob Hess SIFT SURF
http://robwhess.github.com/opensift/ http://www.vision.ee.ethz.ch/~surf/
Open SURF
http://www.chrisevansdev.com/computer-vision-opensurf.html
FAST corners
http://www.edwardrosten.com/work/fast.html
LIOP descriptors
http://vision.ia.ac.cn/Students/bfan/index.htm ...
35. Credits 35
Karel Lenc Daniele Perrone Michal Perdoch
HARVEST Programme
Krystian Mikolajczyk Tinne Tuytelaars Jiri Matas Cordelia Schmid
Andrew Zisserman