Compute peak signal to noise ratio Args: arr: (*b_shape, *d_shape) ref: (*b_shape, *d_shape) ndim_b: number of dimension of b_shape. If None, = 0. Returns: psnr: (*b_shape,)
(
arr: torch.Tensor,
ref: torch.Tensor,
ndim_b: int = None,
max_val: float = 1.,
valid_mask: torch.Tensor = None,
)
| 192 | |
| 193 | |
| 194 | def compute_psnr( |
| 195 | arr: torch.Tensor, |
| 196 | ref: torch.Tensor, |
| 197 | ndim_b: int = None, |
| 198 | max_val: float = 1., |
| 199 | valid_mask: torch.Tensor = None, |
| 200 | ): |
| 201 | """ |
| 202 | Compute peak signal to noise ratio |
| 203 | Args: |
| 204 | arr: (*b_shape, *d_shape) |
| 205 | ref: (*b_shape, *d_shape) |
| 206 | ndim_b: |
| 207 | number of dimension of b_shape. If None, = 0. |
| 208 | |
| 209 | Returns: |
| 210 | psnr: (*b_shape,) |
| 211 | """ |
| 212 | |
| 213 | mse = compute_mse(arr=arr, ref=ref, ndim_b=ndim_b, valid_mask=valid_mask) # (*b,) |
| 214 | psnr = 10 * torch.log10((max_val * max_val) / mse) # (*b,) |
| 215 | return psnr |
| 216 | |
| 217 | |
| 218 | def compute_ssim( |
nothing calls this directly
no test coverage detected