Arbitrary Style Transfer in Real-time with Adaptive Instance Normalization
Arbitrary Style Transfer in Real-time with Adaptive Instance Normalization
2019-10-10 10:50:19
Officical Torch Code: https://github.com/xunhuang1995/AdaIN-style
Unofficial PyTorch Code: https://github.com/naoto0804/pytorch-AdaIN
Unofficial PyTorch Code: https://github.com/irasin/Pytorch_Adain_from_scratch
1. Background and Motivation:
本文提出一种快速的可以适应任何一种 style 的图像转换技术。首先先来回归一下常见的几种 Normalization 技术:
1). Batch Normalization:
给定输入的一个 batch x,BN 对每一个特征通道进行归一化操作:
其中,gamma 和 beta 是从数据中学习的仿射参数,mu 和 delta 是均值和方差,是分别沿着 batch size 和 spatial dimension 方向对每一个特征通道进行的操作:
BN 在训练的时候利用 mini-batch 统计来学习,在 inference 的阶段就用流行的统计来替换他们,这样就导致了 training 和 inference 的不一致。后续也有很多对该问题的改进。
2). Instance Normalization:
后来出现的 IN layers 可以显著的改善 style transfer 的性能,即:
与 BN layer 不同的是,此处的均值和方差是分别对 channel 和 each sample 沿着空间维度计算得到的:
另外的一个与 BN 的不同之处是:training 和 inference 是一致的。
3). Conditional Instance Normalization:
该方法对每一种 style 都学习一种参数,即:
惊奇的是,该方法可以产生完全不同 style 的图像,但是用的是同一组网络参数,仅仅是 IN layer 的 affine parameters 不同。
2. Interpreting Instance Normalization:
略
3. Adaptive Instance Normalization:
既然 IN 可以根据 affine parameters 将输入归一化为 single style,那么,有没有可能,我们给定多种自适应的 affine transformations 来生成任意给定类型的图像呢?基于该动机,作者对 IN 的技术进行了拓展,提出了 Adaptive Instance Normalization (AdaIN)。AdaIN 接收一张 content input X 和 一张 style input Y,并且简单地对 X 进行 channel wise mean and variance 使其可以匹配 Y。与 BN, IN, CIN 不同,AdaIN 没有可学习的 affine parameters。其根据输入的 style image,自适应的生成 affine parameters:
本文将 normalized content input 进行 scale 处理,然后用 \mu(y) 进行 shift。这些统计都是沿着 spatial locations 进行的。
4. Experimental Results:
Arbitrary Style Transfer in Real-time with Adaptive Instance Normalization的更多相关文章
- AdaptIS: Adaptive Instance Selection Network
AdaptIS: Adaptive Instance Selection Network 2019-09-19 12:58:07 Paper: https://arxiv.org/pdf/1909.0 ...
- (转) Supercharging Style Transfer
Supercharging Style Transfer Wednesday, October 26, 2016 Posted by Vincent Dumoulin*, Jonathon Shl ...
- Image Style Transfer:多风格 TensorFlow 实现
·其实这是一个选修课的present,整理一下作为一篇博客,希望对你有用.讲解风格迁移的博客蛮多的,我就不过多的赘述了.讲一点几个关键的地方吧,当然最后的代码和ppt也希望对你有用. 1.引入: 风格 ...
- 项目总结四:神经风格迁移项目(Art generation with Neural Style Transfer)
1.项目介绍 神经风格转换 (NST) 是深部学习中最有趣的技术之一.它合并两个图像, 即 内容图像 C(content image) 和 样式图像S(style image), 以生成图像 G(ge ...
- DeepLearning.ai-Week4-Deep Learning & Art: Neural Style Transfer
1 - Task Implement the neural style transfer algorithm Generate novel artistic images using your alg ...
- 课程四(Convolutional Neural Networks),第四 周(Special applications: Face recognition & Neural style transfer) —— 2.Programming assignments:Art generation with Neural Style Transfer
Deep Learning & Art: Neural Style Transfer Welcome to the second assignment of this week. In thi ...
- Art: Neural Style Transfer
Andrew Ng deeplearning courese-4:Convolutional Neural Network Convolutional Neural Networks: Step by ...
- Perceptual Losses for Real-Time Style Transfer and Super-Resolution and Super-Resolution 论文笔记
Perceptual Losses for Real-Time Style Transfer and Super-Resolution and Super-Resolution 论文笔记 ECCV 2 ...
- pytorch实现style transfer
说是实现,其实并不是我自己实现的 亮出代码:https://github.com/yunjey/pytorch-tutorial/tree/master/tutorials/03-advanced/n ...
随机推荐
- html5调用手机震动
在h5里面里面,浏览器对象有个vibrate属性.顾名思义,翻译过来就是震动的意思,这个api属性方法如下: 要调用的例子 if (window.navigator.vibrate) window.n ...
- SAP技术 - How to create a CDS redirect view for a given database table
Scenario Suppose we have a database table A, and then we create a CDS redirect view B for it, then e ...
- prometheus学习系列六: Prometheus relabel配置
relabel_config 重新标记是一个功能强大的工具,可以在目标的标签集被抓取之前重写它,每个采集配置可以配置多个重写标签设置,并按照配置的顺序来应用于每个目标的标签集. 目标重新标签之后,以_ ...
- Tensorflow中保存模型时生成的各种文件区别和作用
假如我们得到了如下的checkpoints, 上面的文件主要可以分成三类:一种是在保存模型时生成的文件,一种是我们在使用tensorboard时生成的文件,还有一种就是plugins这个文件夹,这个是 ...
- 【比赛游记】THUSC2019酱油记
往期回顾:THUWC2019酱油记 时间过得真快呐-- 上次在 THUSC 手玩 AI 的情景还未走远,明天却要迎来全新一年的赛事了-- 掐指一算,作为一个真正的 OIer 的时光也不多了啊 day ...
- beta冲刺(4/7)
作业格式 课程名称:软件工程1916|W(福州大学) 作业要求:项目beta冲刺(团队) 团队名称: 那周余嘉熊掌将得队 作业目标:beta(4/7) 队员学号 队员姓名 博客地址 备注 221600 ...
- appium报错:An unknown server-side error occurred while processing the command. Original error: Could not proxy command to remote server. Original error: Error: read ECONNRESET
Appium Desktop版本:1.9.0 xcode版本:9.4.1 测试机:iPhone7 11.3系统 问题描述:在xcode上的produc的text运行是可以将WebDriverAgen ...
- 浙大PAT 2-10. 海盗分赃——经典博弈
题意 P个海盗偷了D颗钻石后分赃($3 \leq P, D\leq 100$),采用分赃策略: 从1号开始,提出一个分配金币的方案,如果能够得到包括1号在内的绝对多数(即大于半数)同意,则执行该方案, ...
- webapi HttpGet标签
该标签可以指定路由如HttpGet["Test"],以前用的很顺,后来加了Area后,按照area/controller/Test的路径去访问报404,原因是HTTPGet指定路由 ...
- PHP获取一年有多少周和每周开始和结束日期
/*PHP获取当前日期是第几周和本周开始日期和本周结束日期*/ //$now = '2018-11-13';周二 public function getNowTimeInfo($now) { $str ...