Veryovka-Buchanan Dithering Methods

Veryovka-Buchanan Algorithm - Developed Algorithms

Basic idea of Veryovka-Buchanan dithering method:

Parameter  α

The parameter ‘Alpha’ controls as much as the diffusion error will be distributed for the neighbor’s pixels if the user is working with ‘Floyd-Steinberg’ option or neighbor’s pixels and blocs if the user is working with any ‘Veryovka-Buchanan’ options. The ‘alpha’ parameter varies among 0 and 1, but the user will get a better result if uses this parameter among 0.2 and 0.8. The value 0 for alpha means that there isn't any  error distribution and value 1 for alpha means that there is a total error distribution.

Block-error Distribution

The  Floyd-Steinberg dithering method  distributes the error among  yours neighbors.

The Veryovka-Buchanan idea to enhance the contours of the image is to distribute the error into block, it means that the image is grouped in pixels block of length 2x2, for example, and calculates the error for each one of the pixels in each block. After this you calculates the average for the block and distributes the average of the error among the blocks of pixels that are in the neighborhood

Photo realism

The 'Veryovka-Buchanan' method generates a better result of dithering than the knowledge classical methods. The photo realism is gained with the application of the previously described method in the texture and after it is mapped to the original image.

Artistic Dithering

The aim is enhancing the halftoned image with an non-realistic  manner putting textures and different effects in the original    image.

o       Dither screen generates by one image

It is obtained from the application of the previously described method in the texture, where this texture is different from the original image and after this is mapped to the original image. The same idea is applied to color images.

o       Dither screens generates by multiple images

It is obtained from the application of the previously described method in two or more textures, where these textures are different from the original image and after they are mapped to the original image. The same idea is applied to color images.

o       Lining up with the gradient

It has the aim to create embossing effects in the original image based on the gradient of each pixel in the image. With the pixel gradient is associated a texture which is rotation is an specific angle.  The textures that will be utilized were rotated by 30, 60, 90, 120 and 150 degrees.

To obtain the gradient it was applied the Sobel filter:

o      Dither with segmented image (threshold)

The aim is segments the original image and obtain a threshold that segments the image into two parts (object and background) . After this a texture is applied at the background and another texture is applied at the object. The segmentation method was the interactive selection by Gonzalez.

Conversion of a texture into a dither matrix:

Arbitrary gray scale texture can be used as threshold matrices in the  ordered dither algorithm. Thus the texture be transformed to satisfy essential threshold distribution properties of threshold matrices developed  the previous research.

1. Uniform distribution of threshold values:

• A dither screen should contain the same number of pixel with the same  values.

2. Homogeneous spatial distribution of threshold values.

• Pixel with the same threshold values should be uniformly spread throughout the dither screen.

The task of uniform distribution of pixel values (property 1) has been addressed in the image processing by the histogram equalization (HE algorithm).

In order to the spatial homogeneity of threshold values (property 2), one can split an image into the small blocks and apply the HE algorithm independently to each block. That is, the pixels of the block are transformed using cumulative distribution of values within this block.

Unfortunately, the use of histogram equalization leads to strong blocking artifacts and destroys some features of the input texture. These limitation can be resolved by adaptive histogram equalization (AHE) approaches developed for local contras enhancement. While many versions of the AHE exist, we have the following algorithm:
1. The input texture is split into small blocks.
2. Cumulative distributions are computed for each block.
3. Local distribution for a pixel within a block is computed as a linear
approximation between of neighboring blocks.
4. The texture is transformed using local distributions.

Typically, the presence of texture features that are larger than the AHE  window can be detected by a large numbers of pixels with a similar  intensities. In other words, the pixels histogram becomes strongly  unbalanced. Such clipping and redistribution leads to more balanced  histograms. Thus, the algorithm is called contrast limited AHE (CLAHE).

The three variation of 'Veryovka-Buchanan' method:

• Veryovka-Buchanan Classic for color and grayscale images

• This method is the junction of ordered dithering and Floyd-Steinberg dithering plus the texture treatment, using just one texture.

• Veryovka-Buchanan Texture Fusion for color and grayscale images

• This method is the junction of ordered dithering and Floyd-Steinberg dithering plus the texture treatment, using two textures.

• Veryovka-Buchanan Merged-Texture for color and grayscale images

• This method is the junction of ordered dithering and Floyd-Steinberg dithering plus the texture treatment for to textures and one of textures is rotated in 30, 60 90, 120 and 150 degrees. After this, the rotated texture is applied according with the pixel gradient  in the original image.

Exemplifying:

Veryovka-Buchanan Classic for Grayscale and Colors Images, respectively

 Grayscale image and texture original image texture original image after the application of Veryovka-Buchanan Classic dithering with texture one, using 0.5 alpha diffusion error and 8x8 blocks. Colors image and texture original image texture original image after the application of Veryovka-Buchanan Classic dithering with texture one, using 0.5 alpha diffusion error and 8x8 blocks.

Veryovka-Buchanan Merged Texture  for Grayscale:

 Grayscale image and textures original image texture original image after the application of Veryovka-Buchanan Merged-Texture dithering

Veryovka-Buchanan Texture Fusion for Grayscale and Colors Images, respectively:

 Grayscale image and textures original image texture one texture two original image after the application of Veryovka-Buchanan Fusion Texture dithering with texture one and texture two Colors image and textures original image texture one texture two original image after the application of Veryovka-Buchanan Fusion Texture dithering with texture one and texture two