【任务指标】Matting任务里的Gradient与Connectivity指标

Matting任务里的Gradient与Connectivity指标

主要背景

核心任务

Matting任务就是把α(不透明度, 也就是像素属于前景的概率)、F(前景色)和B(背景色)三个变量给解出来.

C为图像当前可观察到的颜色, 这是已知的. 问题是一个等式解不出三个变量, 因此就必须引入额外的约束使这个方程可解, 这个额外的约束就是由用户指定的trimap(有人译为三元图)图, 或者是仅仅在前景和背景画几笔的草图(scribbles).

主要的手段

  • 传统方法: Poisson Matting/Bayes Matting/Closed Form Matting/KNN Matting
    • Color sampling方法, 以Bayesian Matting为代表, 通过对前景和背景的颜色采样构建高斯混合模型, 但是这种方法需
      要高质量的trimap, 不易获取
    • Propagation的方法, 根据像素亲和度将用户绘制的信息传播到不确定像素, 以Poisson Matting和KNN matting为代
      表, 但是也不是自动抠图
  • CNN方法:
    • Natural Image Matting Using Deep CNN(ECCV 2016)
    • Deep Automatic Portrait Matting(ECCV 2016)
    • Automatic Portrait Segmentation for Image Stylization(2016)
    • Deep Image Matting(CVPR 2017)
    • Semantic Human Matting(2018)等

主要评价指标

来自于论文: Christoph Rhemann, Carsten Rother, Jue Wang, Margrit Gelautz, Pushmeet Kohli, Pamela Rott. A Perceptually Motivated Online Benchmark for Image Matting. Conference on Computer Vision and Pattern Recognition (CVPR), June 2009.

  • Gradient
  • Connectivity
  • SAD
  • MSE

一些相关的术语, 来自参考链接[1]
SAD(Sum of Absolute Difference)= SAE(Sum of Absolute Error)即绝对误差和
SATD(Sum of Absolute Transformed Difference)即hadamard变换后再绝对值求和
SSD(Sum of Squared Difference)= SSE(Sum of Squared Error)即差值的平方和
MAD(Mean Absolute Difference)= MAE(Mean Absolute Error)即平均绝对差值
MSD(Mean Squared Difference)= MSE(Mean Squared Error)即平均平方误差

大致内容

在这里插入图片描述

因为若是仅仅考虑SAD和MSE指标, 在和人类判断的对比中, 发现, 并不能很好地反映人类的实际判断标准. 为此文章引入了两个新的指标, 梯度和连通性. 先来说下连通性.

Connectivity

在这里插入图片描述

这个图基于matting任务中获得的alpha matte, 这是一个灰度图, 表示的就是前面的公式里的α.

由于这里的图上出现了几个参数, αiΩ,di,li,i, 下面结合具体的公式来理解.

i(φ(αi,Ω)φ(αi,Ω))p

这里的p是自定义参数. 具体见后.

该公式给出了连通性误差的计算方法, 这里是对整个预测出来的alpha matte图和对应的真值的图的对应的差异的累和. 这里的关键是里面的φ(αi,Ω)函数.

首先要解释这里的Ω, 它表示的是对于预测结果图和真值共有的最大的值为1的连通区域, 被称为"源域(source region)", 也就是在上图中红线区域大致表示的范围. 这里的φ计算的是有着透明度αi的像素i, 与源域的连通度(degree of connectivity), 当其为1则认为该像素与源域全连通, 等于0表示完全不连通. 另一个加星号的表示真值图上的对应像素的连通度的计算. 二者计算差异, 来累计误差. 好的结果应该有着更低的误差, 更相似的连通情况.

公式里的li表示像素i四连通到源域所需要的最大阈值, 也就是上图中的虚线, 用它对alpha matte进行二值化, 正好处于使像素i与源域连通(实际需要四连通)/不连通的临界. 若是对于一个像素而言, 它的l=α, 那么就可以认为它与源域是全连通的.

而公式里的di如图所示, 表示的就是像素i处的α值和对应的临界阈值li的差距.

φ(αi,Ω)=1(λiδ(diθ)di)

这里的θ是自定义参数, 具体见后. 它用在指示函数δ里作为一个阈值, 来忽略小于它的di的情况, 认为小于它就已经是全连通了, 使得误差计算更为灵活.

其中的λi=1|K|kKdistk(i)用来对di进行加权, 这里的K表示liαi之间的离散α值的集合, distk计算了设置为阈值k时, 对于像素i距离最近的连通到源域的像素, 与像素i之间的标准化欧式距离. 实际情况中, 远离连通区域的像素, 获得的权重λ也应该相应会更大些, 这样导致得到的φ会更小些, 也就是认为连通度更小.

Gradient

主要计算的是预测的alpha matte α和ground truth α的之间的梯度差异, 定义如下:

i(αiαi)q

这里的q是自定义参数. 具体见后

这里的αiαi表示的是对应的alpha matte的归一化梯度, 这是通过将matte与具有方差σ的一阶Gaussian导数滤波器进行卷积计算得到的. 二者计算差异, 进而累计损失. 总体越相似, 指标值越小.

这里的方差σ也是自定义参数, 具体见后

关于参数的选择

对于这里存在四个需要人工设置的参数: θ,p,q, 在参考文章3中, 有进一步的测试与设定, 文章最终选择了这样的设定: σ=1.4,q=2,θ=0.15,p=1.

参考文章

  1. https://zhidao.baidu.com/question/1701594942558730300.html
  2. http://alphamatting.com/index.html
  3. Christoph Rhemann, Carsten Rother, Jue Wang, Margrit Gelautz, Pushmeet Kohli, Pamela Rott. A Perceptually Motivated Online Benchmark for Image Matting. Conference on Computer Vision and Pattern Recognition (CVPR), June 2009.`
posted @   lart  阅读(2089)  评论(0编辑  收藏  举报
编辑推荐:
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
阅读排行:
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了
· winform 绘制太阳,地球,月球 运作规律
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理
· 上周热点回顾(3.3-3.9)
· 超详细:普通电脑也行Windows部署deepseek R1训练数据并当服务器共享给他人
历史上的今天:
2017-03-30 转换后缀表达式
点击右上角即可分享
微信分享提示