Image quality assessment: Difference between revisions
(9 intermediate revisions by the same user not shown) | |||
Line 6: | Line 6: | ||
\(\DeclareMathOperator{\mean}{mean}\) | \(\DeclareMathOperator{\mean}{mean}\) | ||
* MSE | * MSE | ||
*:\ | *:<math>\begin{align}MSE = \mean((I_1 - I_2)^2)\end{align}</math> | ||
* PSNR | * PSNR | ||
*:\ | *:<math>\begin{align}PSNR=10\log_{10}(\frac{R^2}{MSE})\end{align}</math> | ||
**where R^2 is the maximum fluctuation (e.g. 1.0 for [0-1] float images, 255 for uint8). | **where R^2 is the maximum fluctuation (e.g. 1.0 for [0-1] float images, 255 for uint8). | ||
* SSIM | * SSIM | ||
[[FFmpeg]] can compute PSNR and SSIM. | |||
==Foveated Quality Assessment== | ==Foveated Quality Assessment== | ||
Line 18: | Line 20: | ||
==Spherical Quality Assessment== | ==Spherical Quality Assessment== | ||
* WS-PSNR is a standard PSNR calculation where the mean squared error is weighted by the size of each pixel. | * WS-PSNR<ref name="sun2017wspsnr"></ref> is a standard PSNR calculation where the mean squared error is weighted by the size of each pixel. | ||
<math> | *:<math> | ||
\begin{align} | \begin{align} | ||
WMSE &= \frac{1}{\sum_{i,j}w(i,j)} \sum_{i,j} (I_1(i,j)-I_2(i,j))^2 * w(i,j)\\ | WMSE &= \frac{1}{\sum_{i,j}w(i,j)} \sum_{i,j} (I_1(i,j)-I_2(i,j))^2 * w(i,j)\\ | ||
Line 25: | Line 27: | ||
\end{align} | \end{align} | ||
</math> | </math> | ||
** The weights are \(w(i,j) = \sin(\frac{ | ** The weights are \(w(i,j) = \sin(\frac{j+0.5}{N}\pi) = \cos(\frac{j+0.5-N/2}{N}\pi)\). | ||
* | * Spherical PSNR (S-PSNR)<ref name="yu2015framework></ref> uses randomly sampled points on a sphere and back projects them to the reference and reconstructed images. In practice, these randomly sampled points need to be saved for reproducibility. They use 655262 points which are available [https://github.com/mattcyu1/omnieval/blob/master/compsph/sphere_655362.txt on their repo]. | ||
* Spherical Structural Similarity Index (S-SSIM) <ref name="chen2018sssim"></ref> is an extension of SSIM for spherical images. | |||
*:<math> | |||
\begin{align} | |||
\text{S-SSIM}(i, j) &= \frac{2 \mu_x \mu_y + C_1)(2 \sigma_{xy} + C_2)}{(\mu_x^2 + \mu_y^2 + C_1)(\sigma_x^2 \sigma_y^2 + C_2)\\ | |||
\text{S-SSIM} &= \frac{\sum_m \sum_n \text{S-SSIM}(m, n) * w(m, n)}{\sum_m \sum_n w(m, n)} | |||
\end{align} | |||
</math> | |||
==Resources== | |||
* [https://www.programmersought.com/article/81784294452/ 360 video quality evaluation standards: WS-PSNR, S-PSNR, CPP-PSNR] | |||
* [https://github.com/Samsung/360tools Samsung/360tools] | |||
==References== | ==References== | ||
Line 36: | Line 46: | ||
<ref name="lee2002foveated">Sanghoon Lee, M.S. Pattichis, A.C. Bovik, (2002) ''Foveated video quality assessment'' IEEE Multimedia 2002.</ref> | <ref name="lee2002foveated">Sanghoon Lee, M.S. Pattichis, A.C. Bovik, (2002) ''Foveated video quality assessment'' IEEE Multimedia 2002.</ref> | ||
<ref name="yu2015framework">Matt Yu, Haricharan Lakshman, Bernd Girod (2015) ''A Framework to Evaluate Omnidirectional Video Coding Schemes'' ISMAR 2015.</ref> | <ref name="yu2015framework">Matt Yu, Haricharan Lakshman, Bernd Girod (2015) ''A Framework to Evaluate Omnidirectional Video Coding Schemes'' ISMAR 2015.</ref> | ||
<ref name="sun2017wspsnr">Yule Sun, Ang Lu, Lu Yu (2017). Weighted-to-Spherically-Uniform Quality Evaluation for Omnidirectional Video. IEEE Signal Processing Letters</ref> | |||
<ref name="chen2018sssim">Sijia Chen, Yingxue Zhang, Yiming Li, Zhenzhong Chen, Zhou Wang (2018). Spherical Structural Similarity Index for Objective Omnidirectional Video Quality Assessment. (ICME 2018)</ref> | |||
}} | }} |