MCPcopy
hub / github.com/OpenGVLab/DragGAN

github.com/OpenGVLab/DragGAN @main sqlite

repository ↗ · DeepWiki ↗
531 symbols 1,235 edges 46 files 77 documented · 15%
README

DragGAN

PyPI support

:boom: Colab Demo Awesome-DragGAN InternGPT Demo Local Deployment

Note for Colab, remember to select a GPU via Runtime/Change runtime type (代码执行程序/更改运行时类型).

If you want to upload custom image, please install 1.1.0 via pip install draggan==1.1.0.

Unofficial implementation of Drag Your GAN: Interactive Point-based Manipulation on the Generative Image Manifold

How it Work ?

Here is a simple tutorial video showing how to use our implementation.

https://github.com/Zeqiang-Lai/DragGAN/assets/26198430/f1516101-5667-4f73-9330-57fc45754283

Check out the original paper for the backend algorithm and math.

demo

News

:star2: What's New

  • [2023/6/25] Relase version 1.1.1, it includes a major bug fix and speed improvement.
  • [2023/6/25] Official Code is released, check it out.
  • [2023/5/29] A new version is in beta, install via pip install draggan==1.1.0b2, includes speed improvement and more models.
  • [2023/5/25] DragGAN is on PyPI, simple install via pip install draggan. Also addressed the common CUDA problems https://github.com/Zeqiang-Lai/DragGAN/issues/38 https://github.com/Zeqiang-Lai/DragGAN/issues/12
  • [2023/5/25] We now support StyleGAN2-ada with much higher quality and more types of images. Try it by selecting models started with "ada".
  • [2023/5/24] An out-of-box online demo is integrated in InternGPT - a super cool pointing-language-driven visual interactive system. Enjoy for free.:lollipop:
  • [2023/5/24] Custom Image with GAN inversion is supported, but it is possible that your custom images are distorted due to the limitation of GAN inversion. Besides, it is also possible the manipulations fail due to the limitation of our implementation.

:star2: Changelog

  • [x] Add a docker image, thanks @egbaydarov.
  • [ ] PTI GAN inversion https://github.com/Zeqiang-Lai/DragGAN/issues/71#issuecomment-1573461314
  • [x] Tweak performance, See v2.
  • [x] Improving installation experience, DragGAN is now on PyPI.
  • [x] Automatically determining the number of iterations, See v2.
  • [ ] Allow to save video without point annotations, custom image size.
  • [x] Support StyleGAN2-ada.
  • [x] Integrate into InternGPT
  • [x] Custom Image with GAN inversion.
  • [x] Download generated image and generation trajectory.
  • [x] Controlling generation process with GUI.
  • [x] Automatically download stylegan2 checkpoint.
  • [x] Support movable region, multiple handle points.
  • [x] Gradio and Colab Demo.

This project is now a sub-project of InternGPT for interactive image editing. Future updates of more cool tools beyond DragGAN would be added in InternGPT.

Running Locally

Please refer to INSTALL.md.

Citation

@inproceedings{pan2023draggan,
    title={Drag Your GAN: Interactive Point-based Manipulation on the Generative Image Manifold}, 
    author={Pan, Xingang and Tewari, Ayush, and Leimk{\"u}hler, Thomas and Liu, Lingjie and Meka, Abhimitra and Theobalt, Christian},
    booktitle = {ACM SIGGRAPH 2023 Conference Proceedings},
    year={2023}
}

Acknowledgement

Official DragGANDragGAN-StreamlitStyleGAN2StyleGAN2-pytorchStyleGAN2-AdaStyleGAN-HumanSelf-Distilled-StyleGAN

Welcome to discuss with us and continuously improve the user experience of DragGAN. Reach us with this WeChat QR Code.

imageimage

Core symbols most depended-on inside this repo

kwarg
called by 44
draggan/stylegan2/legacy.py
mean
called by 39
draggan/stylegan2/torch_utils/training_stats.py
update
called by 18
draggan/stylegan2/torch_utils/training_stats.py
to_image
called by 10
draggan/deprecated/web.py
generate
called by 7
draggan/deprecated/api.py
matrix
called by 7
draggan/stylegan2/training/augment.py
_conv2d_wrapper
called by 6
draggan/stylegan2/torch_utils/ops/conv2d_resample.py
_parse_scaling
called by 6
draggan/stylegan2/torch_utils/ops/upfirdn2d.py

Shape

Method 235
Function 212
Class 83
Route 1

Languages

Python100%

Modules by API surface

draggan/stylegan2/training/networks.py51 symbols
draggan/deprecated/stylegan2/model.py51 symbols
draggan/stylegan2/dnnlib/util.py30 symbols
draggan/stylegan2/training/dataset.py29 symbols
draggan/stylegan2/training/networks_stylegan3.py26 symbols
draggan/deprecated/stylegan2/lpips/networks_basic.py23 symbols
draggan/deprecated/stylegan2/lpips/dist_model.py20 symbols
draggan/stylegan2/torch_utils/misc.py18 symbols
draggan/deprecated/web.py17 symbols
draggan/deprecated/stylegan2/lpips/util.py16 symbols
gradio_app.py15 symbols
draggan/web.py15 symbols

Dependencies from manifests, versioned

gradio3.34.0 · 1×

For agents

$ claude mcp add DragGAN \
  -- python -m otcore.mcp_server <graph>

⬇ download graph artifact