photosynthesis-team / piq

Measures and metrics for image2image tasks. PyTorch.
Apache License 2.0
1.32k stars 114 forks source link

Add comparison of BRISQUE result with reference value #312

Closed zakajd closed 2 years ago

zakajd commented 2 years ago

Describe the bug Current implementation produces values that are different from the ones mentioned in reference paper. Need to investigate reasons for such behaviour.

Expected behavior Values obtained on TID2013, KADID10k, PIPAL match with the ones in other papers.

denproc commented 2 years ago

@zakajd thank you for raising the issue.

The difference in BRISQUE scores between our implementation and MATLAB version results from interpolation with 'bicubic' algorithm. Basically, PyTorch's torch.nn.functional.interpolate(..., mode='bicubic') and Matlab's imresize(x, 0.5, 'bicubic') provide different results. This leads to additional error in features used to compute final score.

As a result of our discussion, we're going to look into reimplementation of MATLAB-like interpolation, which could be reused for other metrics as well.