1. A method, comprising: obtaining image data of an image containing text, the text being disposed at an arbitrary angle of rotation with respect to horizontal; detecting the angle of rotation of the text with respect to horizontal by using oriented filters tuned to two or more different orientations, said detecting comprising: processing the image data with a bank of separable derivative filters, filtering the processed image data with the oriented filters, demodulating the filtered image data to obtain energy samples of the filtered and processed image data, and interpolating the energy samples from which an orientation of the text may be determined based at least in part on a maximum energy value of the interpolating; rotating the image data by an amount based at least in part on said detecting to provide a rotated image to align the text to horizontal; and performing optical character recognition on the text on the rotated image.