Ximagic Photoshop plugins
Home Denoiser Quantizer GrayDither ColorDither Purchase Contact



The plugin accept RGB color and grayscale images.

The RGB color images are converted automatically to grayscale using Y of YCbCr colorspace

  • Images
    • Original image
    • Transformed image
    • DifferenceThis preview shows whether the denoising is removing only noise or also some information from the image. Less visible "ghost image" in the equalized error means better denoise. When the equalized noise shows a grid it is because the image was stored using jpeg format.
  • Selection thumb & saved previews
    • Selection thumb Shows the currently showing area of the image and allows to move it
    • Saved Previews Each time a calculate preview is issued (partial or full) the result is temporarily saved. A saved preview can be viewed by selecting the corresponding line in the saved previews table.
    • Discard selected preview Discard the saved preview currently selected in the table and showing in the images tabs
    • Calculate preview The calculate preview button calculates the preview
  • Colorspace
    • Colorspace (RGB/YCbCr/CIELab) Usually, it is better to work on a colorspace which separate color from luminosity as YCbCr or CIELab.
  • Gray Levels
    • Output gray levels The grayscale image can be converted to n-level grayscale, the 2 level grayscale is a B/W bitmap
  • Pattern/Random dithering
    • Fixed pattern Select one from the values. There are diffusion and halftone patterns.
    • Custom pattern
      • Pattern: Select one of the values.
      • Load Button to load a custom threshold pattern from a file. The file must have the format explained in the user Threshold pattern (below).
      • Delete Button to delete the selected custom threshold pattern
    • Calculated Pattern
      • Shape Circle
      • W Horizontal distance between center of shapes
      • H Vertical distance between center of shapes
    • Random
  • Error Dithering
    • % Error propagation Value of error diffused default 100%.
    • Array
      • Methods
        • Floyd-Steinberg
        • Ulichney
        • Fan
        • Jarvis
        • Stucki
        • Sierra3
        • Sierra2
        • Sierra42A
      • Serpentine scan Select serpentine scan of image.
    • Space filling curve
      • Methods
        • Riemersma
      • Queue size Number of pixels remembered
  • Postprocessing
    • Direct binary search This is a experimental feature and applicable only on bilevel images. After a transformation, the algorithm compares the initial image with the transformed one and try to adjust the final one, analyzing each pixel and its surroundings.

custom pattern

Custom pattern

Custom threshold patterns can be loaded from files with the appropriate format or from images.
After a pattern is loaded it remain stored until the user deletes it.
The maximum pattern size is 262144 (width*height)

To load from a file
  • The file format should be:

    [width] [height]
    [matrix row 1 values separated by blanks]
    [matrix row 2 values separated by blanks]
    [matrix row n values separated by blanks]
    The values must be integers (see Wikipedia/ordered_dithering)
    An example file
  • Method
    • Start Ximagic GrayDither and push the load button in the custom pattern line
    • In the load dialog fill the pattern name, select "from file", fill the file name and push the ok button
To load from an image
  • The 1st channel of the current transformed image in the plugin will be imported as a threshold matrix
    Image of the pattern Diffusion 8x8
    Image of the pattern Halftone orthogonal 8x8
  • Method:
    • Open the threshold image in the editor.
    • Start Ximagic GrayDither.
    • Push the Load button in the custom pattern line
    • In the load dialog, fill the pattern name, select from image, and push ok button.
    • When the image is loaded, a message box with the width and height of the pattern will appear.
    • The plugin will end. The image selected in the editor is the threshold and the plugin should end to allow the user to select another image.