Optimized Structural Similarity Index (SSIM) Implementations


These implementations of SSIM are optimizations based on the MATLAB implementations by Zhou Wang, which are available here.

The optimization comes as a result of a refactored computation of SSIM that requires one fewer blur (4 instead of 5), the same number of pixel-by-pixel binary operations (10), and two fewer unary operations (6 instead of 8). In addition, this version reduces memory usage with in-place functions. As a result, it supports larger input images.

MATLAB

There are two official MATLAB versions available from Zhou Wang. They are essentially the same, except that ssim.m automatically downsamples the input images to 256x256 whereas ssim_index.m performs no automatic downsampling. We have applied the optimization to both versions, and they are available below:

ssim_index.m
ssim.m (automatic downsampling)

VIPS

Coming soon...



Last updated: Aug. 1, 2011
Updated by: Adam Turcotte