AIGC-Visual Anagrams: Generating Multi-View Optical Illusions with Diffusion Models-论文+代码精读

Visual Anagrams: Generating Multi-View Optical Illusions with Diffusion Models

CVPR2023

论文链接:https://arxiv.org/abs/2311.17919
开源网站:https://dangeng.github.io/visual_anagrams/

多视图错觉
多视图错觉

MOTIVATION

  • 文章解决的问题是合成多视点光学幻觉图像,即在进行翻转或旋转等变换时改变外观的图像。
  • 这类多视点光学幻觉因其挑战视觉感知的排列方式而长期吸引着感知学的学生和艺术家。
  • 创造这些幻觉需要准确建模然后颠覆视觉感知,而现有方法通常依赖于对人类感知的显式模型。

CONTRIBUTION

  • We present a simple yet effective method for generating multi-view optical illusions using diffusion models.
  • We derive a precise description of the set of views that our method supports and provide empirical evidence that these views work.
  • We consider practical design decisions, crucial to optimizing the quality of generated illusions, and report ablations on our choices.
  • We provide quantitative and qualitative results, showcasing both the efficacy and flexibility of our method.

RELATED WORKS

Diffusion Models

  1. 扩散模型:扩散模型是一类通过迭代将噪声样本转换为数据分布样本的生成模型。这些模型通过估计噪声样本中的噪声并去除这些噪声来工作。扩散模型的一个显著应用是文本条件图像合成,其中模型不仅需要处理噪声图像,还需要处理文本提示。
  2. 文本条件扩散模型:这些模型利用分类器自由引导(classifier-free guidance)来提高生成图像的质量。通过结合无条件噪声估计和条件噪声估计,可以生成更高质量的图像。

Computational Optical Illusions

  1. 感知测试:光学幻觉作为理解人类和机器感知的试验场。Freeman等人通过局部应用具有连续变化相位的滤波器来创建恒定运动的幻觉。这种方法依赖于局部相位变化被解释为全局运动的观察。
  2. 混合图像:Oliva等人提出了一种方法,通过将一个图像的高频与另一个图像的低频混合,使图像在不同观看距离下改变外观。这种方法利用了人类感知的多尺度特性。
  3. 3D场景中的伪装:Chu等人通过重新纹理化场景中的物体并通过亮度约束来保持物体的显著特征,从而在场景中伪装物体。其他工作则在3D场景中从多个视点伪装物体。

Diffusion Illusions

  1. 扩散模型的艺术应用:艺术家和研究人员已经开始探索使用扩散模型创造幻觉的潜力。例如,Ugleh利用一个为生成QR码微调的模型来创建图像,这些图像的全局结构微妙地匹配给定模板图像。

  2. 文本指定的幻觉:与使用图像指定幻觉的方法不同,本文系统地研究了如何从现成的扩散模型零样本生成多视点幻觉,并使用文本而不是图像来指定幻觉。

  3. Score Distillation Sampling (SDS):Burgert等人使用SDS来创建与不同视图的提示对齐的图像。尽管这种方法理论上支持更广泛的视图,但使用SDS会导致显著降低的图像质量,并且需要显式优化,导致采样时间较长。

  4. Latent Diffusion Models:Tancik的工作通过从不同视图和提示的交替噪声估计中采样,创建了旋转幻觉。尽管技术方法相似,但本文通过实验评估了多种类型的幻觉,并提供了哪些视图被支持的理论分析。

METHODS

Text-conditioned Diffusion Models

在这里插入图片描述
作者使用的是预训练的扩散模型。与此同时,为了在另一个输入(例如文本提示)上调节扩散模型,作者使用了classifier-free guidance。通过此方法将无条件噪声估计(通常通过传递空文本提示作为条件来获得)和条件噪声估计组合在一起:
ϵ t C F G = ϵ θ ( x t , t , ∅ ) + γ ( ϵ θ ( x t , t , y ) − ϵ θ ( x t , t , ∅ ) ) \epsilon_{t}^{\mathrm{CFG}}=\epsilon_{\theta}(\mathbf{x}_{t},t,\varnothing)+\gamma(\epsilon_{\theta}(\mathbf{x}_{t},t,y)-\epsilon_{\theta}(\mathbf{x}_{t},t,\varnothing)) ϵtCFG=ϵθ(xt,t,)+γ(ϵθ(xt,t,y)ϵθ(xt,t,))
∅ \varnothing :表示空串的嵌入,也可以替换成负面提示(negative prompts)
γ \gamma γ:是控制引导强度的参数,用于平衡两种噪声估计的贡献
ϵ θ ( x t , t , y ) \epsilon_{\theta}(\mathbf{x}_{t},t,y) ϵθ(xt,t,y):神经网络估计的 x t x_t xt的噪声, y y y是一些条件,例如文本提示, t t t是扩散过程中的时间步长

Parallel Denoising(并行去噪)

并行去噪即同时对多个角度生成的图片降噪,以下是步骤归纳:

  • 先采用一组 N N N 个提示 y i y_i yi

    • 每个提示与一个视图函数(view function) v i v_i vi(·) 相关联(一 一对应的关系)
    • this function applies a transformation to an image.,These transformations may be, for example, an identity function, an image flip, or a permutation of pixels
  • 然后对于给定的扩散模型 ϵ θ ϵ_θ ϵθ(·) 和部分去噪图像 x t x_t xt,针对每个视图 v i v_i vi,将来自不同视图的噪声估计组合成单个噪声估计 ϵ ~ t = 1 N ∑ i v i − 1 ( ϵ θ ( v i ( x t ) , y i , t ) ) . \tilde{\epsilon}_{t}=\frac{1}{N}\sum_{i}v_{i}^{-1}\left(\epsilon_{\theta}(v_{i}(\mathbf{x}_{t}),y_{i},t)\right). ϵ~t=N1ivi1(ϵθ(vi(xt),yi,t)).

    • 我们使用每个视图 v i v_i vi对噪声图像 x t x_t xt进行转换,估计转换后图像中的噪声,然后将 v i − 1 v_i ^{-1} vi1应用于估计噪声,以便将其转换回原始视图。
    • 为了引入CFG,我们只需将估计值 ϵ θ ( v i ( x t ) , y i , v t ) \epsilon_{\theta}(v_{i}(\mathbf{x}_{t}),y_i,v_t) ϵ<
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值