Crate dssim [] [src]

The library interface is awfully abstract, because it strives to efficiently, and very accurately, support several pixel types. It also allows replacing some parts of the algorithm with different implementations (if you need higher accuracy or higher speed).

Structs

Dssim

Configuration for the comparison

DssimImage

Abstract wrapper for images. See Dssim.create_image()

LAB

L*a*b*b, but using float units (values are 100× smaller than in usual integer representation)

SsimMap

Detailed comparison result

Val

Result of comparison as f64

Traits

Average4

Component-wise averaging of pixel values used by Downsample to support arbitrary pixel types

Downsample

You can customize how images are downsampled

GammaComponent

See GammaPixel & ToRGBAPLU

GammaPixel

Downsampling should be done in linear RGB color space.

ToGLU

Grayscale Linear-light Unit scale

ToLABBitmap

Convert image to L*a*b* planar

ToRGBAPLU

RGBA Premultiplied Linear-light Unit scale

Functions

new

Create new context for a comparison

Type Definitions

RGBAPLU

RGBA, but: premultiplied alpha, linear, f32 unit scale 0..1

RGBLU

RGB, but linear, f32 unit scale 0..1