[CPNet]-理想亲和图的生成以及作用——Blank

文中理想亲和图由Ground truth下采样后,又采用One-Hot编码方式生成。

[CPNet]-理想亲和图的生成以及作用——Blank_第1张图片

其中Ground Truth为原图片大小,其中每个像素位置不再是像素值,而是该像素所在的类别。


文中One-Hot编码的例子如下:

[CPNet]-理想亲和图的生成以及作用——Blank_第2张图片

图中最左边H*W大小的矩阵由Ground Truth下采样生成。One-Hot编码过程如下:

首先图像中一共由三类图像0、1、2。于是可将这三类分别重新编码为0 0 1,0 1 0,1 0 0,(如果为四类就是0001,0010,0100,1000,以此类推)然后将重新编码的矩阵进行竖向排列并乘它的转置得到理想亲和图:

[CPNet]-理想亲和图的生成以及作用——Blank_第3张图片

 通过以上的内容我们已经知道理想亲和图是怎样计算的,但是这样的计算过程并不能让我们理解理想亲和图的真正作用,下面我介绍一种新的方式来生成理想亲和图:

我们先将经过下采样的Ground Truth直接使用竖向拉直和横向拉直操作。

[CPNet]-理想亲和图的生成以及作用——Blank_第4张图片

得到两个矩阵,然后我们使用类似与矩阵乘法的方式对矩阵进行计算。不过在计算每两个元素的时候,不再是计算乘法,而是看两者是否相等。相等为1,不等为0。最后得到:

[CPNet]-理想亲和图的生成以及作用——Blank_第5张图片

 (为了大家方便理解,我对以上三个矩阵分别命名为A、B、C)

根据矩阵计算乘法法则,C矩阵的(1,1)(也就是第一行第一列)这个元素由矩阵A的(1,1),和矩阵B的(1,1)计算得到,我们不计算两者之间的乘法,而是看是否相等,发现相等,则C矩阵的(1,1)就为1。以此计算就也可得出理想亲和图。

通过这种计算方式我们就能很容易的得出理想亲和图的代表的意义就是:

理想亲和图的第i列就是标签图中第i个像素与其他像素的类别关系,例如亲和图中第一列,就是第一个元素与其他元素的关系,(由于每个元素都跟肯定与自己的类别相等,于是亲和图的对角线为1。)如亲和图中第七行第二列为1,就表明像素中第7个像素与第2个像素为同一类。


经过以上的内容,可以清楚的理解亲和图是怎么计算出来的,与亲和图代表的意义是什么。下面简单介绍一下亲和图在网络模型中是怎么发挥作用的。

网络模型中使用亲和图与上下文先验图计算损失。这样的目的是使先验图尽可能的靠近亲和图,我们在理想情况下考虑。将亲和图代替先验图计算,就可以得知先验图的作用。网络中使用先验图与经过处理的图像矩阵相乘。就可以将属于同一类的像素的值变成相同的值(这个值就等于这一类全部像素的像素值),这样就实现了纹理相关性。消除了图像纹理模型的印象。如下图:

[CPNet]-理想亲和图的生成以及作用——Blank_第6张图片

 我们可以发现使用CPNet后,我们将图像中属于同一类像素的像素值变得相同。

你可能感兴趣的:(计算机视觉,机器学习,神经网络)