9. One or more non-transitory computer-readable media storing instructions that, when executed by one or more computing devices, cause the computing devices to perform operations comprising: clustering features from one or more images to form feature clusters, wherein the features and the feature clusters are defined in a higher-dimensional space; projecting the feature clusters from the higher-dimensional space to a first lower-dimensional space to form projections of the feature clusters in the first lower-dimensional space; projecting the feature clusters from the higher-dimensional space to a second lower-dimensional space to form projections of the feature clusters in the second lower-dimensional space; and generating buckets in the first lower-dimensional space and in the second lower-dimensional space based on the projections of the feature clusters in the first lower-dimensional space and on the projections of the feature clusters in the second lower-dimensional space.
9. One or more non-transitory computer-readable media storing instructions that, when executed by one or more computing devices, cause the computing devices to perform operations comprising: clustering features from one or more images to form feature clusters, wherein the features and the feature clusters are defined in a higher-dimensional space; projecting the feature clusters from the higher-dimensional space to a first lower-dimensional space to form projections of the feature clusters in the first lower-dimensional space; projecting the feature clusters from the higher-dimensional space to a second lower-dimensional space to form projections of the feature clusters in the second lower-dimensional space; and generating buckets in the first lower-dimensional space and in the second lower-dimensional space based on the projections of the feature clusters in the first lower-dimensional space and on the projections of the feature clusters in the second lower-dimensional space. 15. The one or more non-transitory computer readable media of claim 9 , wherein a bucket is associated with a respective bucket function b k , j s ⁡ ( z l s , θ k , j s ) = { 1 , if ⁢ ⁢  z l , j s - ∂ k , j s  < θ k , j s 0 , otherwise , ⁢ ⁢ for ⁢ ⁢ j ∈ { 1 , … ⁢ , d s } , where z is a set of low-level features, s is the feature type, d s is the dimension of the respective feature space, k is the cluster number, ∂ is a cluster center, and θ is a width of the bucket.