Project Icon

DCLGAN

无监督图像转换的双重对比学习方法 实现更真实几何变换

DCLGAN是一种新型无监督图像到图像转换模型,采用双重对比学习方法。相比CycleGAN,它能实现更真实的几何变换;相比CUT,具有更高的稳定性和性能。DCLGAN适用于多种图像转换任务,如猫狗互换和马斑马互换。项目提供了预训练模型和使用指南,便于研究者进行实验和评估。

arXiv | 视频 | [幻灯片](https://github.com/JunlinHan/DCLGAN/blob/main/imgs/DCLGAN_slide.pptx

对偶对比学习对抗生成网络(DCLGAN)

我们提供了DCLGAN的PyTorch实现,这是一个简单而强大的无监督图像到图像转换模型。与CycleGAN相比,DCLGAN能够进行几何变换并获得更真实的结果。与CUT相比,DCLGAN通常更稳健且性能更优。其变体SimDCL(相似度DCLGAN)还通过新的相似度损失避免了模式崩溃。

DCLGAN是一个通用模型,可以执行各种图像到图像转换任务。在我们测试过的大多数任务中,它都达到了最先进的性能。

[用于无监督图像到图像转换的对偶对比学习](https://github.com/JunlinHan/DCLGAN/blob/main/imgs/han_dualcontrastive.pdf
韩俊林、Mehrdad Shoeiby、Lars Petersson、Mohammad Ali Armin
DATA61-CSIRO和澳大利亚国立大学
发表于NTIRE,CVPRW 2021。

我们的流程非常直观。主要思想是采用双重设置,使用两个编码器来捕捉两个不同域的可变性。

示例结果

非配对图像到图像转换

定性结果:

定量结果:

更多视觉结果:

先决条件

Python 3.6或更高版本。

有关软件包,请参阅requirements.txt。

入门

  • 克隆此仓库:
git clone https://github.com/JunlinHan/DCLGAN.git
  • 安装PyTorch 1.6或更高版本以及其他依赖项(如torchvision、visdom、dominate、gputil)。

    对于pip用户,请输入命令pip install -r requirements.txt

    对于Conda用户,您可以使用conda env create -f environment.yml创建一个新的Conda环境。

DCLGAN和SimDCL训练与测试

  • 下载grumpifycat数据集
bash ./datasets/download_cut_dataset.sh grumpifycat

数据集将下载并解压到./datasets/grumpifycat/

训练DCL模型:

python train.py --dataroot ./datasets/grumpifycat --name grumpycat_DCL 

或训练SimDCL模型:

python train.py --dataroot ./datasets/grumpifycat --name grumpycat_SimDCL --model simdcl

我们还支持CUT:

python train.py --dataroot ./datasets/grumpifycat --name grumpycat_cut --model cut

以及fastCUT:

python train.py --dataroot ./datasets/grumpifycat --name grumpycat_fastcut --model fastcut

和CycleGAN:

python train.py --dataroot ./datasets/grumpifycat --name grumpycat_cyclegan --model cycle_gan

检查点将存储在./checkpoints/grumpycat_DCL/

  • 测试DCL模型:
python test.py --dataroot ./datasets/grumpifycat --name grumpycat_DCL

测试结果将保存在以下位置的html文件中:./results/grumpycat_DCL/latest_test/

DCLGAN、SimDCL、CUT和CycleGAN

与之前的模型相比,DCLGAN是一种更稳健的无监督图像到图像转换模型。我们的性能通常优于CUT和CycleGAN。

SIMDCL是一个不同的版本,它旨在解决模式崩塌问题。我们建议将其用于小规模、不平衡的数据集。

数据集

下载CUT/CycleGAN/pix2pix数据集并学习如何创建自己的数据集。

或者在此处下载:https://people.eecs.berkeley.edu/~taesung_park/CycleGAN/datasets/。

在准备CityScape数据集时,请使用Pillow=5.0.0运行prepare_dataset.py以保持一致性。

应用预训练的DCL模型并评估

我们提供以下预训练的DCLGAN模型:

猫 <-> 狗:https://drive.google.com/file/d/1-0SICLeoySDG0q2k1yeJEI2QJvEL-DRG/view?usp=sharing

马 <-> 斑马:https://drive.google.com/file/d/16oPsXaP3RgGargJS0JO1K-vWBz42n5lf/view?usp=sharing

CityScapes:https://drive.google.com/file/d/1ZiLAhYG647ipaVXyZdBCsGeiHgBmME6X/view?usp=sharing

下载预训练模型,解压并将其放入./checkpoints目录(如果您没有运行训练代码,可能需要自行创建checkpoints文件夹)。

使用示例:下载Horse2Zebra数据集并使用以下命令测试模型:

python test.py --dataroot ./datasets/horse2zebra --name horse2zebra_dcl

对于FID分数,使用pytorch-fid

测试马->斑马的FID:

python -m pytorch_fid ./results/horse2zebra_dcl/test_latest/images/fake_B ./results/horse2zebra_dcl/test_latest/images/real_B

以及斑马->马的FID:

python -m pytorch_fid ./results/horse2zebra_dcl/test_latest/images/fake_A ./results/horse2zebra_dcl/test_latest/images/real_A

引用

如果您使用我们的代码或结果,请考虑引用我们的论文。提前感谢!

@inproceedings{han2021dcl,
  title={Dual Contrastive Learning for Unsupervised Image-to-Image Translation},
  author={Junlin Han and Mehrdad Shoeiby and Lars Petersson and Mohammad Ali Armin},
  booktitle={Proceedings of the IEEE/CVF Conference on Computer Vision and Pattern Recognition Workshops},
  year={2021}
}

如果您使用了CUT中包含的内容,您也可以引用CUT

@inproceedings{park2020cut,
  title={Contrastive Learning for Unpaired Image-to-Image Translation},
  author={Taesung Park and Alexei A. Efros and Richard Zhang and Jun-Yan Zhu},
  booktitle={European Conference on Computer Vision},
  year={2020}
}

联系方式

junlinhcv@gmail.com

致谢

我们的代码基于pytorch-CycleGAN-and-pix2pixCUT开发。我们感谢CycleGAN和CUT提供的出色工作。 我们感谢pytorch-fid用于FID计算。 非常感谢CVPR主会议和NTIRE的匿名审稿人。他们提供了宝贵的反馈和建议。

项目侧边栏1项目侧边栏2
推荐项目
Project Cover

豆包MarsCode

豆包 MarsCode 是一款革命性的编程助手,通过AI技术提供代码补全、单测生成、代码解释和智能问答等功能,支持100+编程语言,与主流编辑器无缝集成,显著提升开发效率和代码质量。

Project Cover

AI写歌

Suno AI是一个革命性的AI音乐创作平台,能在短短30秒内帮助用户创作出一首完整的歌曲。无论是寻找创作灵感还是需要快速制作音乐,Suno AI都是音乐爱好者和专业人士的理想选择。

Project Cover

白日梦AI

白日梦AI提供专注于AI视频生成的多样化功能,包括文生视频、动态画面和形象生成等,帮助用户快速上手,创造专业级内容。

Project Cover

有言AI

有言平台提供一站式AIGC视频创作解决方案,通过智能技术简化视频制作流程。无论是企业宣传还是个人分享,有言都能帮助用户快速、轻松地制作出专业级别的视频内容。

Project Cover

Kimi

Kimi AI助手提供多语言对话支持,能够阅读和理解用户上传的文件内容,解析网页信息,并结合搜索结果为用户提供详尽的答案。无论是日常咨询还是专业问题,Kimi都能以友好、专业的方式提供帮助。

Project Cover

讯飞绘镜

讯飞绘镜是一个支持从创意到完整视频创作的智能平台,用户可以快速生成视频素材并创作独特的音乐视频和故事。平台提供多样化的主题和精选作品,帮助用户探索创意灵感。

Project Cover

讯飞文书

讯飞文书依托讯飞星火大模型,为文书写作者提供从素材筹备到稿件撰写及审稿的全程支持。通过录音智记和以稿写稿等功能,满足事务性工作的高频需求,帮助撰稿人节省精力,提高效率,优化工作与生活。

Project Cover

阿里绘蛙

绘蛙是阿里巴巴集团推出的革命性AI电商营销平台。利用尖端人工智能技术,为商家提供一键生成商品图和营销文案的服务,显著提升内容创作效率和营销效果。适用于淘宝、天猫等电商平台,让商品第一时间被种草。

Project Cover

AIWritePaper论文写作

AIWritePaper论文写作是一站式AI论文写作辅助工具,简化了选题、文献检索至论文撰写的整个过程。通过简单设定,平台可快速生成高质量论文大纲和全文,配合图表、参考文献等一应俱全,同时提供开题报告和答辩PPT等增值服务,保障数据安全,有效提升写作效率和论文质量。

投诉举报邮箱: service@vectorlightyear.com
@2024 懂AI·鲁ICP备2024100362号-6·鲁公网安备37021002001498号