不同的图像质量评价指标(IQA)
一、NR-IQA
这是一种方法不是指标
“Non-Reference Image Quality Assessment”(NR-IQA)是一种图像质量评价(Image Quality Assessment, IQA)方法,通常用于评估图像的质量,而无需使用参考图像(即没有原始或参考图像进行比较)。
在图像处理和计算机视觉领域,有两种常见的图像质量评价方法:全参考(Full-Reference)和非参考(No-Reference)。全参考方法需要一个参考图像,它与待评估图像进行比较以确定图像质量。而非参考方法则不依赖于参考图像,它根据图像自身的特征和内容来评估图像的质量。
NR-IQA 方法的主要目标是开发能够自动评估图像质量的算法,而无需使用参考图像。这对于实际应用中的图像质量评估非常有用,因为在许多情况下,没有可用的参考图像或参考图像可能不适用。
NR-IQA 方法通常基于图像的各种特征,如对比度、清晰度、颜色分布、纹理等,以及人类视觉系统的感知特性。这些方法可以是基于统计模型、机器学习模型或深度学习模型的。
NR-IQA 方法在图像处理、图像压缩、视频传输、医学图像等领域都有广泛的应用,因为它们可以帮助自动化地评估和改进图像和视频的质量。
二、MUSIQ
它代表 “Multi-Scale Image Quality”(多尺度图像质量)。
MUSIQ 是一种用于评估图像质量的指标,通常用于计算生成的图像与原始图像之间的相似性或质量。与其他IQA指标不同,MUSIQ 在多个尺度上对图像进行评估,以更全面地考虑图像的质量。
MUSIQ 可能会考虑以下因素:
- 局部特征:评估图像的局部细节和特征,以检测失真或伪影。
- 全局特征:考虑整体图像的特征,如对比度、亮度和颜色平衡。
- 多尺度信息:在不同的图像尺度上进行评估,以检测不同尺度下的质量问题。
- 感知模型:可能考虑人类视觉系统的感知特性,以更准确地模拟人眼对图像质量的感知。
具体的 MUSIQ 实现和计算方式可能会因不同的研究或应用而异。
三、LPIPS
LPIPS(Learned Perceptual Image Patch Similarity)是一种图像质量评价指标,它用于测量两个图像之间的感知相似性。LPIPS旨在模拟人类视觉系统的感知,以更准确地衡量图像之间的相似性或质量差异。
LPIPS 的主要思想是将图像分为不同的块或块,并在这些块上计算感知相似性,然后将这些分数进行汇总以获得最终的相似性度量。这种方法考虑了图像中局部特征的重要性,因此能够更好地捕获图像之间的结构和内容相似性。
LPIPS 使用深度学习模型来学习感知相似性度量。通常,这个模型在大规模图像数据集上进行预训练,然后可以用于计算两个图像之间的相似性分数。与传统的结构相似性指标(如PSNR和SSIM)不同,LPIPS 更具有表现力,可以更好地捕获图像的感知差异,特别是在存在复杂纹理、结构和颜色变化的情况下。
LPIPS 在计算机视觉和图像处理领域中被广泛应用,特别是在图像生成、超分辨率、图像风格迁移等任务中,用于评估生成的图像与原始图像之间的相似性和质量。这种指标有助于自动化评估和改进生成图像的质量。
四、FID
FID(Fréchet Inception Distance)是一种用于评估生成模型生成的图像与真实图像分布之间的相似性的指标。它是一种常用于评估生成对抗网络(GANs)和其他生成模型性能的图像质量评价指标。
FID 的计算方式基于两个关键元素:
-
生成图像样本的特征表示:首先,通过一个预训练的卷积神经网络(通常是Inception网络)提取生成图像样本的特征表示。这个特征表示捕捉了生成图像的内容和统计信息。
-
真实图像样本的特征表示:同样地,提取真实图像样本的特征表示,以捕捉真实图像的内容和统计信息。
然后,FID 通过比较生成图像样本和真实图像样本的特征表示来计算它们之间的相似性。这个相似性度量考虑了两个分布之间的 Fréchet 距离,通常在高维特征空间中计算。FID 的值越低,表示生成图像与真实图像分布越相似,质量越高。
FID 的主要优点是它不需要参考图像或人工标签,而是根据图像的统计特征进行评估,因此对于无监督生成任务非常有用。它已被广泛用于衡量生成模型的性能,特别是在图像生成、图像转换和图像风格迁移等任务中。越低的 FID 值通常表示生成的图像更接近真实图像分布,质量更高。
五、NIQE
NIQE(Naturalness Image Quality Evaluator)是一种用于图像质量评价的指标,旨在度量图像的自然度或真实感。NIQE 通常用于评估图像的质量,特别是在图像处理和图像增强应用中,以确定处理后的图像是否看起来自然。
NIQE 的计算方式基于以下思想:
-
自然图像的统计属性:NIQE 基于大量自然图像的统计属性和特征,这些属性包括像素的亮度、颜色分布、梯度信息等。自然图像通常具有特定的统计特征,这些特征在视觉上会产生自然感。
-
图像失真的影响:NIQE 通过比较待评估图像的统计属性和自然图像的统计属性来测量图像质量。如果待评估图像与自然图像的统计属性差异较大,则可能表明图像存在失真或不自然的特征。
-
质量分数计算:NIQE 将上述比较转化为一个质量分数,该分数用于表示图像的自然度。较低的 NIQE 分数通常表示图像更自然或更接近自然图像的统计属性,而较高的分数则表示图像可能存在失真或不自然的特征。
NIQE 通常用于与人类主观评估结合,以确定图像处理算法的性能。虽然它可以自动化地评估图像质量,但它仍然具有一定的主观性,因为图像的自然度在一定程度上是主观的概念。
六、NRQM(Ma)
NRQM(Non-Reference Quality Metric)是一种非参考图像质量评价指标,用于自动评估图像的质量,而不需要参考图像(即原始或真实图像)。NRQM 帮助衡量图像失真、压缩、噪声等因素对图像质量的影响,通常用于图像处理、图像增强和图像压缩等领域。
“NRQM(Ma)” 可能是指特定的 NRQM 指标,其中 “Ma” 可能代表该指标的开发者或提出者。NRQM 指标的具体定义和计算方式通常取决于其作者的研究工作,因此不同的 NRQM 可能会有不同的名称和计算方法。
NRQM 通常通过分析图像的统计特征、结构信息、颜色分布、对比度等来评估图像的质量。这些指标旨在模拟人类视觉系统的感知,并尽量与人类主观评估的结果相一致。
要了解 “NRQM(Ma)” 具体的计算方式和用法,你需要查阅相关文献或参考该指标的提出者的研究论文。不同的 NRQM 可能会有不同的特点和适用范围,因此理解其原理和用法对于正确应用和解释评估结果非常重要。
七、 NIMA
NIMA(Neural Image Assessment)是一种基于深度学习的图像质量评价模型。与传统的图像质量评价指标不同,NIMA 利用深度卷积神经网络(CNN)从图像中学习特征,以自动化地评估图像的质量。
以下是 NIMA 的一些关键特点和工作原理:
-
深度卷积神经网络:NIMA 使用深度CNN模型来提取图像的特征表示。通常,这个CNN模型在大规模的图像质量评价数据集上进行训练,以学习不同质量图像之间的特征差异。
-
多个质量层级:NIMA 被设计为能够评估图像的多个质量层级,而不仅仅是一个二进制的“好”或“坏”。它可以输出一个分数,表示图像的整体质量,而不仅仅是一个二进制分类。
-
主观和客观损失函数:NIMA 的训练通常结合了主观和客观的损失函数。主观损失函数是根据人类主观评估的数据来定义的,而客观损失函数则基于模型的输出和人类评估之间的误差来定义。
-
应用领域:NIMA 在图像处理、图像压缩、图像增强、图像生成等领域中都有应用潜力。它可以帮助自动化地评估图像质量,从而加速图像处理和改进图像生成任务。
总的来说,NIMA 是一种基于深度学习的图像质量评价方法,它利用深度CNN模型从图像中提取特征,并能够输出图像的质量分数,使其成为自动化图像质量评估的有力工具。这种方法对于需要大规模图像质量评估的应用非常有用。
八、WaDIQaM
WaDIQaM(Wavelet Domain Image Quality Assessment Model)是一种用于图像质量评估的指标或模型,它基于小波变换领域的方法。WaDIQaM 旨在测量数字图像的质量,特别是在压缩和传输等应用中,以确定图像是否受到了失真或损坏。
WaDIQaM 的核心思想是利用小波变换来分析图像的频域特征和空域特征。小波变换是一种在图像处理中常用的技术,可以将图像分解成不同尺度的频带,从而更好地捕捉图像的细节和结构。
WaDIQaM 的主要步骤可能包括以下内容:
-
小波变换:首先,对待评估的图像应用小波变换,将其分解成不同的频带。这些频带表示图像在不同尺度和方向上的特征。
-
特征提取:从每个小波频带中提取特征,这些特征可以包括能量、对比度、频谱特性等。这些特征有助于描述图像的频域特性。
-
质量评分:使用提取的特征计算图像的质量评分。评分通常是一个单一的值,表示图像的质量,较高的分数表示较高的质量,较低的分数表示较低的质量。
WaDIQaM 可以用于各种图像处理和传输任务中,特别是在压缩图像、视频传输、图像增强和图像复原等领域。通过分析图像的频域特征,WaDIQaM 可以帮助自动化地检测图像失真和损坏,从而提高图像传输和处理的质量。
九、 BRISQUE
BRISQUE(Blind/Referenceless Image Spatial Quality Evaluator)是一种用于图像质量评估的盲评价(不需要参考图像)模型。它旨在自动化地评估数字图像的质量,而不依赖于原始高质量图像(参考图像)。
BRISQUE 是一种基于统计特征的图像质量评估方法,它使用了图像的局部和全局统计特征,通过分析这些特征来估计图像的失真程度。以下是 BRISQUE 的一些关键特点和工作原理:
-
特征提取:BRISQUE 首先对待评估的图像应用局部和全局的统计特征提取算法。这些特征可能包括图像的均值、方差、梯度信息、对比度、颜色分布等。
-
失真建模:BRISQUE 使用了一个模型来建模原始图像和失真图像之间的差异。这个模型考虑了不同特征之间的关联性,并计算出图像的失真度。
-
质量评分:BRISQUE 输出一个质量评分,表示图像的失真程度。较低的分数通常表示图像质量较高,而较高的分数表示图像可能存在较大的失真。
-
训练和测试:BRISQUE 模型通常在一个大规模的图像数据库上进行训练,以学习特征与图像质量之间的关系。然后,该模型可以用于对新的图像进行质量评估,而不需要参考图像。
BRISQUE 在图像处理、图像传输和图像增强等领域中有广泛的应用。它是一种无参考图像质量评估方法,可以自动化地检测和评估图像的失真,从而帮助改进图像处理和传输任务的质量控制。
相关文章:
不同的图像质量评价指标(IQA)
一、NR-IQA 这是一种方法不是指标 “Non-Reference Image Quality Assessment”(NR-IQA)是一种图像质量评价(Image Quality Assessment, IQA)方法,通常用于评估图像的质量,而无需使用参考图像(…...
linux命令-tar 命令
tar 命令 tar 命令一般用来打包文件 ,文件夹 , 方便传输使用. tar命令是在Linux和UNIX系统上用于创建、查看和提取tar归档文件的工具。它通常与gzip一起使用,以便在创建归档文件时进行压缩或解压缩。 -c: 创建归档文件 -x: 提取文件 -z: 告诉 tar 命令使用 gzip …...
selenium元素定位---ElementClickInterceptedException(元素点击交互异常)解决方法
1、异常原因 在编写ui自动化时,执行报错元素无法点击:ElementClickInterceptedException 具体报错:selenium.common.exceptions.ElementClickInterceptedException: Message: element click intercepted: Element <span class"el-c…...
05_css选择器的使用
一、css选择器的类型 1、标签选择器 用法:直接写 写标签名:标签名{} 示例: <!-- <!DOCTYPE html --> <html><head><meta charset"utf-8"><title>标签选择器</title><style type"te…...
跨平台游戏引擎 Axmol-2.0.0 正式发布
下载 https://github.com/axmolengine/axmol/releases/tag/v2.0.0 更新日志 添加实验性的 WebAssembly 构建支持(WebGL 2.0),由 nowasm 贡献 已知问题 WebGL context lost 尚未处理 部署在 github pages 的 demo 可快速预览,注意:由于 Git…...
面试总结归纳
面试总结 注:循序渐进,由点到面,从技术点的理解到项目中的使用, 要让面试官知道,我所知道的要比面试官更多 一、Mybatis 为ORM半持久层框架,它封装了JDBC,开发时只需要关注sql语句就可以了…...
【刷题篇】贪心算法(一)
文章目录 分割平衡字符串买卖股票的最佳时机Ⅱ跳跃游戏钱币找零 分割平衡字符串 class Solution { public:int balancedStringSplit(string s) {int lens.size();int cnt0;int balance0;for(int i0;i<len;i){if(s[i]R){balance--;}else{balance;}if(balance0){cnt;}}return …...
从维基百科通过关键字爬取指定文本内容
通过输入搜索的关键字,和搜索页数范围,爬出指定文本内内容并存入到txt文档。代码逐行讲解。 使用re、res、BeautifulSoup包读取,代码已测,可以运行。txt文档内容不乱码。 import re import requests from bs4 import BeautifulS…...
pytorch代码实现之SAConv卷积
SAConv卷积 SAConv卷积模块是一种精度更高、速度更快的“即插即用”卷积,目前很多方法被提出用于降低模型冗余、加速模型推理速度,然而这些方法往往关注于消除不重要的滤波器或构建高效计算单元,反而忽略了特征内部的模式冗余。 原文地址&am…...
一文解析-通过实例讲解 Linux 内存泄漏检测方法
一、mtrace分析内存泄露 mtrace(memory trace),是 GNU Glibc 自带的内存问题检测工具,它可以用来协助定位内存泄露问题。它的实现源码在glibc源码的malloc目录下,其基本设计原理为设计一个函数 void mtrace ()&#x…...
Spring Boot常用的参数验证技巧和使用方法
简介 Spring Boot是一个使用Java编写的开源框架,用于快速构建基于Spring的应用程序。在实际开发中,经常需要对输入参数进行验证,以确保数据的完整性和准确性。Spring Boot提供了多种方式来进行参数验证,并且可以很方便地集成到应…...
手机+卫星的科技狂想
最近硬件圈最火热的话题之一,应该就是突然上线、遥遥领先的华为Mate 60 Pro了。 其中,CPU和类5G网速是怎么实现的,是大家特别关注的问题。相比之下,卫星通话这个功能,讨论度就略低一些(没有说不火的意思&am…...
便捷查询中通快递,详细物流信息轻松获取
在如今快节奏的生活中,快递已成为人们生活中不可或缺的一部分。然而,快递查询却常常让人头疼,因为需要分别在不同的快递公司官网上进行查询,耗费时间和精力。为了解决这个问题,固乔科技推出了一款便捷的快递查询助手&a…...
ARM接口编程—Interrupt(exynos 4412平台)
CPU与硬件的交互方式 轮询 CPU执行程序时不断地询问硬件是否需要其服务,若需要则给予其服务,若不需要一段时间后再次询问,周而复始中断 CPU执行程序时若硬件需要其服务,对应的硬件给CPU发送中断信号,CPU接收到中断信号…...
适用于Linux的Windows子系统(PHP搭建lmap、redis、swoole环境)
目录 前言 一、Windows安装Linux子系统 二、Ubuntu搭建PHP开发环境 1.PHP 安装 2.Apache2 安装 3.MySQL安装 4.Redis安装 5.Swoole安装 总结 前言 系列分为三章(从安装到项目使用): 一、适用于Linux的Windows子系统(系统安装步骤…...
Vue3+Ts+Vite项目(第十二篇)——echarts安装与使用,vue3项目echarts组件封装
概述 技术栈:Vue3 Ts Vite Echarts 简介: 图文详解,教你如何在Vue3项目中引入Echarts,封装Echarts组件,并实现常用Echarts图例 文章目录 概述一、先看效果1.1 静态效果1.2 动态效果 二、话不多数,引入 …...
hive location更新hive元数据表详解
1.hive location更新方式 一、通过修改表DDL: alter table table_name set location hdfs://nm:8020/table_path 二、直接修改hive 的meta info: update DBS set DB_LOCATION_URI replace(DB_LOCATION_URI,"oldpath","newpath")update SDS…...
【SpringBoot】统一功能处理
目录 🎃1 拦截器 🎀1.1 拦截器的代码实现 🎨1.2 拦截器的实现原理 🧶2 拦截器应用——登录验证 🦺3 异常统一处理 🎭4 统一数据返回格式 🧤4.1 为什么需要统一数据返回格式 🧣4.2 统…...
分布式数据库-架构真题(二十六)
构件组装成软件系统的过程分为三个不同的层次()。(2018年) 初始化、互连和集成连接、集成和演化定制、集成和扩展集成、扩展和演化 答案:C (2018年)CORBA服务端构件模型中,&#x…...
MyWebServer开发日记-socket
打算把 tinyWebServer 重写成跨平台(Windows and Linux)的。 这里首先需要跨平台的 sokcet,主要参考 尹圣雨 的 TCP/IP 网络编程 来着: 代码写的有些笨,欢迎批评: 首先是一个 socket 类,主要…...
基于算法竞赛的c++编程(28)结构体的进阶应用
结构体的嵌套与复杂数据组织 在C中,结构体可以嵌套使用,形成更复杂的数据结构。例如,可以通过嵌套结构体描述多层级数据关系: struct Address {string city;string street;int zipCode; };struct Employee {string name;int id;…...
Vim 调用外部命令学习笔记
Vim 外部命令集成完全指南 文章目录 Vim 外部命令集成完全指南核心概念理解命令语法解析语法对比 常用外部命令详解文本排序与去重文本筛选与搜索高级 grep 搜索技巧文本替换与编辑字符处理高级文本处理编程语言处理其他实用命令 范围操作示例指定行范围处理复合命令示例 实用技…...
(十)学生端搭建
本次旨在将之前的已完成的部分功能进行拼装到学生端,同时完善学生端的构建。本次工作主要包括: 1.学生端整体界面布局 2.模拟考场与部分个人画像流程的串联 3.整体学生端逻辑 一、学生端 在主界面可以选择自己的用户角色 选择学生则进入学生登录界面…...
Nginx server_name 配置说明
Nginx 是一个高性能的反向代理和负载均衡服务器,其核心配置之一是 server 块中的 server_name 指令。server_name 决定了 Nginx 如何根据客户端请求的 Host 头匹配对应的虚拟主机(Virtual Host)。 1. 简介 Nginx 使用 server_name 指令来确定…...
SpringCloudGateway 自定义局部过滤器
场景: 将所有请求转化为同一路径请求(方便穿网配置)在请求头内标识原来路径,然后在将请求分发给不同服务 AllToOneGatewayFilterFactory import lombok.Getter; import lombok.Setter; import lombok.extern.slf4j.Slf4j; impor…...
RSS 2025|从说明书学习复杂机器人操作任务:NUS邵林团队提出全新机器人装配技能学习框架Manual2Skill
视觉语言模型(Vision-Language Models, VLMs),为真实环境中的机器人操作任务提供了极具潜力的解决方案。 尽管 VLMs 取得了显著进展,机器人仍难以胜任复杂的长时程任务(如家具装配),主要受限于人…...
react菜单,动态绑定点击事件,菜单分离出去单独的js文件,Ant框架
1、菜单文件treeTop.js // 顶部菜单 import { AppstoreOutlined, SettingOutlined } from ant-design/icons; // 定义菜单项数据 const treeTop [{label: Docker管理,key: 1,icon: <AppstoreOutlined />,url:"/docker/index"},{label: 权限管理,key: 2,icon:…...
计算机系统结构复习-名词解释2
1.定向:在某条指令产生计算结果之前,其他指令并不真正立即需要该计算结果,如果能够将该计算结果从其产生的地方直接送到其他指令中需要它的地方,那么就可以避免停顿。 2.多级存储层次:由若干个采用不同实现技术的存储…...
高保真组件库:开关
一:制作关状态 拖入一个矩形作为关闭的底色:44 x 22,填充灰色CCCCCC,圆角23,边框宽度0,文本为”关“,右对齐,边距2,2,6,2,文本颜色白色FFFFFF。 拖拽一个椭圆,尺寸18 x 18,边框为0。3. 全选转为动态面板状态1命名为”关“。 二:制作开状态 复制关状态并命名为”开…...
Netty自定义协议解析
目录 自定义协议设计 实现消息解码器 实现消息编码器 自定义消息对象 配置ChannelPipeline Netty提供了强大的编解码器抽象基类,这些基类能够帮助开发者快速实现自定义协议的解析。 自定义协议设计 在实现自定义协议解析之前,需要明确协议的具体格式。例如,一个简单的…...
