colour.utilities.metric_psnr

colour.utilities.metric_psnr(a, b, max_a=1, axis=None)[source]

Computes the peak signal-to-noise ratio (PSNR) between given array_like \(a\) and \(b\) variables.

Parameters
  • a (array_like) – \(a\) variable.

  • b (array_like) – \(b\) variable.

  • max_a (numeric, optional) – Maximum possible pixel value of the \(a\) variable.

  • axis (None or int or tuple of ints, optional) – Axis or axes along which the means are computed. The default is to compute the mean of the flattened array. If this is a tuple of ints, a mean is performed over multiple axes, instead of a single axis or all the axes as before.

Returns

Peak signal-to-noise ratio (PSNR).

Return type

float

References

[Wikipedia04a]

Examples

>>> a = np.array([0.48222001, 0.31654775, 0.22070353])
>>> b = a * 0.9
>>> metric_psnr(a, b)  
28.9568515...