1. A computer-system-implemented method for generating at least one descriptor for an object, the method comprising: receiving extracted geometric shapes aligned with edge pixels associated with the object in an image; determining orientations for the geometric shapes; identifying a subset of the geometric shapes, wherein the subset includes an integer number k of the geometric shapes that are proximate to a given geometric shape in the geometric shapes; using the computer system, calculating pairs of angles representing relative displacement and relative orientation of pairs of geometric shapes in the subset, wherein a given pair of angles for a given pair of geometric shapes in the subset includes: a first angle at a location on a first geometric shape in the given pair of geometric shapes between the first geometric shape and a line t connected between the first and second geometric shapes in the given pair of geometric shapes, and a second angle at a location on the second geometric shape between the second geometric shape and the line t; and generating the at least one descriptor for the object by computing a 2-dimensional (2D) histogram of the pairs of angles based on cells defined by angular quantization values.