• [CVPR2020]Learning to Cartoonize Using White-box Cartoon Representations


    标题:Learning to Cartoonize Using White-box Cartoon Representations

    链接:https://openaccess.thecvf.com/content_CVPR_2020/papers/Wang_Learning_to_Cartoonize_Using_White-Box_Cartoon_Representations_CVPR_2020_paper.pdf

    本文的目的是将任意图片迁移到卡通风格。作者通过专业知识将卡通风格解耦为不同的指标,并分别约束这几个指标,从而使得网络生成的卡通效果可控,因此称之为“白盒”(对比其他的风格迁移方法大都是端到端的黑盒结构,内部基本不可控)。

    模型结构

    可以很明显的看出来模型就分为三个部分,整洁度(surface),结构(structure)和细节(texture)。

    整洁度

    动漫区别于真实照片最大的部分就是细节过分平滑。比如在动画片中人的面部大都就是简简单单的一个肉色,没有任何变化,而电影中人脸上通常能看到明显的纹理。因此作者这里将这种“平滑”单独拎出来作为一个指标,我这里称之为画面的整洁度。

    为了保证画面的整洁,作者使用了何凯明的Guided Image Filter(?)对图片进行了去噪。为了约束画面的整洁度,作者使用了一个判别器,用于区分卡通图的去噪结果和原图的去噪结果,目的自然就是让原图趋近于卡通图的整洁度。

    结构

    结构即图像大致的颜色分布。这一部分作者使用了Selective Search方法来无监督的将图像分割为相连的语意块,然后按照特定公式对每个区域的中位数和平均值进行加权求和,进而得到每个语意块的颜色。这样就得到了最终的结构图。

    为了约束这一点,作者将卡通图得到的结构图与输入图得到的结构图都丢到VGG里,然后计算feature之间的l2距离作为结构损失。

    细节

    作者认为细节就是指与颜色和亮度无关的信息。因此作者提出了随机颜色偏移算法(random color shift algorithm),简单来说就是随机的加强和减弱每个通道和黑白图的强度,进而通过loss移除颜色对图像的影响。而这里loss的构建也使用了一个判别器,用于约束卡通图细节与真实图细节的隐空间分布。

    额外的loss

    除了以上三个模块,作者为了进一步提升效果还使用了三个不同的辅助性loss:

    total variantion loss:用于平滑图片以及去除高频噪声

    content loss:用于保证输入与输出的语义一致性

    interp loss:用于对风格进行不需要训练的插值。

  • 相关阅读:
    Netty3-NIO与零拷贝
    EF7学习指南
    基于51单片机的智能病房呼叫系统的设计与实现
    基于Chisel的FPGA流水灯设计
    数据要素与多元市场主体融合机制研究
    守护安全|AIRIOT城市天然气综合管理解决方案
    Java项目:springboot电影推荐网站
    swift-基础
    阿里云Windows服务器(ECS)下tomcat安装SSL证书及配置HTTPS
    Java客户端_zkclient库操作Zookeeper
  • 原文地址:https://blog.csdn.net/wrk226/article/details/126515065