1. A system for matching a query image, comprising: at least one processor; and memory including instructions that, upon being executed by the at least one processor, cause the system to: obtain a request to match at least one portion of the query image to at least one respective portion of one or more of a plurality of database images; generate at least one Gaussian pyramid image for the query image; identify a plurality of features for the at least one Gaussian pyramid image; for each feature of the plurality of features for the at least one Gaussian pyramid image, determine one or more orientations for the feature based on a plurality of orientation calculating algorithms; determine a patch encompassing the feature based at least in part upon the one or more orientations and a sampling factor of the at least one Gaussian pyramid image; and determine a feature vector for the patch; determine at least one matching image from among the plurality of database images based at least in part upon comparing respective feature vectors of each database image to one or more feature vectors of the query image; and provide information relating to the at least one matching image in response to the request.