超炫酷项目来袭!DragGAN 正式开源了!

简介: 之前树先生给大家介绍过一个项目 DragGAN,现在正式开源了!

之前树先生给大家介绍过一个项目 DragGAN,现在正式开源了!

超炫酷项目来袭!DragGAN 火爆开源社区!

那还等什么,盘它!


DragGAN 是什么?

不同于 Stable Diffusion 与 Midjourney 使用的扩散模型,DragGAN 是一款基于生成对抗网络(GANs)技术的图片编辑项目。追根溯源,其实还是 NVIDIA 的 StyleGAN 的衍生项目。

DragGAN 由两个主要部分组成:

第一部分是基于特征的运动监督,通过控制起始点向目标点运动,实现图像的变形;

第二部分是新的点跟踪方法,即最近邻检索,通过在相同的特征空间上进行点跟踪,提高了效率,并避免了累计误差损失。

简单来说,它能够让你轻松掌控图片中的人物和动物,通过拖拽控制点和目标点来调整他们的位置、形状、姿势等等。目前这个项目在 Github 上已经斩获了 20K star 了,趋势榜第一,足见其火爆程度!


部署要求

  • 支持 Linux 和 Windows,建议使用 Linux
  • 内存 12 GB 以上
  • 1–8 NVIDIA 高端 GPU
  • Python >= 3.8,PyTorch >= 1.9.0
  • CUDA toolkit >= 11.1


安装部署

安装过程,真是一把鼻涕一把泪,到处都是坑,先是在阿里 PAI 平台栽跟头,折腾好久才发现是基础环境问题,后来又在安装方法上翻了车,官方的安装指导也是各种报错。

一路艰难摸索过来,现在将实测可行的一套部署方法带给大家。

这里我们选择 AutoDL 云平台,使用 Python 3.8,CUDA 11.8 的镜像,这个镜像的环境就已经满足项目要求了。

下载源码

git clone https://github.com/XingangPan/DragGAN.git

安装依赖

cd DragGAN
pip install -r requirements.txt -i https://pypi.tuna.tsinghua.edu.cn/simple

如果出现下面的报错,代表这个 pip 源里没有对应的版本。

修改 requirements.txt 文件,去除特定版本依赖,再次执行即可。

torch>=2.0.0
scipy
Ninja==1.10.2
gradio>=3.35.2
imageio-ffmpeg>=0.4.3
huggingface_hub
hf_transfer
pyopengl
imgui
glfw==2.6.1
pillow>=9.4.0
torchvision>=0.15.2
imageio>=2.9.0

下载模型

sh scripts/download_model.sh

运行

这里选择运行 WebUI,看到 URL 就代表启动成功了。

# 运行 WebUI
python visualizer_drag_gradio.py

效果展示

使用上非常简单,鼠标在图中点点就行,红点是起始点,蓝点是目标点,实现图像的拖拽效果。

还可以控制区域图像,避免整体图像跟着变化。


很多人都以为这个项目能直接选一张照片,就能像 PS 一样进行 P 图了,其实并不是,至少目前还不支持,上面你看到的这些图片都是经过训练而生成的模型,所以本质上,你是在操作一个模型,而非图片!

如果你想操作自己的图片,那么按官网说的,你需要使用到 PTI 项目,将你自定义的图片训练成 StyleGAN 模型。


这部分内容下期再介绍,折腾 DragGAN 部署费了好大劲,有点累了,记得三连啊~


相关文章
|
4月前
|
设计模式 前端开发 开发者
个人开源项目商业化经验分享
开源项目推向商业化道路的开发者,将自的经历分享出来与诸位一同交流,期望大家能够少走弯路,让开源项目更健康的活下去。
个人开源项目商业化经验分享
|
7月前
|
Java 开发者 微服务
开源召集令
开源召集令,召集令发布,欢迎有想法的你,不管是技术大牛、萌新学徒,都踊跃加入组织一同学习、共同进步吧。
60 0
开源召集令
|
机器学习/深度学习 缓存 算法
隐语开源社区【精选问答】第四期
隐语开源社区【精选问答】第四期
357 0
超炫酷项目来袭!DragGAN 火爆开源社区!
你在 Github 上见过一个空仓库在短短几天内就斩获 10K star 的项目吗? 今天树先生给大家介绍一款超炫酷的项目——DragGAN,来一起看看它为何如此火爆。 不同于之前大火的 Stable Diffusion 与 Midjourney 使用的扩散模型,DragGAN 是一款基于生成对抗网络(GANs)技术的图片编辑项目。
|
Cloud Native 开发者
KubeVela 获得 2022 “开源新锐”和“开发者最喜爱”双料年度项目
在 InfoQ 最新公布的 2022 中国技术力量年度榜单中,KubeVela 获得了 “十大开源新锐项目” 和 “开发者最喜爱的十大开源项目” 两个大奖。
KubeVela 获得 2022 “开源新锐”和“开发者最喜爱”双料年度项目
EMQ
|
SQL 前端开发 安全
2022 开源之夏|EMQ 三大开源项目开发圆满收官
与新生力量共同打造高性能、高可用、高安全的世界级开源软件产品,服务人类未来产业与社会。
EMQ
204 0
2022 开源之夏|EMQ 三大开源项目开发圆满收官
|
消息中间件 人工智能 Cloud Native
引领开源新风潮,阿里巴巴编程之夏第二期重磅来袭!
2020 年 5 月 25 日,阿里巴巴编程之夏第二期正式上线,我们鼓励你们加入到 ASoC 的大家庭中来,结识更多开源领域技术大牛和志趣相投的小伙伴,你贡献一个让人怦然心动的乍现灵光,导师回你一箩筐终身受用的编程绝技。
引领开源新风潮,阿里巴巴编程之夏第二期重磅来袭!
|
消息中间件 人工智能 Dragonfly
|
PouchContainer 容器
阿里PouchContainer、OpenMessaging两大开源项目惊喜亮相“OSCAR开源先锋日”
10月20日,由中国信息通信研究院主办,云计算标准与开源推进委员会、清华大学TUNA 协会、北京大学开源软件协会承办,云计算开源产业联盟、华为、腾讯、阿里巴巴、小米支持,高效运维社区协办的“OSCAR开源先锋日”在北京完美落幕。
1995 0
|
前端开发 程序员 容器
3月28日云栖精选夜读 | 六年打磨!阿里开源混沌工程工具 ChaosBlade
减少故障的最好方法就是让故障经常性的发生。通过不断重复失败过程,持续提升系统的容错和弹性能力。今天,阿里巴巴把六年来在故障演练领域的创意和实践汇浓缩而成的工具进行开源,它就是 “ChaosBlade”。如果你想要提升开发效率,不妨来了解一下。
4887 0