1. A device comprising a plurality of elements, including logical elements, wherein the elements are configured to perform the operations of: in a neighborhood of pixels surrounding a particular pixel, applying a filter to multiple groups of pixels in the neighborhood to generate a matrix of filtered values; computing, from the matrix of filtered values, a first set of gradients along a first direction and a second set of gradients along a second and different direction; determining how many directional changes are experienced by the gradients in the first set of gradients and the gradients in the second set of gradients; based, at least in part, upon magnitudes of at least some of the gradients in the first set of gradients and how many directional changes are experienced by the gradients in the first set of gradients, computing a first value for the first direction; based, at least in part, upon magnitudes of at least some of the gradients in the second set of gradients and how many directional changes are experienced by the gradients in the second set of gradients, computing a second value for the second direction; and based, at least in part, upon the first and second weighted values, computing an overall texture characterization value for the particular pixel, wherein the overall texture characterization value indicates a type of image environment in which the particular pixel is located.