krita-ai-diffusion

Streamlined interface for generating images with AI in Krita. Inpaint and outpaint with optional text prompt, no tweaking required.

GPL-3.0 License

Stars
4.8K

Bot releases are hidden (Show)

krita-ai-diffusion - Version 1.5.0

Published by Acly 12 months ago

Download krita_ai_diffusion-1.5.0.zip

If you are updating from a previous release: additional custom nodes and models are required. They can be downloaded automatically via the built-in installer.

Upscaling

Now there is a dedicated UI to upscale images. You can switch with the new button in the top-left:

It allows to upscale the current projection (merged visible layers) by up to factor 4x.

  • Upscale model can be chosen explicitly
    • There are 3 recommended models: Default, Quality, Sharp
    • Custom models are also supported (found in ComfyUI/models/upscale_models)
  • The "Refine" option will run diffusion on the upscaled image to improve quality
    • 30% strength will stick very closely to the low resolution image
    • 40-50% strength will allow freedom for additional details
    • Generation runs on tiles, so high resolutions (4k, 8k, more...) are possible without requiring more GPU memory

Upscaling makes use of a new control mode "Blur" (aka. ControlNet Tile). It takes blurry image as input (eg. from bilinear resize) and sharpens and adds detail. You can use it in the image generation UI to selectively upscale/refine areas of the image.

Inpaint Improvements

Trying to add new objects to an existing image in an area has felt unintuitive in some cases. The reason is that a lot of context from the existing image is needed to make sure new content "fits in". But this leads to the text prompt having less impact, and sometimes it felt like it's ignored.

  • Method 1: Select area, enter text, 100% strength
  • Method 2: Select area, enter text, paint a very crude version of the new object, 80% strength

Method 2 has always been quite reliable and predictable! But it's not as intuitive, so in this version Method 1 is improved.

Let's look at an example. We have some nature photo, and it's clearly lacking a bear.

Original Mask Prefill for Method 2
original mask prefill

Method 1, OLD behavior - only 1 out of 4 images has a bear :(
old

Method 2 (unchanged) - note that the prefill also gives some control over shape
prefill

Method 1, NEW behavior - bears are now very common indeed :)
new

Other Changes

  • Added option to specify negative text prompt in the generation UI (must be activated in interface settings)
  • Added option to change number of text lines for the prompt editor (interface settings)
  • Made server installation more robust after crash/abort
  • Added IP-adapter support for SDXL, requires ip-adapter_sdxl_vit-h.pth in ComfyUI/custom_nodes/ComfyUI_IPAdapter_plus/models
  • Support {prompt} placeholder in style prompts (also updated default styles to use this)
  • Improved outpainting scenario by excluding image border areas from the IP-adapter reference
  • Increased websocket ping timeout for large image transfers when using a remote (internet) server
krita-ai-diffusion - Version 1.4.0

Published by Acly 12 months ago

Download krita_ai_diffusion-1.4.0.zip

Pose Vector Editor

Vector layers can now be used for controlling pose. This makes it easier to do adjustments or create a pose from scratch.

release-1 4 0-pose-ui

release-1 1 0-img2 Use this button to automatically generate vector pose from the current image.
release-1 4 0-img2 Use this button to add a new pose to the selected vector layer.

Editing pose joints will automatically update connections. Moving, scaling and rotating is supported. Keep in mind that Krita's vector layers are very general and allow a lot of additional operations which may not play nice with this feature though.

Pose Editor Demo

Changes

  • Added pose editing via vector layers
  • Selection area padding is now configurable in diffusion settings.
    This controls how much context outside of the selection mask the AI is able to see
  • Match only the filename when searching for ControlNet models. This allows to organize them in arbitrary subfolders
  • Made checkpoint classification more robust (SD 1.5 vs SDXL) - requires custom node update
  • Filter out inpaint and refiner checkpoints. Inpaint models currently don't work properly, but also shouldn't be needed
  • Automatically exclude control layers from image input when using less than 100% strength
krita-ai-diffusion - Version 1.3.0

Published by Acly about 1 year ago

Download krita_ai_diffusion-1.3.0.zip

Reference Images

You can now add arbitrary images from layers as input for generation. It will generate something similar to what's in the image. This works as a replacement or in addition to text prompts.

release-1 3 0-img1
Here I ask for a cat, and also provide an image of some pegonias. So the results all show a cat and pegonias (or some red flowers at least!).

Multiple images can be added. They don't have to match in size, but should preferrably be square(ish).

Changes

  • Added IP-adapter as explicit control mode
  • Batch multiple control images
  • Fixed platform check for MacOS (there are probably other issues though)
  • Fixed installation after PyTorch 2.1.0 release
  • Increased value range for LoRA (sometimes used as a "slider" value from -400% to +400%)
  • Fixed connection to ComfyUI server behind ngrok
krita-ai-diffusion - Version 1.2.1

Published by Acly about 1 year ago

Download krita_ai_diffusion-1.2.1.zip

Bugfixes

  • Fixed xformers installation issue
krita-ai-diffusion - Version 1.2.0

Published by Acly about 1 year ago

Download krita_ai_diffusion-1.2.0.zip

Support more GPUs and Cloud

This release provides some more options for users without NVIDIA GPU: Windows users can now use non-NVIDIA GPUs via DirectML, and there is a step-by-step guide on how to rent a Cloud GPU which the plugin can connect to.

Updating

For users who update from an older release, it's generally fine to copy the new files and overwrite the old ones. Afterwards, if you installed the server via the plugin, use the Install button to upgrade it.

If you're using your own ComfyUI installation, IPAdapter-ComfyUI was replaced with ComfyUI_IPAdapter_plus.

Changes

  • Added actions to cancel queued jobs
  • The server is now available as docker image for easy deployment
  • Added refresh & open folder buttons to make it easier to install custom checkpoints and lora
  • Added DirectML as backend option
  • Switch to IPAdapter_plus extension, fixes CPU and DirectML backends when doing 100% strength inpaint
  • Improved handling of sporadic websocket disconnect
  • Automatically switch to non-inpaint workflows if selection covers entire document
  • Added some alternative names for SDXL controlnet files
krita-ai-diffusion - Version 1.1.0

Published by Acly about 1 year ago

Download krita_ai_diffusion-1.1.0.zip

More Control

release-1 1 0-img2 Use this button to generate a control layer from the current image. Works with all modes. For example if you like the contours of the current image but would like to change colors/shading, this allows you to generate matching line art and use it as control layer for subsequent generation. Note: might be slow on first use, but quite fast afterwards.

You can download required models from the Server Configuration settings.

Other Changes

  • Installer now uses Python venv on Linux. This avoids messing with the system Python and some distros require it.
  • Improved error reporting for missing resources
  • Added option to override VAE in styles
  • Line and edge control layers use white background with black lines
  • Error message when using non 8-bit RGBA color models
  • Added https and wss support by @gergelyszaz in https://github.com/Acly/krita-ai-diffusion/pull/6
  • Control layers with alpha channel work better
  • Can now configure ComfyUI command line arguments in settings.json
  • Use high quality upscaling for scaling factors >150% in all workflows
  • Fixed 'QNetworkReply' has no attribute 'HttpStatusCodeAttribute'
  • Added new style and delete style buttons by @gergelyszaz in https://github.com/Acly/krita-ai-diffusion/pull/9
  • Selection grow and feather are now configurable
  • Support group layers and nested layers as control images
krita-ai-diffusion - Version 1.0.1

Published by Acly about 1 year ago

krita-ai-diffusion - Version 1.0.0

Published by Acly about 1 year ago

krita-ai-diffusion - Beta 2

Published by Acly about 1 year ago

krita-ai-diffusion - Beta

Published by Acly about 1 year ago

krita-ai-diffusion - Resources

Published by Acly about 1 year ago

Resources for pre-release.