XingGAN for Person Image Generation(人体姿势生成笔记)

1.概述

XingGAN中的生成器由两个代分支组成,分别对人的外观和形状信息进行建模。此外,我们提出了两个新的块,以交叉的方式有效地传递和更新人的形状和外观嵌入,从而相互改进。
数据集:Market 1501 ,DeepFashion

2.介绍

基于论文:Progressive Pose Attention Transfer for Person Image Generation
实现目标:输入一个人物图像和几个理想姿势生成具有真实感的人物图像。
存在的问题:由于某些原因,在生成的人物图像中存在不令人满意的方面和视觉伪影。

  • 1.堆叠几个卷积层生成形状特征的注意图,然后利用生成的注意图集中突出外观特征。卷积操作是一次处理一个局部邻域的构建块,因此不能捕捉外观和形状特征之间的联合影响。
  • 2.论文中的注意力地图仅通过单一的模态产生,例如:姿势,导致对两种模态(姿势和图像)的相关性不够准确,从而误导图像的生成。
    XingGAN的简要介绍
  • GAN组成部分:Xing生成器,形状引导鉴别器,外观引导鉴别器。
  • Xing生成器的组成部分:基于外观的姿势引导生成器分支(SA),基于姿势的外观引导生成器分支(AS),共同注意力融合模块(CAF)。如上图所示。

3.相关工作(具体实现)

输入参数:源图片(Is),源姿势(Ps),目标姿势(Pt)
目标:源图片(Is),转移目标姿势(Pt)合成为一个图片(It’)

3.1SA分支:

  • 组成:一个图像编码器和一系列的SA块。
  • 操作:将源图像Is第一次注入到图像编码器中产生外观编码F0I,该编码器在该实验中包含两层卷积层。SA分支中包含一些级联的SA块,这些块主要在AS分支的引导下渐进式地更新初始的外观编码到最后的外观编码FTI。每一个SA块有一个确定的网络结构。上图为第t块,输入为:维度为chw的外观编码Ft-1I和形状编码Ft-1P,输出为:维度为chw的外观编码FtI
  • 具体的解释:提供维度为chw的外观编码Ft-1I,首先将其注入到一个卷积层去产生一个新的维度为chw的外观编码C.然后将C重塑成维度为c*(hw)的外观编码。同时将SA块接收到的维度为chw的形状编码Ft-1P注入到卷积层产生一个新的维度为chw的形状编码B,并重塑成维度为c*(hw)的形状编码。在这之后,将对C的转置和B进行矩阵的相乘运算并应用一个Softmax层产生一个维度为(hw)(hw)的关联矩阵P。对于矩阵中的pij的计算如下式:

    注:此式中的pij用于衡量B中第i个位置在外观编码C的j位置的的影响。
    随后我们将Ft-1I注入到卷积层产生一个新的维度为c
    hw的外观编码A并将其重塑成维度为c(hw)。然后将其与P的转置进行矩阵乘法运算并对结果重塑使得维度为chw。最后将该结果与一个尺度参数进行乘积操作并与Ft-1I执行元素方式的求和操作,得到精炼后的维度为chw的外观编码FtI,公式如下:

    注:式中的α初始为0,逐渐提升。

3.2AS分支:

  • 组成:一个图像编码器和一系列的AS块。
  • 操作:源姿势Ps和目标姿势Pt首先在通道维度进行连接,然后注入到姿势编码器中产生一个初始的形状代表F0P。姿势编码器和图像编码器具有相同的网络结构。如上图所示,输入为:维度为chw的形状编码Ft-1P和外观编码Ft-1I,输出为:维度为chw的形状编码FtP
  • 具体的解释:首先将提供形状编码Ft-1P注入到一个卷积层以产生一个新的形状编码H,然后重塑为维度为c*(hw)。同时,将AS块接收到的外观编码Ft-1I注入到一个卷积层以产生一个新的外观编码E,然后重塑成为维度为c*(hw)。随后,执行H的转置与E的矩阵乘积操作并应用一个Softmax层以产生另一个关联矩阵Q,qji的计算公式如下:

    注:qji用来衡量E的第i个位置在H的第j个位置上的影响。
    与此同时,将Ft-1P注入到一个卷积层以产生一个新的形状编码D并重塑成维度为c*(hw),然后进行D与Q的转置的矩阵乘法运算并将结果重塑到维度为chw,最后将该结果与一个尺度参数β进行乘积操作并与Ft-1P执行元素方式的求和操作,再与外观编码FtI进行通道方式的连接操作并将结果注入到一个卷积层以获得更新后的形状编码FtP,公式如下:

    注:β是一个参数,Concat代表进行通道方式的连接操作。

3.3 CAF

组成部分:产生中间结果和共同注意力地图
共同注意映射(co-attention map):用于从中间的产生和输入图像进行空间地选择并结合生成最后的输出。
操作:首先首先将FTI和FTP信道轴叠加,然后将它们输入一组滤波器{WAi, bAi}i=12N+1 中,生成相应的2N+1共同注意映射,如下图所示:

注:Softmax是一个通道方式Softmax方法用来进行归一化操作
最后共同注意映射从每一个中间的产生和输入图像中进行通道方式选择:

产生中间结果:分别于最终的外观编码和形状编码解码生成,并且有一个Tanh激活函数如下图所示:

3.4 优化目标

主要有三种损失进行优化:对抗损失Lgan,像素损失Ll1,感知损失Lp

XingGAN for Person Image Generation(人体姿势生成笔记)相关推荐

  1. 【开源】对基于图像背景的字体生成、人体姿势预测、关键点检测、超分辨率等探讨...

    本文推荐本周值得关注的已开源论文,包含文本识别.关键点检测.人体姿势预测.Transformer.图像超分辨率等 10 篇.       01       Font Style that Fits a ...

  2. CVPR 2021 | 天津大学提出PISE:形状与纹理解耦的人体图像生成与编辑方法

    ©PaperWeekly 原创 · 作者|张劲松 学校|天津大学硕士生 研究方向|计算机视觉 导读:由单张人体图像来生成任意视角任意姿态下的图像,是近几年视觉领域研究的热点问题.现有方法无法实现灵活的 ...

  3. 无需3D运动数据训练,最新人体姿势估计方法达到SOTA | CVPR 2020

    作者 | Muhammed Kocabas 译者 | 刘畅 出品 | AI科技大本营(ID:rgznai100) 人体的运动对于理解人的行为是非常重要的.尽管目前已经在单图像3D姿势和动作估计方面取得 ...

  4. 基于 OpenCV 和 OpenPose 的棒球挥杆人体姿势估计

    点击上方"小白学视觉",选择加"星标"或"置顶" 重磅干货,第一时间送达 介绍 人体姿态估计是一个非常有趣的领域,如果我们能够将诸如棒球摆动 ...

  5. CVPR2020|无需3D运动数据训练,最新SOTA人体姿势估计方法

    点击我爱计算机视觉标星,更快获取CVML新技术 作者 | Muhammed Kocabas 译者 | 刘畅 出品 | AI科技大本营(ID:rgznai100) 人体的运动对于理解人的行为是非常重要的 ...

  6. 广告行业中那些趣事系列26:基于PoseNet算法的人体姿势相似度识别

    摘要:本篇从理论到实践分享了基于PoseNet算法的人体姿势相似度识别项目.首先介绍了项目背景,因为部门搞活动需要大家去模仿夸张搞笑的表情和姿势来提升活动的可玩性,所以需要利用CV算法对图片进行相似度 ...

  7. 关键点定位︱四款人体姿势关键点估计论文笔记

    一.三款模型 几款模型目前来看的精度:CPM < DeeperCut < CMU OpenPose < AlphaPose 模型 大体框架 多人估计的应对措施 CPM CPM是一个c ...

  8. 从DeepNet到HRNet,这有一份深度学习“人体姿势估计”全指南

    大数据文摘出品 来源:blog.nanonets 作者:栾红叶.熊琰.周家乐.钱天培 从DeepNet到HRNet,这有一份深度学习"人体姿势估计"全指南 几十年来,人体姿态估计( ...

  9. 基于人体姿势估计的舞蹈检测(AI Dance based on Human Pose Estimation)

    人体姿势骨架以图形格式表示人的方向.本质上,它是一组坐标,可以连接起来描述人的姿势.骨架中的每个坐标都被称为一个部分(或一个关节,或一个关键点).两个部分之间的有效连接称为一对(或分支).下面是一个人 ...

最新文章

  1. gcc的安装----rpm包安装顺序
  2. mysql 导入导出 csv_mysql 导出导入数据 -csv
  3. A星算法(VC版源码)
  4. c++如何防止一个类被其他类继承?
  5. hibernate的查询方式
  6. linux系统移植到arm芯片难吗,Linux操作系统怎么移植到ARM平台?
  7. 测试用例设计方法之选择原则
  8. ecshop小京东后台首次上传商品不能上传相册的解决办法
  9. 为什么我们不能坚持到底?
  10. ARCore:ARCore的初体验
  11. 一、微信小程序拼团项目简介
  12. jenkins API 使用postman调用
  13. java实现OCR图文识别Tess4j,高准确率高效率
  14. 财务分析与决策——利润表
  15. 项立刚:FDD牌照发放 难改行业大格局
  16. seo vue 动态路由_基于Vue SEO的四种方案
  17. java-非对称(RSA)签名加密(springboot框架)
  18. skycc供求信息发布软件 V8.5正式版
  19. 什么是中间层,什么是三层网络结构
  20. NI labview2014/2015/2016的超快速入门教程之使用VI模板(培训一)

热门文章

  1. 如何用WGDI进行共线性分析(一点五)
  2. 小程序报错 TypeError: Cannot read property getPreloadAdUnitIds ?
  3. 关于cpu-z,everest,IntelCoreSeries的一些认识
  4. TCL电子软件开发生活记录(更新中)
  5. html设置背景图片高度,如何使用CSS设置背景图像的大小?
  6. office 所有后缀对应的 content-type
  7. 商人过河c语言编程,商人过河问题C语言源码.c
  8. 中小公司IT经理面试指南
  9. 计算机运维方向要考什么证,IT运维项目经理考的证
  10. TASK1_高等数学