前言
PSNR與SSIM都是用來衡量兩張圖像相似性的衡量指標。本篇主要詳細介紹這兩者的數學公式及其物理意義。
PSNR
全名為Peak signal-to-noise ratio(峰值訊噪比),主要是透過mean square error的概念來計算兩張圖片的差異。首先來定義MSE的公式,如下:
I為原始圖片,K為I經過壓縮後的圖片,而i, j分別代表的是圖片中每一個pixels的位置,m和n則代表圖片的長寬。簡單來說就是去計算每個pixels的差異然後加總起來取平均。
在來定義PSNR的公式,如下:
這裡的MAX指的是圖像訊號的最大值,簡單來說,如果圖像的每個採樣點是8bit,那麼最大值就是255,以此類推。因此只需要將先前定義的MSE帶入這個公式即可。
從這個公式來看,MSE在分母,因此兩張圖片越相似,MSE越小,也就代表PSNR越大。
SSIM
全名為structural similarity (結構相似性),主要是比較圖片之間的亮度、對比度、結構。首先來定義這三者。
亮度
主要會使用圖片灰階值得平均來作為亮度的一個參考指標。
接著會利用以下公式來衡量兩者的亮度對比。
其中C1是一個常數,x, y分別是兩張要用來比較的圖片。由此可知若兩張圖片完全相同,那麼得出來的結果就會是1。
對比度
主要是使用圖片的標準差來作為對比度的一個參考指標。
接著會利用以下公式來衡量兩者的對比度的對比。
同理C2為一個常數,且若兩張圖完全相同,得出來的結果就為1。
結構
要比較結構會需要計算兩張圖片的斜方差。
接著用以下的公式來計算結構對比。
C3為一個常數,而如果兩張圖片完全相同,那麼斜方差就會等於標準差的平方。因此結果就會為1。
SSIM
最後將三者相乘就可以得到我們要的SSIM指標。