Commit Graph

58 Commits (153c259ee43f8b9031dc4f6d253b4846a6b0afff)

Author SHA1 Message Date
Bryce 6a80759016 feature: improved safety filter
- provides more informative logs
- provides a detailed safety score object
- adds non-bypassable filter for extreme content
2 years ago
Bryce 83db4ad795 docs: fix prompt expansion description
thanks to @Cybergate9 for identifying the mistakes

addresses #52
2 years ago
Bryce 26483ef128 version: 2.4.0 2 years ago
Bryce Drennan 31c2160e21
feature: prompt expansion (#51)
You can use `{}` to randomly pull values from lists.  A list of values separated by `|` and enclosed in `{ }` will be randomly drawn from in a non-repeating fashion. Values that are surrounded by `_ _` will pull from a phrase list of the same name.   Folders containing .txt phraselist files may be specified via
`--prompt_library_path`. The option may be specified multiple times.  Built-in categories:

      3d-term, adj-architecture, adj-beauty, adj-detailed, adj-emotion, adj-general, adj-horror, animal, art-movement,
      art-site, artist, artist-botanical, artist-surreal, aspect-ratio, bird, body-of-water, body-pose, camera-brand,
      camera-model, color, cosmic-galaxy, cosmic-nebula, cosmic-star, cosmic-term, dinosaur, eyecolor, f-stop,
      fantasy-creature, fantasy-setting, fish, flower, focal-length, food, fruit, games, gen-modifier, hair, hd,
      iso-stop, landscape-type, national-park, nationality, neg-weight, noun-beauty, noun-fantasy, noun-general,
      noun-horror, occupation, photo-term, pop-culture, pop-location, punk-style, quantity, rpg-item, scenario-desc,
      skin-color, spaceship, style, tree-species, trippy, world-heritage-site

   Examples:

   `imagine "a {red|black} dog" -r 2 --seed 0` will generate both "a red dog" and "a black dog"

   `imagine "a {_color_} dog" -r 4 --seed 0` will generate four, different colored dogs. The colors will eb pulled from an included
   phraselist of colors.

   `imagine "a {_spaceship_|_fruit_|hot air balloon}. low-poly" -r 4 --seed 0` will generate images of spaceships or fruits or a hot air balloon

   Credit to [noodle-soup-prompts](https://github.com/WASasquatch/noodle-soup-prompts/) where most, but not all, of the wordlists originate.
2 years ago
Bryce 0244d4151f version: 2.3.1 2 years ago
Bryce 5cc19c460c version: 2.3.0 2 years ago
Bryce 00fff23fdf docs: update macos installation instructions 2 years ago
Bryce 282fbc19b5 version: 2.2.1 2 years ago
Bryce 302845f35a docs: update feature plans 2 years ago
Bryce da0b983622 version: 2.2.0 2 years ago
Bryce 9fe3cf79c2 feature: better masking segmentation from clipseg 2 years ago
Bryce f21c979f08 feature: better masking segmentation from clipseg 2 years ago
Bryce c92e5c443f version: 2.0.3 2 years ago
Bryce 95a8fa31a9 fix: inpainting producing blurry images
while the previous version did produce much better blending it also makes images that lack detail for some reason.

tests: Added more tests to help catch this sort of thing earlies

fix: found that median blur is really slow, so I made sure we only do it on downsampled masks.  Was taking like 3 minutes to run on the large pearl girl picture on M1

- docs: update examples
2 years ago
Bryce 6cae290038 fix: inpainting now matches photo at high generation strength
- 🎉 fix: inpainted areas correlate with surrounding image, even at 100% generation strength.  Previously if the generation strength was high enough the generated image
would be uncorrelated to the rest of the surrounding image.  It created terrible looking images.
 - fix: mask boundaries are more accurate
2 years ago
Bryce d563e0c7fb refactor: image version management
- mask_modify_original is now a prompt attribute
2 years ago
Bryce d832f15297 fix: masking now works properly at strengths 0 and 1 2 years ago
Bryce b69b4c770e feature: interactive prompt
- add quiet flag
- add mask-modify-original flag
2 years ago
Bryce 38c7f88950 feature: boolean logic masks
Specify advanced text based masks using boolean logic and strength modifiers. Mask descriptions must be lowercase. Keywords uppercase.
Valid symbols: `AND`, `OR`, `NOT`, `()`, and mask strength modifier `{*1.5}` where `+` can be any of `+ - * /`. Single-character boolean
operators also work.  When writing strength modifies know that pixel values are between 0 and 1.

 - feature: apply mask edits to original files
 - feature: auto-rotate images if exif data specifies to do so
 - fix: accept mask images in command line
2 years ago
Bryce 8e844f2eae version: 1.6.2 2 years ago
Bryce cc014685bd fix: leave sample in float32 for all final processing 2 years ago
Bryce 09f00f9652 version: 1.6.1 2 years ago
Bryce 9614a82f12 fix: use float32 at image render time for wider cpu compatibility
If the x_sample was a bfloat on the gpu but the cpu doesn't support bfloat, that can cause a TypeError
```
  File "/home/stdiff/.local/lib/python3.10/site-packages/imaginairy/api.py", line 292, in imagine
    x_sample.cpu().numpy(), "c h w -> h w c"

TypeError: Got unsupported ScalarType BFloat16`
```
2 years ago
Bryce a275d9c9cd version: 1.6.0 + docs 2 years ago
Bryce ff7fc0dab7 feature: tile mode can now be specified per-prompt 2 years ago
Bryce 83c809e2b7 version 1.5.3
bugfix missing config file
2 years ago
Bryce 3d64867e1f version 1.5.2
bugfix missing config file
2 years ago
Bryce a46424c673 feature: img2img now supported with PLMS (instead of just DDIM)
Kinda hacky copy/pasting from ddim.  Need to cleanup
2 years ago
Bryce 3a10a2eb80 docs: osx => macOS 2 years ago
Bryce 4705d182d5 feature: generate captions for images
- add wip functionality for negative masks
- ci: add code linter that removes unused imports
- add instructions to install rust on osx
2 years ago
Bryce f040e3bffe feature: allow multiple additive targets for text masking targets 2 years ago
Bryce be85133070 version: 1.3.0 2 years ago
Bryce 930295d840 feature: txt2mask - automated text replacement
from https://github.com/timojl/clipseg
2 years ago
Bryce 6307a0daf5 refactor: cleanup ddim 2 years ago
Bryce 59648dbe61 test: add some tests/logging
add some experiments
2 years ago
Bryce 19d0b563ac style: lint fixes. remove unused code 2 years ago
Bryce 793df6e9dc docs update 2 years ago
Bryce c7a822d701 feature: urls as init images
- --init-image accepts urls
- cleanup command line code
2 years ago
Bryce a1675fa599 docs: add dockerfile example 2 years ago
Bryce bb665b9eb6 fix: make k-diffusion samplers deterministic
- add test for hashes on mps.  images look same on CUDA but are slightly different.
2 years ago
Bryce b4a3b8c2b3 feature: k-diffusion samplers
- improved image logging functionality. can just stick log_latent wherever you want
- improved some variable naming
- moved all the samplers together
- vendored k-diffusion library
2 years ago
Bryce bb7eaa47f6 docs: small doc updates 2 years ago
Bryce ff7455034d docs and lint 2 years ago
Bryce 541ecb9701 feature: face enhancement and upscaling!! 2 years ago
Bryce 6fa776053f docs: update image links 2 years ago
Bryce a20f56dfda docs: rearrange images 2 years ago
Bryce c982c9a38f docs: rearrange images 2 years ago
Bryce b568ec576f docs: rearrange images 2 years ago
Bryce 6ac3d40009 docs: update readme. add docs to package
Clean up logging some more
2 years ago
Bryce b9c00dd8de fix: util functions in wrong place
add tile example in readme
2 years ago