论文笔记-损失函数之SSIM

本文介绍了SSIM(结构相似性指数)作为损失函数在深度学习图像处理中的应用,对比了L2和SSIM的优缺点。论文一详细阐述了SSIM的计算原理,强调其对局部结构变化的敏感性。论文二则提出结合L1和MS-SSIM的损失函数,实验表明在图像恢复任务中表现出色。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

损失函数用来鼓励和抑制某些行为。
在深度学习中,如果是分类问题,则可以用交叉熵,softmax,SVM等损失函数。如果是回归问题,则代价函数普遍采用L2,或者L1。
由于L2(即用真值和预测值的欧氏距离)是一个非凸形式且可导。。但L2的使用前提是噪声高斯分布的。它抑制大的误差,但对小的误差却很能容忍。比如L2能很好地复现边缘,但却无法很好地消除那些小的噪声。
最重要的,L2和人类的视觉系统(human visual system (HVS))很不一样。HVS对局部信息很敏感,对光照,颜色变化很敏感。而人类制造的相机,其感光能力是以HVS为努力方向的。
结构相似性指数(structural similarity index,SSIM)和HVS一样,对局部结构变化很敏感,而且可导。即使对图片进行白噪声,对比度增强,mean-shifted处理,SSIM也不会变化太多。

先写两篇文章的简略笔记

1.论文一

Image Quality Assessment: From Error Visibility to Structural Similarity

当对一幅图片进行有损压缩,或者一幅图片有了噪声、畸变(distortion)等。我们人可以分辨出这两幅图大概率还是同一幅图,但如何有效地衡量他们的相似性呢?
为了抵消普通的L2距离(Mean Square Error,MSE)无法衡量图片的结构相似性的缺陷,这篇文章提出了SSIM这种structure similarity的方法来做最后变化后的图片与变化前的结构相似性。

(各类相机的宗旨也是提供给更接近人眼感知系统(human vision system,HVS)的感知能力)
人眼对光照不敏感,但对局部(图像不同部分)光照的变化敏感。对灰度不敏感但对各部分灰度的相对变化程度敏感(对比度变化)。以及对整个很大局部的结构敏感。基于以上认知,作者最后提出的:
这里写图片描述
对于两个DxD的图像块,他们的SSIM始终小于1;1表示完全相似。其中

### 关于MS-SSIM损失函数 #### 定义与原理 多尺度结构相似性(Multi-Scale Structural SIMilarity, MS-SSIM)是一种改进版的结构相似性指数(SSIM),旨在克服单一尺度下计算局限性,提供更加贴近人类视觉系统的图像质量评价方式[^1]。相比于传统的均方误差(MSE)或峰值信噪比(PSNR),MS-SSIM不仅考虑亮度、对比度匹配情况,还加入了不同分辨率层次上的结构信息比较。 #### 数学表达式 MS-SSIM通过多个尺度上分别计算SSIM值并加权平均得到最终得分: \[ \text{MS-SSIM}(X,Y)=\prod_{l=0}^{L}\left(\frac{(2\mu_x^l\mu_y^l+C_1)(2\sigma_{xy}^l+C_2)}{(\mu_x^{l2}+\mu_y^{l2}+C_1)(\sigma_x^{l2}+\sigma_y^{l2}+C_2)}\right)^{\omega_l} \] 其中\( X \) 和 \( Y \) 表示原始图片和重建后的图片;\( l \in {0,..., L } \)表示不同的缩放级别;\( C_1,C_2 \) 是为了稳定分母而引入的小常数项;\( ω_l \) 则代表各层权重系数。 #### 应用于机器学习中的实现形式 当作为损失函数应用于神经网络训练过程中时,通常会取负对数形式以便优化求解最小化问题: ```python import torch.nn.functional as F def ms_ssim_loss(output, target): """Calculate negative log multi-scale structural similarity index measure.""" msssim_val = 1 - pytorch_msssim.ms_ssim(img1=output, img2=target, data_range=1., size_average=True) return msssim_val.log() ``` 此代码片段展示了如何定义一个基于PyTorch框架下的`ms_ssim_loss()` 函数来衡量预测结果 `output` 与真实标签 `target`之间的差异程度,并返回其对应的损失值。
评论 5
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值