【学习笔记】图像质量评估方法 (5.生成图像是否符合用户要求)

前置笔记

【学习笔记】图像质量评估方法 (1.拍摄的照片)

【学习笔记】图像质量评估方法 (2.图像压缩、超分辨率、去噪、修复的评价)

【学习笔记】图像质量评估方法 (3.对拍摄照片做美化、4.生成图像的真实性评价)

5 生成图像是否符合用户要求

本节方法主要用于评价文本到图像生成(Text-to-Image Generation,T2I)的图文一致性(Text-Image Alignment) 。

与之前介绍的 FID、KID、CMMD 不同,它们不只是评价生成图像是否真实,而是重点判断:生成图像是否正确呈现了 Prompt 要求的物体、属性、数量、位置关系和复杂语义。

5.1 R-precision:基于图文检索的匹配评价

核心思想:如果生成图像真正符合对应文本,那么在多个候选文本中,正确文本应该与图像最相似。

R-precision 原本是信息检索指标,2018 年的 AttnGAN 将它用于文本到图像生成评价。

如何计算?

假设模型根据文本 T + T^+ T+生成图片 I I I。然后准备一组候选文本:

T = { T + , T 1 − , ⋯   , T K − } \mathcal{T}=\{T^+,T_1^-,\cdots,T_{K}^-\} T={T+,T1−,⋯,TK−}

其中包含1 条正确描述和K条不匹配的干扰描述。将图片和文本分别映射到特征空间:

v = f image ( I ) , t j = f text ( T j ) v=f_\text{image}(I),\ t_j=f_\text{text}(T_j) v=fimage(I), tj=ftext(Tj)

计算余弦相似度:

s ( I , T j ) = v ⊤ t j ∥ v ∥ ∥ t j ∥ s(I,T_j)=\frac{v^\top t_j}{\|v\|\|t_j\|} s(I,Tj)=∥v∥∥tj∥v⊤tj

然后根据相似度排序,观察正确描述是否排在第一位。当只有一个正确描述时:

R @ 1 = 1 N ∑ i = 1 N 1 rank ( T i + ) = 1 R@1=\frac{1}{N}\sum_{i=1}^N\mathbf{1}\\text{rank}(T_i\^+)=1 R@1=N1i=1∑N1rank(Ti+)=1

例如评估 100 张生成图片,其中 82 张图片的正确文本排名第一,则 R @ 1 = 0.82 R@1=0.82 R@1=0.82。

结果:越高越好。

局限性: 评分依赖候选文本集合的难度。如果干扰文本差异很大,即使图像存在属性错误,正确文本仍可能排名第一。

5.2 CLIP相似度:图文语义空间的一致性

核心思想:使用 CLIP 将图片和文本映射到同一个语义空间,直接计算两者的相似程度。

提取图像与文本特征

对生成图像 I I I和输入文本 T T T,分别进行编码:

v = f CLIP img ( I ) , t = f CLIP text ( T ) v=f_\text{CLIP}^\text{img}(I),\ t=f_\text{CLIP}^\text{text}(T) v=fCLIPimg(I), t=fCLIPtext(T)

计算余弦相似度:

S CLIP ( I , T ) = v ⊤ t ∥ v ∥ 2 ∥ t ∥ 2 S_\text{CLIP}(I,T)=\frac{v^\top t}{\|v\|_2\|t\|_2} SCLIP(I,T)=∥v∥2∥t∥2v⊤t

两者越相似,通常表示图像与文本在 CLIP 特征空间中越接近。

实际也经常使用 CLIPScore 的形式:

CLIPScore = 2.5 max ⁡ ( S CLIP , 0 ) \text{CLIPScore}=2.5\max(S_\text{CLIP},0) CLIPScore=2.5max(SCLIP,0)

局限性

假设 Prompt 是:A red cat beside a blue dog.

模型生成:A blue cat beside a red dog.

图片中仍然包含:猫、狗、红色、蓝色,因此图文整体特征可能仍然非常接近。但实际上,颜色与物体的绑定关系完全错误。

这种现象反映了 CLIP 相似度的主要问题:

它善于判断整体语义相关性,但对属性绑定、精确数量、空间关系和否定条件等细节可能不够敏感。

结果:越高越好,但不是严格校准的 Prompt 满足概率。

5.3 TIFA:使用视觉问答验证具体事实

TIFA(Text-to-Image Faithfulness Evaluation with Question Answering)发表于 ICCV 2023。

核心思想:将复杂 Prompt 拆解成多个可以验证的问题,再通过视觉问答模型检查生成图像是否满足这些要求。

将 Prompt 转换成问题

例如 Prompt:A red cat sitting on a chair, with two apples on the table.

首先使用语言模型生成问题及标准答案:

问题 期望答案
What animal is present? Cat
What color is the cat? Red
Is the cat sitting on a chair? Yes
How many apples are on the table? Two

使用 VQA 模型检查图像

对于生成图像 I I I,将每个问题输入视觉问答模型:

a ^ i = f VQA ( I , q i ) \hat{a}i=f\text{VQA}(I,q_i) a^i=fVQA(I,qi)

其中 q i q_i qi为第 i i i个问题, a i a_i ai是根据 Prompt 得到的标准答案, a ^ i \hat{a}_i a^i是VQA 模型根据图像预测的答案。

最终使用答案准确率作为评分:

S TIFA = 1 N ∑ i = 1 N 1 a \^ i = a i S_\text{TIFA}=\frac{1}{N}\sum_{i=1}^N\mathbf{1}\\hat{a}_i=a_i STIFA=N1i=1∑N1a\^i=ai

主要特点

相比 CLIP 相似度,TIFA 能够明确指出图片在哪里不符合 Prompt。这使它具有较好的可解释性。

不过,TIFA 的准确性取决于问题生成和 VQA 模型的能力;如果视觉问答模型把苹果数错了,最后也会产生错误评价。

5.4 T2I-CompBench:组合语义能力评价

T2I-CompBench 是 NeurIPS 2023 提出的组合式文本到图像生成评测基准。

核心思想:专门评价生成模型是否能够正确组合多个物体、属性及关系。

它包含 6,000 条组合式 Prompt,覆盖六个细分类别。

类别 评价内容
Color Binding 颜色是否绑定正确
Shape Binding 形状是否绑定正确
Texture Binding 纹理是否绑定正确
Spatial Relationships 左、右、上、下等空间关系
Non-Spatial Relationships 动作、交互等非空间关系
Complex Compositions 多种属性和关系的复杂组合

这里需要注意:T2I-CompBench 是一个 Benchmark,并不是所有任务都使用同一个评分公式。

属性绑定:使用 BLIP-VQA

例如:A green bench and a red car.

拆解为两个独立问题:是否存在绿色长椅?是否存在红色汽车?

使用 BLIP-VQA 估计两个问题回答 Yes 的概率:

p 1 = P ( Yes ∣ I , q 1 ) , p 2 = P ( Yes ∣ I , q 2 ) p_1=P(\text{Yes}|I,q_1),\ p_2=P(\text{Yes}|I,q_2) p1=P(Yes∣I,q1), p2=P(Yes∣I,q2)

然后得到: S binding = 0.36 S_\text{binding}=0.36 Sbinding=0.36

即使其中一个属性符合要求,只要另一项匹配度较低,总分也会明显下降。

空间关系:使用目标检测

例如:A cat to the left of a dog.

使用 UniDet 检测两个物体的 Bounding Box,得到中心坐标:

c cat = ( x c , y c ) , c dog = ( x d , y d ) c_\text{cat}=(x_c,y_c),\ c_\text{dog}=(x_d,y_d) ccat=(xc,yc), cdog=(xd,yd)

对于"猫位于狗左边",一个基本判断条件是: x c < x d x_c<x_d xc<xd

原方法还考虑水平位移是否大于垂直位移,以及两个检测框是否存在明显重叠,以提高判定的可靠性。

复杂组合评价

原论文针对复杂 Prompt 设计了 3-in-1 评价,将三种指标结合:

S complex = S CLIP + S BLIP-VQA + S UniDet 3 S_\text{complex}=\frac{S_\text{CLIP}+S_\text{BLIP-VQA}+S_\text{UniDet}}{3} Scomplex=3SCLIP+SBLIP-VQA+SUniDet

其中三项分别关注整体语义、属性绑定和空间关系。这是对原论文三类指标组合思想的表达,具体实现需要遵循相应的评分规则与尺度。

结果:各项指标一般越高越好。

T2I-CompBench 的优势是可以单独比较生成模型的各种组合能力,而不仅仅给出一个总体图文相似度。

5.5 GenEval:基于目标检测的组合生成评估

核心思想:使用目标检测和分割模型,直接检查图片是否满足一系列可明确验证的物体条件。

与 T2I-CompBench 相比,GenEval 更强调利用物体检测结果,对结构化 Prompt 进行相对明确的正确性判定。

检测图像中的物体

例如 Prompt:Two red cars and one blue bicycle.

使用目标检测模型:

D ( I ) = { ( b i , c i , m ) } i = 1 N D(I)=\{(b_i,c_i,m_)\}_{i=1}^N D(I)={(bi,ci,m)}i=1N

其中, b i b_i bi为目标的 Bounding Box, c i c_i ci为目标类别, m i m_i mi为目标分割 Mask。

然后依次检查:是否检测到汽车?汽车数量是否为 2?汽车颜色是否正确?是否有一辆自行车?自行车颜色是否为蓝色?

使用明确规则判断

例如数量检测可以写成 S count = 1 N car = 2 S_\text{count}=\textbf{1}N_\\text{car}=2 Scount=1Ncar=2;

颜色检测: S color = 1 c \^ car = red S_\text{color}=\textbf{1}\\hat{c}_\\text{car}=\\text{red} Scolor=1c\^car=red;

空间关系可以根据检测框中心计算: S position = 1 x A \< x B S_\text{position}=\textbf{1}x_A\ Sposition=1xA\。

实际 GenEval 还会考虑检测置信度、分割 Mask 以及目标与属性之间的对应关系。

最终评分

对一个 Prompt,可以把不同条件组合起来:

S ( I , T ) = ∏ j = 1 K 1 C j ( I ) S(I,T)=\prod_{j=1}^K\textbf{1}C_j(I) S(I,T)=j=1∏K1Cj(I)

其中 C j C_j Cj表示第 j j j项条件成立。该公式反映了 GenEval 常用的严格判定思想:只有规定的条件全部满足,该样本才算成功。

对整个测试集:

S GenEval = 1 N ∑ i = 1 N S ( I i , T i ) S_\text{GenEval}=\frac{1}{N}\sum_{i=1}^N S(I_i,T_i) SGenEval=N1i=1∑NS(Ii,Ti)

官方报告还会提供单物体、双物体、计数、颜色、位置及颜色归属等子类别的结果,并汇总为总体评分。

结果:越高越好。

GenEval 的优势在于规则相对明确、可复现性较好,适合比较生成模型的基础组合能力。但它依赖检测模型的准确性,而且对抽象概念、复杂动作或逻辑推理的覆盖有限。

5.6 VQAScore:通过一次视觉问答直接评分

VQAScore 出自 ECCV 2024 的论文 Evaluating Text-to-Visual Generation with Image-to-Text Generation。

核心思想:不将 Prompt 拆成大量问题,而是直接询问 VQA 模型:这张图像是否完整呈现了给定文本?

构造图像理解问题

假设 Prompt 为:A red cat to the left of a blue dog.

构造问题:Does this image show "A red cat to the left of a blue dog"? Please answer yes or no.

将问题与生成图像一起输入视觉问答模型。

直接计算 Yes 的生成概率

VQAScore 的主要公式非常简单:

S VQA = P θ ( Yes ∣ I , q ( T ) ) S_\text{VQA}=P_\theta(\text{Yes}|I,q(T)) SVQA=Pθ(Yes∣I,q(T))

其中: I I I为生成图像, T T T为原始 Prompt, q ( T ) q(T) q(T)为根据 Prompt 构造的 Yes/No 问题, P θ P_\theta Pθ为VQA 模型生成 Yes 的条件概率。

这里取的是模型生成 Yes 的概率,不必然等于只对 Yes/No 两个选项重新归一化后的二分类概率。

VQAScore 还提出并使用了适合这一任务的 CLIP-FlanT5 模型,以加强图像和问题之间的交互。

结果:越高越好。

它对复杂 Prompt 的评价能力在论文实验中优于一些传统 CLIP 相似度方法,但最终仍受 VQA 模型理解能力和概率校准情况影响。

5.7 多模态模型评审:基于规则的复杂条件检查

核心思想:将图片、Prompt 和明确评分标准一起交给多模态大模型,让模型逐条检查要求是否满足,并给出评分与证据。

这并不是一个具有统一公式的单一算法,而是一类持续发展的评价框架。

构建明确的评分规则

假设 Prompt 为:A red cat sitting to the left of a blue dog, with exactly two apples on a table.

可以要求评审模型根据以下规则评分:

是否存在猫与狗?猫是否为红色、狗是否为蓝色?猫是否位于狗左边?桌子上是否恰好有两个苹果?

每个问题的分数权重为25%。

让多模态大模型观察图像后,分别输出每项条件的满足程度。可以抽象成:

s i = f θ ( I , T , C i ) s_i=f_\theta(I,T,C_i) si=fθ(I,T,Ci)

其中:

C i C_i Ci为第 (i) 项评分规则, s i s_i si为该规则的满足程度, f θ f_\theta fθ为多模态评审模型。

汇总评分

一种常见的实现方式是使用加权平均:

S MLLM = ∑ i = 1 K w i s i ∑ i = 1 K w i S_\text{MLLM}=\frac{\sum_{i=1}^K w_is_i}{\sum_{i=1}^K w_i} SMLLM=∑i=1Kwi∑i=1Kwisi

其中 w i w_i wi表示每项规则的重要性。

注意,这只是规则化多模态评审的一种通用数学表达,不是所有 MLLM-as-a-Judge 方法共同采用的标准公式。还可以设置硬约束,例如:只要人物数量错误,就直接判定该图像没有完全遵循 Prompt,而不是允许其他条件的高分抵消该错误。

多模态评审的优势

相比前面的方法,它可以尝试判断更加复杂的要求:

  • 物体之间的交互关系。
  • 多重条件是否同时满足。
  • 图像中是否出现了不应存在的元素。
  • 是否满足否定条件。
  • 复杂的空间和逻辑关系。
  • 文本与图像之间是否存在矛盾。

还可以让模型给出每项判断的文字证据,从而提高可解释性。

主要局限

多模态大模型本身可能产生幻觉,或者错误理解细节。

因此,较可靠的实践通常会结合结构化评分规则、图像证据、模型间一致性检查和人工标注校准,而不是完全依赖一句"请给这张图像打分"。

相关推荐
2601_961146201 小时前
实验室用等离子表面处理设备处理新能源汽车塑料件的一点记录
笔记·汽车·设备
知产xiao_xin2 小时前
专利主体及权利归属
经验分享·笔记·知识产权
学电子她就能回来吗2 小时前
LeetCode Hot 100|普通数组专题学习笔记(零基础版)
笔记·算法·leetcode
2601_965384262 小时前
从微生态与流体力学视角看:“口水臭”的系统级成因与清洁边界
经验分享·笔记
卿卿的产品经理日记3 小时前
【AI产品经理实战】Day 38|try-except 踩坑实录:报错是数据
人工智能·笔记·python·学习·产品经理
keyipatience3 小时前
TypeScript学习(1)
前端·javascript·学习·typescript·html·css3
深圳市快瞳科技有限公司3 小时前
人车准入审核的工程实现:证件OCR、联网查验与业务决策
计算机视觉·ocr·vin码查询·车辆证件ocr·车辆信息查验·汽车ocr
lazy H4 小时前
【计算机网络】第 2 篇:一条数据如何穿过网络?彻底理解数据封装与解封装
网络·经验分享·后端·学习·计算机网络
我命由我123454 小时前
软件工程概念 - 可插拔性
java·后端·学习·java-ee·系统架构·软件工程·学习方法