深假实验室
欢迎来到 DeepFakeLab,这是您通过高级生成模型探索令人兴奋的图像处理领域的首选存储库。
⚡ 概述
DeepFakeLab 旨在帮助用户利用最先进的生成技术将功能无缝集成到图像中。无论您是有兴趣增强面部表情、尝试创意定制,还是深入计算机视觉的教育探索,这个存储库都能满足您的需求。
?创建矢量特征
在这里,我们将计算关于我们想要插入的属性的向量。在此,我们计算秃头向量属性并将其插入到另一个图像中。这个技巧的数学原理非常简单!首先,为特征 C 定义子集 True,换句话说:
$$mathcal{A}_{[C==1]} = lbrace phi(x) | x_c == 1 rbrace$$
在哪里 $phi(x) = z in mathbb{R}^{32}$ (我的自动编码器的编码器)。并且,对于 C 为 False 的情况,同样的想法:
$$mathcal{B}_{[C==0]} = lbrace phi(x) | x_c == 0 rbrace$$
在这种情况下,我们将对其中一个子集进行欠采样以使这句话成立:
$$ | mathcal{A} | sim | mathcal{B} | $$
然后,我们为每个子集计算两个质心:
$$ Cm_{A} = frac{sum_{x in mathcal{A}} phi(x)}{n(mathcal{A})} $$
$$ Cm_{B} = frac{sum_{x in mathcal{B}} phi(x)}{n(mathcal{B})} $$
最后,我们可以提取向量属性:
$$vec v = vec Cm_{A} - vec Cm_{B}$$
?插入功能
在这种情况下,我们已经有了一个向量特征(耶!),因此我们可以使用简单的数学运算合并此特征:
$$FakeImage = psi(phi(x) + sum_{i} t_i cdot vec v_i)$$
在哪里 $x in B$ , $t in mathbb{R}$和 $psi$是解码器!
主要特点
神经网络架构
基本上,我们将使用卷积变分自动编码器(VAE)、生成对抗网络(GAN)和扩散模型(DM)。
我们探索另一种辅助损失函数,使用索贝尔滤波器从图像中捕获高频特征!
$$L_{sobel} = gamma cdot |f(I) - f(psi(phi(I)))|$$
在哪里 $f(I) = sqrt{(G_x ast I)^{2} + (G_y ast I)^{2}}$ , 和 $gamma in mathbb{R}$ 。
因此,如果我们使用 VAE 架构,我们的损失将是:
$$mathcal{L} = L_{重建} + text{DKL} + gamma cdot L_{sobel}$$
$$mathcal{L} = |I - psi(phi(I))|^{2} -frac{1}{2} sum_{i=1}^{N} left(1 + log(sigma_i^2) - mu_i^2 - sigma_i^2right) + gamma cdot |f(I) - f(psi(phi(I)))|$$
$$mathcal{L} = |I - psi(phi(I))|^{2} + mathbb{E}_{phi(z | x)} left[ log frac{ phi(z | x)}{psi(z)} right] + gamma cdot |f(I) - f(psi(phi(I)))|$$
(GAN 和 DM 仍在构建中......⌛)
多个实例之间的转换
在这种情况下,我们将使用一个简单的技巧来创建两个实例之间的转换。这个想法很简单:
- 计算每个实例的向量编码: $phi(x_1)$和 $phi(x_2)$
- 在这两个向量之间创建一个线性空间: $mathcal{L} = lbrace phi(x_1) + alpha cdot (phi(x_2) - phi(x_1)) | alpha in [0, 1] rbrace$
- 选择一个子集 $mathcal{L}$ ,用$mathcal{L} {sub}$表示并插入解码器:$psi(mathcal{L} {sub})$
- 最后,我们将在两个(或更多)实例之间进行转换!
❓ 使用方法
按照笔记本中提供的教程探索 DeepFakeLab 的功能。通过分享您的见解、改进或创意项目来为社区做出贡献。
?贡献
强烈鼓励社区贡献。无论您是修复错误、添加新功能还是增强现有功能,您的输入对于使 DeepFakeLab 成为强大且多功能的图像处理工具都很有价值。
?免责声明
该存储库旨在用于教育和创意目的。提醒用户在使用 DeepFakeLab 时考虑道德准则和法律影响。维护者对任何误用或意外后果不承担任何责任。
?开始使用
使用 DeepFakeLab 深入探索生成图像处理的世界。克隆存储库,按照设置说明进行操作,并解锁创意表达的新维度!
快乐探索!