(论文分析) 图像相似度和图像可见性分析,即SSIM

2023-10-11 06:10
文章标签 分析 图像 ssim 论文 相似

本文主要是介绍(论文分析) 图像相似度和图像可见性分析,即SSIM,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

这篇是论文   Image Quality Assessment: From Error Visibility to Structural Similarity    的解读

源链接https://www.cnblogs.com/jian-hello/p/3552108.html

1. 结构相似度

 

这篇文章的研究背景是建立一个衡量图像质量好坏的测量准则。客观图像质量测量分为两种,一种是使用参考标准图像,另一种是无参考标准图像。而本文是第一种类型的客观图像质量测量。

 

假设人类视觉系统(HVS)倾向于抽取结构化信息。

 

遭到批评的算法:

一幅图像的信号可以理解称为一幅无噪声信号图像(Refference Image Signal)和一幅误差信号(Error Image Signal)。主观感觉上的图像质量的丢失与误差信号(Error Signal)的可见性紧密相关。最简单的一种测量方式就是MSE,但是两个拥有相同MSE的受干扰图像可能有非常不同的误差类型,它们中的一些可能比另一些更加可见的。大多数的这种图像质量估计方法都试图根据所关心的误差的可见性对其进行加权。

 

基于误差可见性的图像质量估计方法的通用框架

 

 

预处理阶段(Pre processing)

(1)对受干扰图像和参考图像进行适当的放缩和对齐

(2)转换到一个适合于HVS的颜色空间

(3)quality assessment metrics may need to convert the digital pixel values stored in the computer memory into luminance values of pixels on the display device through point wise nonlinear transformations.

(4)使用模拟eye optics 的点分布功能(point spread function)的低通滤波器

(5)对两幅图像使用一个非线性操作来模拟光照(light adaptation)

 

 

CSF 滤波(CSF filtering)

The contrast sensitivity function(CSF) 描绘了HVS对在视觉冲击中呈现出的不同空间时间频率的敏感度。一些图像质量评估方法将要根据这个函数进行加权。但是许多最新的测量方法选择将CSF看作一个敏感性规范化因子。

 

 

通道分解(Channel Decomposition)

图像根据空间时间频率以及方向分解到一些子带中去。尽管一些质量估计方法执行复杂的通道分解,其相信它们与神经响应紧密相连,但是大量的方法使用如DCT等简单的变换。

 

误差规范化(Error Normalization)

在参考图像和受干扰图像之间的差异根据一个masking model进行计算。这一差异考虑了这一事实,一个图像内容的出现将要降低在其空间或时间,空间频率或方向附近出现的另一个内容的可见性。

 

Normalization 过程就是打算将误差转换到Just noticeable difference 单位。

 

Masking Model 似乎很有意思:

为了能说清楚以下这些模型如何操作,我们将以JPEG 的DCT量化为背景进行,首先说一下这个背景知识:

图像压缩一般是这样进行的,将图像分成若干个8*8的块。每块都进行DCT变换,从而形成,其中i,j是DCT的频率的索引,k是这幅图像所分成的块的索引。每一块利用一个量化矩阵进行量化(),

量化误差使用如下的公式进行计算:

从人眼的特性以及心理学来讲,对于每个频率i,j,可以产生一个可见的信号的阈值是。也就是说,只有频率系数超过这个阈值,才可以产生一个能够被人感知的信号。最大可能的量化误差

于是为了使误差不可见,我们需要设置:

 

从上面的分析我们可以看到,阈值是独立于图像的。下面这些方法是告诉我们可以如何为每一块图像进行量化,从而使压缩率相同的情况下,图像质量更加。

 

 

Luminance Masking

上面这一组图像中每一个有同样的幅度,但是有不同的均值。左侧的亮度最小,右侧的亮度最大。正如所见,在左侧的图像中,内容可见性更强。这也就是说,当平均亮度更高时,区域内同等程度的变化只能产生较小的对比度(可见性较差)。

举例来说,量化到223~200比量化到123~100,区域中的内容可见性较低。因而我们有这样的想法,在亮度值大的区域,设定的阈值更大,从而量化程度更大。这主要是因为在这些区域里,图像细节不易被人眼识别。基于这样的想法,Andrew B.Watson设计了这样一个公式:

其中相当于平均亮度值(DCT变换中的第一个系数)。从这个公式中可以看出,平均亮度越大(越大),阈值越大,量化值越大。

 

 

Contrast Masking

原理介绍:当一个图像内容位于有相似空间频率和方向的图像内容区域,这个图像内容将要对人眼不可见。由于DCT变换的特性,DCT系数矩阵中的每个系数表示着在8×8区域块中特定空间频率和方向。一个DCT系数值越大,那么在这个块中,特定的空间频率和方向的内容出现更多。

 

基于这样的想法Andrew B.Watson设计了如下的公式:

 

Noise Masking

Mutural Masking

 

如何实际使用这些遮挡模型呢?需要进一步分析.

 

Reference:

(1)Perceptual quality metrics applied to still image compression

(2)DCTune: A technique for visual optimization of DCT Quantization matrices for individual images

(3)http://scien.stanford.edu/pages/labsite/1998/psych221/projects/98/dctune/yuke/index.htm

 

 

Just noticeable difference (JND) 

 

Error Pooling

这是质量评价模型的最后一步。它将要结合不同通道,不同空间位置的normalized error signals 到一个值。

 

 

局限性

这种模型必须基于一系列强假设:

 

(1)图像质量定义问题——误差可见性不一定等价于图像质量的损失。

(2)阈值问题——进行误差敏感性模型的心理学实验被设计来估计一个冲击响应仅仅可见时的阈值。这些测量阈值可以用来idngyi可见误差的敏感性例如,CSF和各种Masking Effects。但是否可以将这样模型扩展到来刻画失真程度(人类主观感觉),不清楚。

(3)自然图像的复杂问题——大量的心里学实验都是针对简单模式进行的,例如spots, bars, sinusoidal gratings。the SCF is typically obtained from threshold experiments using global sinusoidal images. The masking phenomena are usually characterized using a superposition of two different patterns.

(4)不相关问题——当我们选择上面Error Pooling中的计算式时,我们已经架设在不同位置上的error是统计独立的。但事实上并不是这样。

(5)理解交互问题(Cognitive Interaction Problem)——认知和交互视觉问题将要影响对图像质量的理解。

 

 

称赞自己的算法:

基本想法

自然图像信号是高度结构化的:像素之间呈现出很强的依赖性,特别是在它们空间邻近时,这些依赖性携带着关于目标的结构信息。

如何提取这些结构信息呢?这就是这篇论文的关键。

 

The Structural SIMilarity(SSIM) Index

 

作者定义在一副图像中的结构信息代表着独立于平均亮度及对比度的对象(object)的结构。作者将结构相似性分为三个部分:(1)luminance;(2)contrast;(3)structure。

(1)luminance

 

 

(2)contrast

(3)structure

 

将三个成分结合从而产生一个相似度测量

 

Reference: Image Quality Assessment: From Error Visibility to Structural Similarity

 

2. FSIM 基于特征相似度的图像质量估计

 

如何利用HSV的呢?

作者声称,根据心理学和生理学的证据,可察觉的特征一般位于这样的一些点上,在这些点上傅里叶变换在不同频率上有相同的相位,例如在高度相位一致性的点上的特征能更吸引人的注意。

 

(1)相位一致性(Phase Congruency)

 

PC能够被认为是一个局部特征重要性的评估量。有不同的方式来计算一副给定图像的PC map,在这篇文章中使用Kovesi的方法。

对于二维图像,可以对上面的公式进行进一步扩展得到,具体细节见论文,及相应代码。

 

问题:为什么这样定义的PC量可以说明PC值越大在这一点上的傅里叶成分的相位一致性越强呢?

 

(2)梯度幅值

 

FSIM Index

 

分为两个阶段,第一阶段针对PC的局部相似度和梯度的局部相似度计算相似度map;第二阶段结合两个相似度map到一个相似度分数。

第一阶段:

 

第二阶段:

 

由于在一个位置的PC值反应着在这个点上的结构信息能够被人识别的程度。因为可以利用这个进行加权,

这个值越大说明,当前所测试的图像越接近参考图像。

 

Reference: FSIM A Feature Similarity Index for Image Quality Assessment

这篇关于(论文分析) 图像相似度和图像可见性分析,即SSIM的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/186105

相关文章

基于WinForm+Halcon实现图像缩放与交互功能

《基于WinForm+Halcon实现图像缩放与交互功能》本文主要讲述在WinForm中结合Halcon实现图像缩放、平移及实时显示灰度值等交互功能,包括初始化窗口的不同方式,以及通过特定事件添加相应... 目录前言初始化窗口添加图像缩放功能添加图像平移功能添加实时显示灰度值功能示例代码总结最后前言本文将

Redis主从/哨兵机制原理分析

《Redis主从/哨兵机制原理分析》本文介绍了Redis的主从复制和哨兵机制,主从复制实现了数据的热备份和负载均衡,而哨兵机制可以监控Redis集群,实现自动故障转移,哨兵机制通过监控、下线、选举和故... 目录一、主从复制1.1 什么是主从复制1.2 主从复制的作用1.3 主从复制原理1.3.1 全量复制

Redis主从复制的原理分析

《Redis主从复制的原理分析》Redis主从复制通过将数据镜像到多个从节点,实现高可用性和扩展性,主从复制包括初次全量同步和增量同步两个阶段,为优化复制性能,可以采用AOF持久化、调整复制超时时间、... 目录Redis主从复制的原理主从复制概述配置主从复制数据同步过程复制一致性与延迟故障转移机制监控与维

Redis连接失败:客户端IP不在白名单中的问题分析与解决方案

《Redis连接失败:客户端IP不在白名单中的问题分析与解决方案》在现代分布式系统中,Redis作为一种高性能的内存数据库,被广泛应用于缓存、消息队列、会话存储等场景,然而,在实际使用过程中,我们可能... 目录一、问题背景二、错误分析1. 错误信息解读2. 根本原因三、解决方案1. 将客户端IP添加到Re

Redis主从复制实现原理分析

《Redis主从复制实现原理分析》Redis主从复制通过Sync和CommandPropagate阶段实现数据同步,2.8版本后引入Psync指令,根据复制偏移量进行全量或部分同步,优化了数据传输效率... 目录Redis主DodMIK从复制实现原理实现原理Psync: 2.8版本后总结Redis主从复制实

锐捷和腾达哪个好? 两个品牌路由器对比分析

《锐捷和腾达哪个好?两个品牌路由器对比分析》在选择路由器时,Tenda和锐捷都是备受关注的品牌,各自有独特的产品特点和市场定位,选择哪个品牌的路由器更合适,实际上取决于你的具体需求和使用场景,我们从... 在选购路由器时,锐捷和腾达都是市场上备受关注的品牌,但它们的定位和特点却有所不同。锐捷更偏向企业级和专

Spring中Bean有关NullPointerException异常的原因分析

《Spring中Bean有关NullPointerException异常的原因分析》在Spring中使用@Autowired注解注入的bean不能在静态上下文中访问,否则会导致NullPointerE... 目录Spring中Bean有关NullPointerException异常的原因问题描述解决方案总结

python中的与时间相关的模块应用场景分析

《python中的与时间相关的模块应用场景分析》本文介绍了Python中与时间相关的几个重要模块:`time`、`datetime`、`calendar`、`timeit`、`pytz`和`dateu... 目录1. time 模块2. datetime 模块3. calendar 模块4. timeit

python-nmap实现python利用nmap进行扫描分析

《python-nmap实现python利用nmap进行扫描分析》Nmap是一个非常用的网络/端口扫描工具,如果想将nmap集成进你的工具里,可以使用python-nmap这个python库,它提供了... 目录前言python-nmap的基本使用PortScanner扫描PortScannerAsync异

Oracle数据库执行计划的查看与分析技巧

《Oracle数据库执行计划的查看与分析技巧》在Oracle数据库中,执行计划能够帮助我们深入了解SQL语句在数据库内部的执行细节,进而优化查询性能、提升系统效率,执行计划是Oracle数据库优化器为... 目录一、什么是执行计划二、查看执行计划的方法(一)使用 EXPLAIN PLAN 命令(二)通过 S