qweryty / image-ai-utils-krita

GNU General Public License v3.0
26 stars 1 forks source link

Some ideas and questions #4

Open kozaluss opened 1 year ago

kozaluss commented 1 year ago

Some ideas for additions to this great plugin:

  1. Ability to select other samplers (as mentioned in reddit thread).
  2. Outpainting would be great (as You mentioned in reddit thread).
  3. Ability to use different model - like waifu or upcoming 1.5.
  4. Seed: there is some inconsistency I see among SD interfaces - WebUI and GRisk allow to enter much higher values as seed. Why is the seed value limited in the plugin? I thought of using same seed across many GUIs when in need to recreate something.
  5. Seed: plugin allows to enter a seed and also making variations. What is the relation of seed and the variations? Also it would be good to know (with random seed especially) what is the seed of given variation to be able to recreate it's style later. Maybe a dialog box with description of parameters and seed used to create this image similar to upscale dialog with option to easily copy as text?
  6. Does server keep the generated images? And if so - where are they located and do they contain text info on the parameters and seed used?
  7. Maybe add plugin for ClipStudioPaint in future? Just an idea.
qweryty commented 1 year ago
  1. Planned for the next release.
  2. Planned in the near future.
  3. Planned in the near future.
  4. It's a ui issue. I can easily raise the max seed value to 2147483647, but higher than that will require a custom widget(it is solvable, but will require a little bit more time). As for replicating results from other programs, it might not be possible. The problem is that there are two main libraries for stable diffusion, and they might have slightly different random number generators(RNG), that will produce very different results for the same seed and parameters. On top of that the developers of different apps can use RNG in different ways that also will affect the end result.
  5. First the server initializes RNG with seed. Then it will use this generator to generate the number of images specified in "Number of Variants" at the same time. If this number is too large the server will split the task and generate smaller batches of images one after another but using the same generator. Due to the ways RNG works, I can't know the seed for each image separately and if I use different generator for each image it will greatly affect performance, but I can use different generators for different batches so you can replicate a whole batch. I also can add a manual control of the batch size, so if performance doesn't concern you, you can set it to 1 and effectively have different seed for each image.
  6. It doesn't store any images. I think the better solution would be to add a button to save and import the metadata of generated batches, so that the result can be replicated again.
  7. For now it's highly unlikely, because to my understanding, plugins are only supported on Japanese version of Clip Studio Paint
kozaluss commented 1 year ago

I understand. So any way to be able to replicate the result would be fine for me. Metadata save/load would be ok also. Maybe show the last rolled seed (when in seed random mode) next to the input box?

kozaluss commented 1 year ago

It's not much, but it's honest work :D https://www.kozaluss.pl/2022/09/19/krita-stablediffusion-ai/. The tool is great and a lot of fun. I cannot wait for the outpaint option to be added <3. Thank You :).