I am trying to clean up some banding artifacts I have from some x-ray radiography images. The original radiograph is shown below, and I have attached the original .tif file as well.
original_radiograph.tif (645.0 KB)
The worst of the banding is horizontal and I was able to clean this up with an FFT bandpass filter with the option to “suppress horizontal stripes”, seen below.
However, if I try this for the vertical banding, the result I get is the addition of a larger artifact that is seen as a single, large band that lightens the image above and below the large channel to the middle-right of the image.
I am able to slightly correct for this by setting “scale large structures down” to 32 pixels in the bandpass filter parameters, however this affects the pixel values within the channel (makes them much lighter) which is a feature of this image that I would like to preserve.
I think I may be able to make a custom filter that would help me solve this problem, however I am not sure how the custom FFT filtering works. If I select the “display filter” option when running the FFT bandpass filter function, I can see that the filter is a 2048x2048 32-bit image consisting of values ranging from about 0.5 to 1, so I imagine that there is some kind of math that applies this filter to the FFT to result in an altered FFT that is then inverse transformed back to the spatial domain. Can anybody provide me with more information about how these filters are applied, or a resource that I could use to figure this out?