Inverse halftoning or descreening is the process of reconstructing high-quality continuous-tone images from the halftone version. Inverse halftoning is an ill-posed problem because different source images can produce the same halftone image. Consequently, one halftone image has multiple plausible reconstructions. Additionally, information like tones and details are discarded during halftoning and thus irrecoverably lost. Due to the variety of different halftone patterns, it is not always obvious which algorithm to use for the best quality. caused by halftone resized to a lower resolution There are many situations where reconstruction is desired. For artists, it is a challenging task to edit halftone images. Even simple modifications like altering the brightness usually work by changing the color tones. In halftone images, this additionally requires preservation of the regular pattern. The same applies to more complex tools like retouching. Many other image processing techniques are designed to operate on continuous-tone images. For example, image compression algorithms are more efficient for those images. Another reason is the visual aspect since halftoning degrades the quality of an image. Sudden tone changes of the original image are removed due to the limited tone variations in halftoned images. It can also introduce distortions and visual effects like
moiré patterns. Especially when printed on newspaper, the halftone pattern becomes more visible due to the paper properties. By scanning and reprinting these images moiré patterns are emphasized. Thus, reconstructing them before reprinting is important to provide a reasonable quality.
Spatial and frequency filtering The main steps of the procedure are the removal of halftone patterns and reconstruction of tone changes. In the end, it may be necessary to recover details to improve image quality. There are many halftoning algorithms which can be mostly classified into the categories
ordered dithering,
error diffusion, and optimization-based methods. It is important to choose a proper descreening strategy since they generate different patterns and most of the inverse halftoning algorithms are designed for a particular type of pattern. Time is another selection criteria because many algorithms are iterative and therefore rather slow. The most straightforward way to remove the halftone patterns is the application of a
low-pass filter either in spatial or frequency domain. A simple example is a
Gaussian filter. It discards the high-frequency information which blurs the image and simultaneously reduces the halftone pattern. This is similar to the blurring effect of our eyes when viewing a halftone image. In any case, it is important to pick a proper
bandwidth. A too-limited bandwidth blurs edges out, while a high bandwidth produces a noisy image because it does not remove the pattern completely. Due to this trade-off, it is not able to reconstruct reasonable edge information. Further improvements can be achieved with edge enhancement. Decomposing the halftone image into its
wavelet representation allows to pick information from different frequency bands. Edges are usually consisting of highpass energy. By using the extracted highpass information, it is possible to treat areas around edges differently to emphasize them while keeping lowpass information among smooth regions.
Optimization-based filtering Another possibility for inverse halftoning is the usage of
machine learning algorithms based on
artificial neural networks. These learning-based approaches can find the descreening technique that gets as close as possible to the perfect one. The idea is to use different strategies depending on the actual halftone image. Even for different content within the same image, the strategy should be varied.
Convolutional neural networks are well-suited for tasks like
object detection which allows a category based descreening. Additionally, they can do edge detection to enhance the details around edge areas. The results can be further improved by
generative adversarial networks. This type of network can artificially generate content and recover lost details. However, these methods are limited by the quality and completeness of the used training data. Unseen halftoning patterns which were not represented in the training data are rather hard to remove. Additionally, the learning process can take some time. By contrast, computing the inverse halftoning image is fast compared to other iterative methods because it requires only a single computational step.
Lookup table Unlike other approaches, the
lookup table method does not involve any filtering. It works by computing a distribution of the neighborhood for every pixel in the halftone image. The lookup table provides a continuous-tone value for a given pixel and its distribution. The corresponding lookup table is obtained before using histograms of halftone images and their corresponding originals. The histograms provide the distribution before and after halftoning and make it possible to approximate the continuous-tone value for a specific distribution in the halftone image. For this approach, the halftoning strategy has to be known in advance for choosing a proper lookup table. Additionally, the table needs to be recomputed for every new halftoning pattern. Generating the descreened image is fast compared to iterative methods because it requires a lookup per pixel. ==See also==