Logo EPFL
I&C
 Ecole Polytechnique Fédérale de Lausanne
     Research
 English only       EPFL > I&C > CVLAB > Research > Detect > Brief
 RESEARCH
 Research Areas
Ph.D. Theses
 CVLAB CONTENTS
 People
Research
Publications
Teaching
Student projects
Software
Data
Jobs
Intranet
 QUICK LINKS
 EPFL Infoscience
I&C Doctoral School

BRIEF: Binary Robust Independent Elementary Features

What is this? BRIEF is a general-purpose feature point descriptor that can be combined with arbitrary detectors. It is robust to typical classes of photometric and geometric image transformations. BRIEF is targeting real-time applications leaving them with a large portion of the available CPU power for subsequent tasks but also allows running feature point matching algorithms on computationally weak devices such as mobile phones. For details including comparisons to the state-of-the-art, please refer to the paper.


Results | Software | Reference | Contact


Results


Accuracy. Comparing BRIEF with OpenCV SURF on standard Wall (left) and Fountain datasets. The plots show the recognition rate (accuracy) for U-SURF-64 and BRIEF-32 versus five image pairs of the respective image sequence. 1000 points were matched for each image pair.

click to enlarge click to enlarge

Speed. Owing to its salient simplicity, BRIEF is extremely efficient to compute which results in a speed-up of almost two orders of magnitude over U-SURF-64. Compared to a recent GPU implementation of SURF, BRIEF-32P is still about 4 times faster to compute while using a single 2.53 GHz CPU. The timings are the median values obtained from 10 runs of a standard detect-describe-match cycle.

click to enlarge

Software

Note on Efficient Distance Computations. Computing the Hamming distance between two binary vectors corresponds to a simple bitcount on the result of a binary XOR operation between the vectors. The bitcount becomes particularly efficient on CPUs supporting the POPCNT instruction: The first in this series are Intel's Bloomfield (SSE 4.2) and AMD's Phenom (SSE 4a). If your CPU supports this instruction, you can safely; enable -msse4.2 (or -msse4a, respectively) in test_app/Makefile. This should give you a 10- to 15-fold speed increase for matching. If enabled despite SSE 4.2 (SSE 4a, respectively) is not supported, you will get an Illegal instruction. On linux, try grep sse /proc/cpuinfo and look for sse4_2 (or sse4a, respectively) to find out whether or not POPCNT is available on your machine.

Download: BRIEF v1.0 C++ source
License: GPL v2
Dependency: OpenCV v2.0 or higher


Main Reference

BRIEF: Binary Robust Independent Elementary Features

M. Calonder, V. Lepetit, C. Strecha, P. Fua
ECCV 2010
pdf |

Contact

Michael Calonder [e-mail]
Vincent Lepetit [e-mail]
Christoph Strecha [e-mail]
Pascal Fua [e-mail]


Comments/Feedback to webmaster.cvlab { at } epfl.ch
Last update : 03 December 2010 10:34:20