【计算机视觉】FusionGAN

embedded/2024/11/13 22:57:33/

1. FusionGAN论文阅读

abreheret/FusionGAN: Pytorch implementation of "Generating a Fusion Image: One’s Identity and Another’s Shape"

1.1. WHY

在现实世界中,将对象或人物转换为期望的形状是一种常用技术,但现有的图像翻译方法在处理身份和形状时存在不足,如现有图像翻译学习映射函数时缺乏明确的形状匹配损失函数,可能导致形状无法保持。因此需要新的框架来有效处理身份和形状问题,以生成融合图像,例如将一个人的身份与另一个人的姿势相结合,将合成眼图像转换为真实图像并保持形状,或实现不同风格图像(如照片、素描、卡通)之间的转换等。

1.2. HOW

1.2.1. FusionGAN

基于生成对抗网络(GANs)提出新网络,可从多个无标签图像集中获取两个输入图像,生成具有一个输入图像身份和另一个输入图像形状的融合图像,且能同时在多个图像数据集上进行无监督训练。具体地,对于两个输入图像$x=(I_x,S_x)$$y=(I_y,S_y)$,目标是生成融合图像$G(x=(I_x,S_x),y=(I_y,S_y))=(I_x,S_y)$,即输出图像具有x的身份和y的形状。网络不限于两个图像集之间的转换,可用于多个无标签图像集。这里身份可视为图像集级别的特征(如在 VGG YouTube Pose 数据集里是人物身份),形状为实例级别的特征(如人物姿势)。

1.2.2. 损失函数

身份损失$L_{I}$

通过判别器$D$区分输入对是真实对还是生成对,使生成图像的分布与第一个输入图像所属集合的分布相似,以获取图像$x$的身份。采用$L_2$损失替代负对数似然,让生成器$G$最大化


http://www.ppmy.cn/embedded/136973.html

相关文章

【极限编程(XP)】

极限编程(XP)简介 定义与核心价值观:极限编程(Extreme Programming,XP)是一种轻量级、敏捷的软件开发方法。它强调团队合作、客户参与、持续测试和快速反馈等价值观,旨在提高软件开发的效率和质…

高性能分布式缓存Redis-数据管理与性能提升之道

一、持久化原理 Redis是内存数据库,数据都是存储在内存中,为了避免进程退出导致数据的永久丢失,需要定期将Redis中的数据以某种形式(数据或命令)从内存保存到硬盘;当下次Redis重启时,利用持久化文件实现数据恢复。除此…

请描述一下Spring Boot中的@SpringBootApplication注解的工作原理?

SpringBootApplication 是Spring Boot中最常用的注解之一,它极大地简化了Spring Boot应用的创建过程。 通过这个注解,开发者可以快速地启动一个Spring Boot应用,而无需编写大量的配置代码。 实际上,SpringBootApplication 是多个…

虚拟现实技术在旅游行业的应用

💓 博客主页:瑕疵的CSDN主页 📝 Gitee主页:瑕疵的gitee主页 ⏩ 文章专栏:《热点资讯》 虚拟现实技术在旅游行业的应用 虚拟现实技术在旅游行业的应用 虚拟现实技术在旅游行业的应用 引言 虚拟现实技术概述 定义与原理…

VSCode进阶之路

VSCode进阶之路:从入门到高效率开发 🚀 Hey,朋友们好!还在为VSCode的海量功能感到眼花缭乱吗?咱们一起来解锁VSCode的超神技能吧! 开篇碎碎念 🎯 第一次用VSCode时,就像个闯入魔法世…

SpringBoot开发——Spring Boot 3种定时任务方式

文章目录 一、什么是定时任务二、代码示例1、 @Scheduled 定时任务2、多线程定时任务3、基于接口(SchedulingConfigurer)实现动态更改定时任务3.1 数据库中存储cron信息3.2 pom.xml文件中增加mysql依赖3.3 application.yaml文件中增加mysql数据库配置:3.4 创建定时器3.5 启动…

springboot 整合mybatis

一&#xff0c;引入MyBatis起步依赖 <!--mybatis依赖--><dependency><groupId>org.mybatis.spring.boot</groupId><artifactId>mybatis-spring-boot-starter</artifactId><version>3.0.0</version></dependency> 二&a…

高级java每日一道面试题-2024年11月02日-Redis篇-Redis6之后为什么开始支持多线程?

如果有遗漏,评论区告诉我进行补充 面试官: Redis6之后为什么开始支持多线程? 我回答: 在 Java 高级面试中&#xff0c;讨论 Redis 6 引入多线程的原因及其背后的动机是一个很好的话题。Redis 6 开始引入多线程主要是为了解决 I/O 瓶颈问题&#xff0c;提高 Redis 的整体性能…