Locality-sensitive binary codes from shift-invariant kernels