Higher order spatial features, such as doublets or
triplets have been used to incorporate spatial information
into the bag-of-local-features model. Due to computational
limits, researchers have only been using features up to the
3rd order, i.e., triplets, since the number of features
increases exponentially with the order. We propose an
algorithm for identifying high-order spatial features
efficiently. The algorithm directly evaluates the inner
product of the feature vectors from two images to be
compared, identifying all high-order features automatically.
The algorithm hence serves as a kernel for any
kernel-based learning algorithms. The algorithm is based
on the idea that if a high-order spatial feature co-occurs in
both images, the occurrence of the feature in one image
would be a translation from the occurrence of the same
feature in the other image. This enables us to compute the
kernel in time that is linear to the number of local features
in an image (same as t...