1. An image processing method, comprising: obtaining an input image comprising pixels, each pixel having a value; determining if structure exists in the input image at one or more pixels by applying, at each of the one or more pixels, a first test using a first number of pixels to disambiguate structure from noise, and applying, at each of the one or more pixels, a second test using a second number of pixels to disambiguate structure from noise if the first test fails; identifying a direction of structure at one or more of the pixels at which structure was determined to exist; and transforming the input image into an output image by filtering the input image along the identified direction of the structure at the one or more pixels.