Obiektywne miary jakości to matematyczne formuły pozwalające porównywać ze sobą dwa sygnały (w naszym przypadku obrazy) i dostarczyć nam wartość tego podobieństwa. Zaprezentowane tutaj wzory dotyczą obrazów w skali odcieni szarości. Żeby działały one na obrazach kolorowych należy przeprowadzić pewne modyfikacje np. dołożyć trzecią pętlę.

MSE

Pierwszym i najważniejszym wzorem jest wzór na liczenie błędu średnio kwadratowego (MSE). Dla wyjaśnienia \(I\) to obraz źródłowy, \(K\) to obraz po modyfikacjach, a \(m\) i \(n\) to wymiary obrazu.

\[ MSE(K,I)=\dfrac{1}{m n}\sum_{i=0}^{m-1}\sum_{j=0}^{n-1}(I(i,j)-K(i,j))^2 \]

NMSE

Rozwinięciem MSE jest znormalizowany błąd średniokwadratowy NMSE (eng. Normalized Mean Square Error).

\[ NMSE(K,I)=\dfrac{MSE(K,I)}{MSE(K,0)}=\dfrac{\dfrac{1}{m n}\sum_{i=0}^{m-1}\sum_{j=0}^{n-1}(I(i,j)-K(i,j))^2}{\dfrac{1}{m n}\sum_{i=0}^{m-1}\sum_{j=0}^{n-1}(K(i,j))^2} \]

PSNR

Kolejnym z nich jest Szczytowy stosunek sygnału do szumu (PSNR - Peak Signal-to-Noise Ratio). Do wyliczenia go wykorzystujemy MSE i wartość \(MAX_{I}\) - która oznacza maksymalną dopuszczalna wartość sygnału, która dla sygnału zapisanego na uint8 wynosi \(255\).

\[ PSNR(K,I)=10* \log_{10} (\dfrac{(MAX_{I})^{2}}{MSE(K,I)}) \]

IF

IF (ang. Image Fidelity)

\[ IF(K,I)=1-\frac{\sum_{i=0}^{m-1}\sum_{j=0}^{n-1}(K(i,j)-I(i,j))^2 }{\sum_{i=0}^{m-1}\sum_{j=0}^{n-1}(K(i,j)I(i,j))} \]

SSIM

Ostatnią interesującą nas normą będzie SSIM (structural similarity index measure), tutaj jednak nie będziemy starali się go implementować, tylko wykorzystamy gotową implementację pochodzącą z biblioteki scikit-image. Wszystko, co powinniście wiedzieć o jej wykorzystaniu, znajdziecie w dokumentacji.