cutcutcodec.core.analysis.video.quality.ssim_torch.ssim_conv_torch
- cutcutcodec.core.analysis.video.quality.ssim_torch.ssim_conv_torch(im1: Tensor, im2: Tensor, data_range: Real = 1.0, weights: Iterable[float] = None, sigma: Real = 1.5, **kwargs) float[source]
Pure torch implementation of
cutcutcodec.core.analysis.video.quality.ssim().It is based on a native torch convolution.
Examples
>>> import torch >>> from cutcutcodec.core.analysis.video.quality.ssim_torch import ssim_conv_torch >>> _ = torch.manual_seed(0) >>> im1 = torch.rand(2, 4, 720, 1080, 3) >>> im2 = 0.8 * im1 + 0.2 * torch.rand(2, 4, 720, 1080, 3) >>> ssim_conv_torch(im1[0, 0], im1[0, 0]) tensor(1.) >>> ssim_conv_torch(im1, im2) tensor([[0.9511, 0.9512, 0.9511, 0.9511], [0.9512, 0.9512, 0.9511, 0.9512]]) >>>