Commit Graph

129 Commits (50e796a3b72c413c04f0d042b46682249cd9da1d)

Author SHA1 Message Date
Bryce 50e796a3b7 refactor: move code around 9 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.
9 months ago
Bryce d834e8b5b3 test: run non-gpu tests on github 10 months ago
jaydrennan d39486af54 fix: updates test marking to use nodeid instead of name 10 months ago
Bryce 0c03612d44 feature: large images now stay well-composed thanks to tile controlnet 10 months ago
Bryce 7880ee1389 feature: update midas (depth maps) 10 months ago
jaydrennan c99a169986 fix: configures test_set_gpu_full to run on a m1 mac. 10 months ago
Bryce Drennan 2144f26fa7
feature: add ability to dynamically make word images (#417) 10 months ago
jaydrennan 41a9d7007b
test: adds tests for stablestudio (#415) 10 months ago
jaydrennan e1e6f8037c
refactor: removes unused code and configurations (#405)
Co-authored-by: jaydrennan
10 months ago
Bryce 6d39d791b1 refactor: move safety to utils 10 months ago
Bryce ad561e8833 refactor: move model_manager to utils 10 months ago
Bryce d478771cc0 refactor: move a bunch of stuff to utils 10 months ago
jaydrennan e7b6fc40fa fix: adds default line ending for csv writing.
the csv library defaults to using CRLF line endings if not specified.
10 months ago
jaydrennan 3f3e080d39 feature: adds ability to use qrcode
feature: adds controlnet qrcode image generation.
feature: adds control net for qrcode image generation.
10 months ago
Bryce 62de446a92 ci: add mypy github action 10 months ago
Bryce 203747b14f refactor: simplify model_weights/architecture 10 months ago
Bryce 37ecd1e5e0 fix: videogen. track gpu tests 10 months ago
Bryce e898e3a799 fix: several cli commands, edit demo, negative prompt
- fix colorize cmd. add test
- fix describe cmd. add test
- fix model-list cmd. add test
- fix stable studio
- hide stack grace for ValueErrors in cli
- set controlnet scale
- fix negative prompt to allow emptystring instead of replacing it with default
- adjust edit-demo parameters
- arg scheduler that works at click level (but disable it). works but not ideal experience.
10 months ago
Bryce 9b95e8b0b6 perf: improve cli startup time
- do not provide automatically imported api functions and objects in `imaginairy` root module
- horrible hack to overcome horrible design choices by easy_install/setuptools

The hack modifies the installed script to remove the __import__ pkg_resources line

If we don't do this then the scripts will be slow to start up because of
pkg_resources.require() which is called by setuptools to ensure the
"correct" version of the package is installed.

before modification example:
```
__requires__ = 'imaginAIry==14.0.0b5'
__import__('pkg_resources').require('imaginAIry==14.0.0b5')
__file__ = '/home/user/projects/imaginairy/imaginairy/bin/aimg'
with open(__file__) as f:
    exec(compile(f.read(), __file__, 'exec'))
```
10 months ago
Bryce 2bd6cb264b feature: large refactor
- add type hints
- size parameter
- ControlNetInput => ControlInput
- simplify imagineresult
10 months ago
Bryce 24f4af3482 feature: better torch installation experience 10 months ago
Bryce 71d4992dca feature: added `--size` parameter to allow using named sizes 10 months ago
Bryce 6fcf0da331 test: try local runner 10 months ago
Bryce 0fe3733933 fix: memory management issue
the dtype being used as a cache key wasn't consistent. this caused the model to be loaded twice
10 months ago
Bryce b61d06651c tests: fix tests
- disable details mode. needs more work done to support
10 months ago
Bryce b5a0e65f35 fix: edit mode and some controlnet tests 10 months ago
Bryce f97f6a3b4b feature: use refiners library for generation
BREAKING CHANGE

  - stable diffusion 1.5 + inpainting working
  - self-attention guidance working. improves image generation quality
  - tile-mode working
  - inpainting self-attention guidance working

disable/broken features:
  - sd 1.4, 2.0, 2.1
  - most of the samplers
  - pix2pix edit
  - most of the controlnets
  - memory management
  - python 3.8 support

wip
10 months ago
Bryce 558d3388e5 style: speed up linting and autoformatting. fix lints 1 year ago
Bryce 8243ed616d fix: pydantic models for http server working now. Fixes #380 1 year ago
Bryce 7c2004bfcc feature/fix: migrate to pydantic 2.3
- test: add schema tests/fuzzer and fixes
 - fix default prompt. add tests
 - fix outpaint and controlnet defaults
 - fix init image strength defaults
1 year ago
Bryce 82d74c6b49 feature: switch to pydantic models
- allow prompt re-use by deferring random seed
1 year ago
Bryce 38ac0b7f54 tests: fix tests 1 year ago
Bryce df25936d6f feature: automatic use of inpainting
feature disabled since controlnet inpainting doesn't work great. Was disabled by setting `inpaint_method="finetune",`
1 year ago
Bryce d32e1060cd feature: multi-controlnet support at the command line
add controlnet option for edit demo
1 year ago
Bryce bcaa000d35 fix: model logging 1 year ago
Bryce 926692ad03 tests: "prime" the controlnets
Trying to get things working on m1. doesn't fix everything
1 year ago
Bryce eca97a25a0 tests: adjust tests to pass 1 year ago
Bryce 4c77fd376b feature: improvements to memory management
not thoroughly tested on low-memory devices
1 year ago
Bryce 6db296aa37 tests: faster tests 1 year ago
Bryce c082ea523f tests: update tests
- controlnet version changes + graphics card change
1 year ago
Bryce db8d3b74ea feature: add "detail" control mode.
Add details to an image. Great for upscaling an image.
1 year ago
Bryce 476a81a967 feature: add "shuffle" control mode
Image is generated from elements of control image. similar to style transfer
1 year ago
Bryce 832adf27bc feature: update controlnets to 1.1
- smaller filesizes for the controlnet weights
- fix: works with other 1.5 based models
- enables more control modes getting added
1 year ago
Bryce 95d3d08d27 fix: better input image path handling
throw exception for non-existent images
1 year ago
Bryce 37d6642c83 fix: fix model downloads that were broken
by [library change in transformers 4.27.0](8f3b4a1d5b)
2 years ago
Bryce 3b777b98d8 fix: improved large images using composition 2 years ago
Bryce 40da2b0357 tests: fix tests 2 years ago
Bryce 70c58467c0 fix: img2img was broken for all samplers except ddim,plms
img2img was broken for all samplers except plms and ddim when init image strength was >~0.25.  Been this way for a while. whoops
2 years ago
Bryce e3b23584ed refactor: split up command line tool 2 years ago