|
Theoretically, you're attempting to remove the artifacts that were added back in by the halftone printing process and recover the original image. If you knew the exact noise spectrum that the halftone print added into the image, you could invert it. For example with some scans of halftone prints of known images, you could reconstruct that noise spectrum and remove it as best as possible. This would preserve, to your best ability, whatever high-frequency data existed in the original image. If we were sure that the halftone resolution was smaller than the relevant details of the photo, then we could just use a low-pass filter (a circular aperture), removing all the high-frequency components from the halftone print, but keeping the details of the photo. However in this case, the photo has details that are at the same scale as the halftone. So the next best thing is to try to infer the halftone noise spectrum and subtract it, which is hard because it's mixed in with the photo, and we don't know which spectral peaks are from the photo and which are from the halftone process. What we can guess is that the legitimate high-frequency information in the photo should be pretty random, meaning it will be smeared out across the fourier spectrum, while the halftone print will be strongly periodic - concentrated into dots that are nearly symmetrically distributed around the origin (with some radial pattern that depends on the print process), away from the low-frequency center point. Based on this we guess that any big dots that are symmetrically placed around the origin are probably more halftone noise than image signal, and any grey areas between them are probably more real image data than noise. Then we fit a noise filter to the dots with a regression, doing our best guess to invert the noise, bringing the whole high-frequency zone to approximately a uniform grey. And then we hope that the picture isn't a photo of a herd of small spotted leopards. |