LAPGAN
引言
在原始 GAN和CGAN中,还只能生成 16*16, 28*28, 32*32 这种低像素小尺寸的图片。而LAPGAN首次实现 64*64 的图像生成。与其一下子生成这么大的图像 (包含信息量这么多),不如一步步由小到大,这样每一步生成的时候,可以基于上一步的结果,而且还只需要“填充”和“补全”新图片所需要的那些信息。
LAPGAN的思想
LAPGAN通过级联方式改进GAN以实现从粗略到精细图片的生成。网络的级联思想对后续的研究产生了极大的影响。LAPGAN使用高斯金字塔进行下采样,使用拉普拉斯金字塔进行上采样
假设图像 I I I的长度和宽度均为 j j j,对于图像 I 0 = ( j , j ) I_0=(j,j) I0=(j,j),下采样得到的图像尺寸为( j / 2 , j / 2 ) j/2,j/2) j/2,j/2),上采样得到的图像尺寸为(2 j j j,2 j j j)。对于图像进行连续 k k k 次的下采样,可以获得一系列图像 I 1 = ( j / 2 , j / 2 ) , I 2 = ( j / 4 , j / 4 ) , . . . , I k = I_1=(j/2,j/2),I_2=(j/4,j/4),...,I_k= I1=(j/2,j/2),I2=(j/4,j/4),...,Ik= ( j / 2 k , j / 2 k ) : (j/2^k,j/2^k): (j/2k,j/2k):
其中, g ( I ) g(I) g(I)表示图像的高斯金字塔。在得到高斯金字塔之后,拉普拉斯金字塔可表示如下:
h
k
=
L
k
(
I
)
=
G
k
(
I
)
−
u
(
G
k
+
1
(
I
)
)
=
I
k
−
u
(
I
k
+
1
)
\boldsymbol{h}_k=\mathcal{L}_k(\boldsymbol{I})=\mathcal{G}_k(\boldsymbol{I})-u\big(\mathcal{G}_{k+1}(\boldsymbol{I})\big)=\boldsymbol{I}_k-u(\boldsymbol{I}_{k+1})
hk=Lk(I)=Gk(I)−u(Gk+1(I))=Ik−u(Ik+1)
其中,拉普拉斯金字塔的第
k
k
k层等于高斯金字塔的第
k
k
k层
g
k
(
I
)
g_k(I)
gk(I)减去高斯金字塔第(k+1)层的上采样
u
(
g
k
+
1
(
I
)
)
u(g_{k+1}(I))
u(gk+1(I))
输入噪声z 3 ′ _{3^{\prime}} 3′ 经 G 3 G_{3} G3生成 I ~ 3 \tilde{I}_{3} I~3,上采样得到 I 2 I_{2} I2,使用 I 2 I_{2} I2作为条件输入 G 2 , G_{2,} G2, 同时输入噪声z 2 _{2} 2生成差分图像 h ~ 2 \tilde{h}_{2} h~2, 添加到 I 2 I_{2} I2中生成 I ~ 2 \tilde{I}_{2} I~2。
LAPGAN将条件对抗生成网络CGAN集成到拉普拉斯金字塔结构中:
I
~
k
=
u
(
I
~
k
+
1
)
+
h
~
k
=
u
(
I
~
k
+
1
)
+
G
k
(
z
k
,
u
(
I
~
k
+
1
)
)
\tilde{\boldsymbol{I}}_k=u(\tilde{\boldsymbol{I}}_{k+1})+\tilde{\boldsymbol{h}}_k=u(\tilde{\boldsymbol{I}}_{k+1})+G_k(\mathbf{z}_k,u(\tilde{\boldsymbol{I}}_{k+1}))
I~k=u(I~k+1)+h~k=u(I~k+1)+Gk(zk,u(I~k+1))
其中,
G
k
G_k
Gk表示第
k
k
k个卷积神经网络,也就是生成器,高斯金字塔第
k
k
k层的重建等于它的第
(
k
+
1
)
(k+1)
(k+1)层上采样
u
(
I
~
k
+
1
)
u(\tilde{I}_{k+1})
u(I~k+1)加上拉普拉斯金字塔的第
k
k
k层
h
~
k
\widetilde{h}_k
h
k。除了最高层的生成器之外,其余生成器
G
0
G_0
G0、
G
1
…
G
k
−
1
G_1\ldots G_{k-1}
G1…Gk−1都是采用上一级的上采样和噪声作为联合输入。上采样的结果就是LAPGAN中的条件变量。
Coarse-to-fine的视觉效果