Interpause / Interpause/auto-sd-paint-ext

Size multiplier as an alternative to base size

Open
#103 2 comments 0 reactions 0 assignees View on GitHub
enhancement
Dominant language
Python
Stars
482
Forks
37
PR merge metrics
No merged PRs in 30d

Description

**Is your feature request related to a problem? Please describe.**
I kind of find myself "fighting against" the base size system when inpainting. I would select an area on the painting I'd like the AI to focus on, but then I have to check that the base size used is reasonable for it. The base size is just not a great system in my opinion due to the level of detail changing every time you select a differently sized area for inpainting but don't adjust the base size.

I also almost always just select canvas dimensions for base and max sizes when txt2imging or img2imging, so it's a point of unwieldiness of using the plugin even for those tasks for me; these days I only upscale after getting a good base image. Also the name of it is confusing, though I'm not entirely certain my suggested "size multiplier" is any better.

**Describe the solution you'd like**
I'd almost ditch the base size altogether, but I guess there are going to be "some people" who will object. There is, after all, an increased chance of feature duplication and proportions getting messed up if using something other than the model's training size. So some kind of a way to access this alternate system of deciding what the generation resolution is, is what I'm suggesting. I think they should be mutually exclusive, so maybe a dropdown menu for which option is presented in the UI.

Most of the time I think a user would just use the default of 1.00 for it. A setting that you rarely need to adjust is better than one needing constant adjustment.

So this is how it works:

Consider the larger of width or height of the selected area or image (if no selection) and if it's larger than max size, max size will be used for the side in question and the other one of the width or height will be scaled appropriately for the generation size. Well, after doing any tricks you do now to get a multiples of 64.

In any other case, the size of the selection or the image is used, multiplied by the size multiplier and doing those usual adjustments to get multiples of 64.

**Describe alternatives you've considered**
- A checkbox for using selection or canvas size as the generation size. There are, though, some times when I'd want to have the generation happening in high detail like some tiny thing needing adjustment but I want it to be "perfect" without having the canvas size be ridiculous. Maybe for testing stuff also using less than 1.0 can be warranted.
- Getting rid of the base size and using this new system

**Additional context**
I suggest the size multiplier's UI element to behave like the CFG scale's UI element, with step of 0.10 and resolution of 0.01. Not that I'd use all that resolution, maybe, but why not have it be the same everywhere.

Contributor guide

No contributing guide indexed for this repository

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.