Commit Graph

42 Commits (master)

Author SHA1 Message Date
Bryce 1faea372f9 fix: cleanup logging - remove unnecessary version checks 2 months ago
Bryce cf8a44b317 feature: update refiners
better handles img2img (partial diffusion runs)
5 months ago
jaydrennan 1bf53e47cf
feature: updates refiners vendored library (#458)
* feature: updates refiners vendored library

has a small bugfix that will soon be replaced by a better fix from upstream refiners

Co-authored-by: Bryce <github20210803@accounts.brycedrennan.com>
5 months ago
Bryce Drennan 601a112dc3
refactor: move download related functions to separate module (#453)
+ renames and typehints
5 months ago
Bryce 5bbb09f69e build: vendorize facexlib
had too many unused sub-dependencies

also monkeypatch the download mechanism to use our standard download function
5 months ago
Bryce Drennan 0271bffa38
build: remove fairscale dependency (#441) 5 months ago
Bryce e00c7b9eb7 fix: add back missing init file 5 months ago
Bryce 55e27160f5 build: vendorize refiners
so we can still work in conda envs
5 months ago
Bryce Drennan 77c4b85037
perf: improve memory usage (#433)
add warning for corrupt weights files
6 months ago
Bryce 32b5175e0e feature: better upscaling
- use face enhancement in a smarter way that doesn't blur high-res images
- use a different upscale model for composition images

**Upscaling**
RealESRGAN is great but it blurs parts of images it doesn't understand

4xUltrasharp is a finetune of RealESRGan that isn't as good but doesn't have this blurry patch problem.  This makes it more suitable to use as part of the composition/upscale process.  We still use realesrgan for any last-step upscales since it does look better.

had to write a state dict translator to use the ultrasharp model

**Face Enhancement**

We no longer enhance faces that are larger than 512 pixels. They should already have enough details and the face enhancer doesn't produce faces at high enough resolution to look good at that size.
6 months ago
Bryce ad561e8833 refactor: move model_manager to utils 6 months ago
Bryce d478771cc0 refactor: move a bunch of stuff to utils 6 months ago
Bryce 316114e660 docs: add docstrings
Wrote an openai script and custom prompt to generate them.
6 months ago
Bryce 558d3388e5 style: speed up linting and autoformatting. fix lints 9 months ago
Bryce 3b066f8e29 fix: don't hide error messages during upscale 1 year ago
Bryce d5a276584b fix: move normal map code inline
Fixes conda package. Fixes #317
1 year ago
Bryce 37d6642c83 fix: fix model downloads that were broken
by [library change in transformers 4.27.0](8f3b4a1d5b)
1 year ago
Bryce a449fbd5e2 feature: remove tiling message for upscaler 1 year ago
Bryce d7e494241c fix: composition images were too blurry 1 year ago
Bryce 882cc7e0f1 feature: generate large images with coherent composition 1 year ago
Bryce 1c986d8644 fix: use py3.7 compat lru_cache
- disable lint fixer that updates to newer syntax
1 year ago
Bryce 5cc73f6087 feature: finetuning
- feature: finetuning your own image models
- feature: image prep command. crops to face or other interesting parts of photo
- fix: back-compat for hf_hub_download
- feature: add prune-ckpt command
- feature: allow specification of model config file
1 year ago
Bryce 4bc78b9be5 build: vendorize realesrgan
Removes lots of dependencies including problematic `grpcio` and `tb-nightly`
1 year ago
Bryce 35ac8d64d7 build: vendorize parts of basicsr
Trying to get rid of tb-nightly dependency and any other unnecessary dependencies.
1 year ago
Bryce e9a3e1a99b build: unpin dependencies 1 year ago
Bryce 4bc940ddf4 feature: remove more randomness 1 year ago
Bryce 1381c7fed4 lint: new ruff linter 1 year ago
Bryce da0f1e1ee6 fix: make sure randomness is generated on cpu for consistency 1 year ago
Bryce 9c153a8d2d feature: support k-sampler methods for SD-2.0-v (768) 2 years ago
Bryce 0f02fc587c fix: k_dpm_fast on MPS platform
fixes #75

As discussed here: https://github.com/AUTOMATIC1111/stable-diffusion-webui/issues/2446#issuecomment-1279733739
2 years ago
Bryce 7af1ab66ca fix: add workaround for bug in k_diffusion on mps
As documented here: https://github.com/AUTOMATIC1111/stable-diffusion-webui/issues/4558#issuecomment-1310387114

- make image logs more consistent
- note which step the progress images belong to in the filename
2 years ago
Bryce 7fba2972e8 feature: added `DPM++ 2S a` and `DPM++ 2M` samplers
-fix: fix bug with `--show-work`
2 years ago
Bryce 741a433c56 feature: update k_diffusion. add dpm_fast and dpm_addaptive samplers 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 f21c979f08 feature: better masking segmentation from clipseg 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 930295d840 feature: txt2mask - automated text replacement
from https://github.com/timojl/clipseg
2 years ago
Bryce 7087c4a680 feature: automatic mask generation
mask generation working but not integrated
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 541ecb9701 feature: face enhancement and upscaling!! 2 years ago
Bryce 14a06e160d build: vendor clip
it's not on pypi
https://github.com/openai/CLIP/issues/141
2 years ago