Skip to content
AI360Xpert
Beta

BRISK Binary Descriptor

BRISK finds corners in scale space and writes each patch as a 512 bit fingerprint with its own direction, so phones can match fast.

BRISK samples concentric rings, votes orientation from long pairs, and compares short pairs.
BRISK samples concentric rings, votes orientation from long pairs, and compares short pairs.

Why Does This Exist?

BRIEF is fast but rotation blind, and FAST has no scale. BRISK closes both gaps while staying binary. It adds its own scale space detector plus orientation, so one method covers detect, orient, and describe on weak hardware.

The sampling pattern is concentric rings, not random pairs. Long pairs vote direction, short pairs carry identity. Compare with BRIEF for the simpler fixed layout.

Think of It Like This

A dartboard with two jobs

Rings on a dartboard hold the darts. Long throws across the board show your handedness and stance. Short taps near the bull show your grouping.

BRISK uses its rings the same way. Widely spaced samples estimate which way the patch points. Closely spaced samples record what it looks like. The analogy stops at optics: blur and perspective still move the rings off target.

How It Actually Works

Detection runs AGAST, a faster FAST variant, in octaves and intra-octaves, then refines maxima in scale space. Orientation sums gradients over long pairs above a distance cutoff. Description rotates the pattern by that angle and compares 512512 short pairs into bits.

Worked numbers

A keypoint at octave 11 with scale 2.42.4 samples rings scaled by 2.42.4. Suppose 120120 long pairs vote orientation 5858 degrees. After rotating the pattern by −58-58 degrees, 512512 short comparisons yield 240240 ones. A true pair differs in about 6060 bits, random pairs near 256256 bits, so Hamming threshold near 9090 plus ratio test works well. The full string is 6464 bytes, double BRIEF-256 but still far below SIFT.

Watch Out For

Assuming SIFT level accuracy

Binary rings match fast but discriminate less than 128128 floats. On repetitive brick or foliage, BRISK needs stricter ratio filtering and geometric checks, or false pairs flood the estimator.

Ignoring intra-octaves on mid sizes

Skipping between octave layers misses targets that sit halfway in scale. Keep intra-octaves on when your objects vary smoothly in distance, and only drop them for a last speed gain.

The Quick Version

  • AGAST over octaves plus intra-octaves gives scale tuned corners.
  • Long sampling pairs vote orientation, short pairs form identity.
  • Standard output is 512512 bits per keypoint.
  • Hamming distance keeps matching cheap.
  • Good middle ground between BRIEF speed and SIFT robustness.