Skip to content

Commit 7811d20

Browse files
Add Badges to README.md and add CHANGELOG.md (#205)
* Update README.md - Add Badges * Add CHANGELOG.md
1 parent d524e57 commit 7811d20

File tree

2 files changed

+190
-131
lines changed

2 files changed

+190
-131
lines changed

CHANGELOG.md

Lines changed: 137 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,137 @@
1+
# **Changelog**
2+
3+
## v1.13 (in process)
4+
5+
- Supports a Google Colab notebook for a standalone server running on Google hardware [Arturo Mendivil](https://github.com/artmen1516)
6+
- WebUI supports GFPGAN/ESRGAN facial reconstruction and upscaling [Kevin Gibbons](https://github.com/bakkot)
7+
- WebUI supports incremental display of in-progress images during generation [Kevin Gibbons](https://github.com/bakkot)
8+
- Output directory can be specified on the dream> command line.
9+
- The grid was displaying duplicated images when not enough images to fill the final row [Muhammad Usama](https://github.com/SMUsamaShah)
10+
- Can specify --grid on dream.py command line as the default.
11+
- Miscellaneous internal bug and stability fixes.
12+
13+
---
14+
15+
## v1.12 (28 August 2022)
16+
17+
- Improved file handling, including ability to read prompts from standard input.
18+
(kudos to [Yunsaki](https://github.com/yunsaki)
19+
- The web server is now integrated with the dream.py script. Invoke by adding --web to
20+
the dream.py command arguments.
21+
- Face restoration and upscaling via GFPGAN and Real-ESGAN are now automatically
22+
enabled if the GFPGAN directory is located as a sibling to Stable Diffusion.
23+
VRAM requirements are modestly reduced. Thanks to both [Blessedcoolant](https://github.com/blessedcoolant) and
24+
[Oceanswave](https://github.com/oceanswave) for their work on this.
25+
- You can now swap samplers on the dream> command line. [Blessedcoolant](https://github.com/blessedcoolant)
26+
27+
---
28+
29+
## v1.11 (26 August 2022)
30+
31+
- NEW FEATURE: Support upscaling and face enhancement using the GFPGAN module. (kudos to [Oceanswave](https://github.com/Oceanswave)
32+
- You now can specify a seed of -1 to use the previous image's seed, -2 to use the seed for the image generated before that, etc.
33+
Seed memory only extends back to the previous command, but will work on all images generated with the -n# switch.
34+
- Variant generation support temporarily disabled pending more general solution.
35+
- Created a feature branch named **yunsaki-morphing-dream** which adds experimental support for
36+
iteratively modifying the prompt and its parameters. Please see[ Pull Request #86](https://github.com/lstein/stable-diffusion/pull/86)
37+
for a synopsis of how this works. Note that when this feature is eventually added to the main branch, it will may be modified
38+
significantly.
39+
40+
---
41+
42+
## v1.10 (25 August 2022)
43+
44+
- A barebones but fully functional interactive web server for online generation of txt2img and img2img.
45+
46+
---
47+
48+
## v1.09 (24 August 2022)
49+
50+
- A new -v option allows you to generate multiple variants of an initial image
51+
in img2img mode. (kudos to [Oceanswave](https://github.com/Oceanswave). [
52+
See this discussion in the PR for examples and details on use](https://github.com/lstein/stable-diffusion/pull/71#issuecomment-1226700810))
53+
- Added ability to personalize text to image generation (kudos to [Oceanswave](https://github.com/Oceanswave) and [nicolai256](https://github.com/nicolai256))
54+
- Enabled all of the samplers from k_diffusion
55+
56+
---
57+
58+
## v1.08 (24 August 2022)
59+
60+
- Escape single quotes on the dream> command before trying to parse. This avoids
61+
parse errors.
62+
- Removed instruction to get Python3.8 as first step in Windows install.
63+
Anaconda3 does it for you.
64+
- Added bounds checks for numeric arguments that could cause crashes.
65+
- Cleaned up the copyright and license agreement files.
66+
67+
---
68+
69+
## v1.07 (23 August 2022)
70+
71+
- Image filenames will now never fill gaps in the sequence, but will be assigned the
72+
next higher name in the chosen directory. This ensures that the alphabetic and chronological
73+
sort orders are the same.
74+
75+
---
76+
77+
## v1.06 (23 August 2022)
78+
79+
- Added weighted prompt support contributed by [xraxra](https://github.com/xraxra)
80+
- Example of using weighted prompts to tweak a demonic figure contributed by [bmaltais](https://github.com/bmaltais)
81+
82+
---
83+
84+
## v1.05 (22 August 2022 - after the drop)
85+
86+
- Filenames now use the following formats:
87+
000010.95183149.png -- Two files produced by the same command (e.g. -n2),
88+
000010.26742632.png -- distinguished by a different seed.
89+
90+
000011.455191342.01.png -- Two files produced by the same command using
91+
000011.455191342.02.png -- a batch size>1 (e.g. -b2). They have the same seed.
92+
93+
000011.4160627868.grid#1-4.png -- a grid of four images (-g); the whole grid can
94+
be regenerated with the indicated key
95+
96+
- It should no longer be possible for one image to overwrite another
97+
- You can use the "cd" and "pwd" commands at the dream> prompt to set and retrieve
98+
the path of the output directory.
99+
100+
---
101+
102+
## v1.04 (22 August 2022 - after the drop)
103+
104+
- Updated README to reflect installation of the released weights.
105+
- Suppressed very noisy and inconsequential warning when loading the frozen CLIP
106+
tokenizer.
107+
108+
---
109+
110+
## v1.03 (22 August 2022)
111+
112+
- The original txt2img and img2img scripts from the CompViz repository have been moved into
113+
a subfolder named "orig_scripts", to reduce confusion.
114+
115+
---
116+
117+
## v1.02 (21 August 2022)
118+
119+
- A copy of the prompt and all of its switches and options is now stored in the corresponding
120+
image in a tEXt metadata field named "Dream". You can read the prompt using scripts/images2prompt.py,
121+
or an image editor that allows you to explore the full metadata.
122+
**Please run "conda env update -f environment.yaml" to load the k_lms dependencies!!**
123+
124+
---
125+
126+
## v1.01 (21 August 2022)
127+
128+
- added k_lms sampling.
129+
**Please run "conda env update -f environment.yaml" to load the k_lms dependencies!!**
130+
- use half precision arithmetic by default, resulting in faster execution and lower memory requirements
131+
Pass argument --full_precision to dream.py to get slower but more accurate image generation
132+
133+
---
134+
135+
## Links
136+
137+
- **[Read Me](readme.md)**

README.md

Lines changed: 53 additions & 131 deletions
Original file line numberDiff line numberDiff line change
@@ -4,6 +4,14 @@
44
<img src="static/logo_temp.png"/>
55
</p>
66

7+
<p align="center">
8+
<img src="https://img.shields.io/github/last-commit/lstein/stable-diffusion?logo=Python&logoColor=green&style=for-the-badge" alt="last-commit"/>
9+
<img src="https://img.shields.io/github/stars/lstein/stable-diffusion?logo=GitHub&style=for-the-badge" alt="stars"/>
10+
<br>
11+
<img src="https://img.shields.io/github/issues/lstein/stable-diffusion?logo=GitHub&style=for-the-badge" alt="issues"/>
12+
<img src="https://img.shields.io/github/issues-pr/lstein/stable-diffusion?logo=GitHub&style=for-the-badge" alt="pull-requests"/>
13+
</p>
14+
715
This is a fork of CompVis/stable-diffusion, the wonderful open source
816
text-to-image generator. This fork supports:
917

@@ -15,7 +23,6 @@ text-to-image generator. This fork supports:
1523

1624
3. A basic Web interface that allows you to run a local web server for
1725
generating images in your browser.
18-
1926
4. A notebook for running the code on Google Colab.
2027

2128
5. Upscaling and face fixing using the optional ESRGAN and GFPGAN
@@ -32,8 +39,9 @@ and make feature requests, and check back periodically for
3239
improvements and bug fixes.
3340

3441
# Table of Contents
42+
3543
1. [Major Features](#features)
36-
2. [Changelog](#changes)
44+
2. [Changelog](#latest)
3745
3. [Installation](#installation)
3846
4. [Troubleshooting](#troubleshooting)
3947
5. [Support](#support)
@@ -380,7 +388,7 @@ Credit goes to @rinongal and the repository located at
380388
https://github.com/rinongal/textual_inversion Please see the
381389
repository and associated paper for details and limitations.
382390

383-
# Changes
391+
# Latest
384392

385393
- v1.13 (in process)
386394

@@ -392,94 +400,7 @@ repository and associated paper for details and limitations.
392400
- Can specify --grid on dream.py command line as the default.
393401
- Miscellaneous internal bug and stability fixes.
394402

395-
- v1.12 (28 August 2022)
396-
397-
- Improved file handling, including ability to read prompts from standard input.
398-
(kudos to [Yunsaki](https://github.com/yunsaki)
399-
- The web server is now integrated with the dream.py script. Invoke by adding --web to
400-
the dream.py command arguments.
401-
- Face restoration and upscaling via GFPGAN and Real-ESGAN are now automatically
402-
enabled if the GFPGAN directory is located as a sibling to Stable Diffusion.
403-
VRAM requirements are modestly reduced. Thanks to both [Blessedcoolant](https://github.com/blessedcoolant) and
404-
[Oceanswave](https://github.com/oceanswave) for their work on this.
405-
- You can now swap samplers on the dream> command line. [Blessedcoolant](https://github.com/blessedcoolant)
406-
407-
- v1.11 (26 August 2022)
408-
- NEW FEATURE: Support upscaling and face enhancement using the GFPGAN module. (kudos to [Oceanswave](https://github.com/Oceanswave)
409-
- You now can specify a seed of -1 to use the previous image's seed, -2 to use the seed for the image generated before that, etc.
410-
Seed memory only extends back to the previous command, but will work on all images generated with the -n# switch.
411-
- Variant generation support temporarily disabled pending more general solution.
412-
- Created a feature branch named **yunsaki-morphing-dream** which adds experimental support for
413-
iteratively modifying the prompt and its parameters. Please see[ Pull Request #86](https://github.com/lstein/stable-diffusion/pull/86)
414-
for a synopsis of how this works. Note that when this feature is eventually added to the main branch, it will may be modified
415-
significantly.
416-
- v1.10 (25 August 2022)
417-
- A barebones but fully functional interactive web server for online generation of txt2img and img2img.
418-
- v1.09 (24 August 2022)
419-
- A new -v option allows you to generate multiple variants of an initial image
420-
in img2img mode. (kudos to [Oceanswave](https://github.com/Oceanswave). [
421-
See this discussion in the PR for examples and details on use](https://github.com/lstein/stable-diffusion/pull/71#issuecomment-1226700810))
422-
- Added ability to personalize text to image generation (kudos to [Oceanswave](https://github.com/Oceanswave) and [nicolai256](https://github.com/nicolai256))
423-
- Enabled all of the samplers from k_diffusion
424-
- v1.08 (24 August 2022)
425-
426-
- Escape single quotes on the dream> command before trying to parse. This avoids
427-
parse errors.
428-
- Removed instruction to get Python3.8 as first step in Windows install.
429-
Anaconda3 does it for you.
430-
- Added bounds checks for numeric arguments that could cause crashes.
431-
- Cleaned up the copyright and license agreement files.
432-
433-
- v1.07 (23 August 2022)
434-
435-
- Image filenames will now never fill gaps in the sequence, but will be assigned the
436-
next higher name in the chosen directory. This ensures that the alphabetic and chronological
437-
sort orders are the same.
438-
439-
- v1.06 (23 August 2022)
440-
441-
- Added weighted prompt support contributed by [xraxra](https://github.com/xraxra)
442-
- Example of using weighted prompts to tweak a demonic figure contributed by [bmaltais](https://github.com/bmaltais)
443-
444-
- v1.05 (22 August 2022 - after the drop)
445-
446-
- Filenames now use the following formats:
447-
000010.95183149.png -- Two files produced by the same command (e.g. -n2),
448-
000010.26742632.png -- distinguished by a different seed.
449-
450-
000011.455191342.01.png -- Two files produced by the same command using
451-
000011.455191342.02.png -- a batch size>1 (e.g. -b2). They have the same seed.
452-
453-
000011.4160627868.grid#1-4.png -- a grid of four images (-g); the whole grid can
454-
be regenerated with the indicated key
455-
456-
- It should no longer be possible for one image to overwrite another
457-
- You can use the "cd" and "pwd" commands at the dream> prompt to set and retrieve
458-
the path of the output directory.
459-
460-
- v1.04 (22 August 2022 - after the drop)
461-
462-
- Updated README to reflect installation of the released weights.
463-
- Suppressed very noisy and inconsequential warning when loading the frozen CLIP
464-
tokenizer.
465-
466-
- v1.03 (22 August 2022)
467-
468-
- The original txt2img and img2img scripts from the CompViz repository have been moved into
469-
a subfolder named "orig_scripts", to reduce confusion.
470-
471-
- v1.02 (21 August 2022)
472-
473-
- A copy of the prompt and all of its switches and options is now stored in the corresponding
474-
image in a tEXt metadata field named "Dream". You can read the prompt using scripts/images2prompt.py,
475-
or an image editor that allows you to explore the full metadata.
476-
**Please run "conda env update -f environment.yaml" to load the k_lms dependencies!!**
477-
478-
- v1.01 (21 August 2022)
479-
- added k_lms sampling.
480-
**Please run "conda env update -f environment.yaml" to load the k_lms dependencies!!**
481-
- use half precision arithmetic by default, resulting in faster execution and lower memory requirements
482-
Pass argument --full_precision to dream.py to get slower but more accurate image generation
403+
For older changelogs, please visit **[CHANGELOGS](CHANGELOG.md)**.
483404

484405
# Installation
485406

@@ -719,71 +640,72 @@ Downloading: "https://github.com/DagnyT/hardnet/raw/master/pretrained/train_libe
719640
100%|███████████████████████████████████████████████| 5.10M/5.10M [00:00<00:00, 101MB/s]
720641
...success
721642
```
643+
722644
# Troubleshooting
723645

724646
Here are a few common installation problems and their solutions. Often
725647
these are caused by incomplete installations or crashes during the
726648
install process.
727649

728-
* PROBLEM: During "conda env create -f environment.yaml", conda
729-
hangs indefinitely.
650+
- PROBLEM: During "conda env create -f environment.yaml", conda
651+
hangs indefinitely.
730652

731-
* SOLUTION: Enter the stable-diffusion directory and completely
732-
remove the "src" directory and all its contents. The safest way
733-
to do this is to enter the stable-diffusion directory and
734-
give the command "git clean -f". If this still doesn't fix
735-
the problem, try "conda clean -all" and then restart at the
736-
"conda env create" step.
653+
- SOLUTION: Enter the stable-diffusion directory and completely
654+
remove the "src" directory and all its contents. The safest way
655+
to do this is to enter the stable-diffusion directory and
656+
give the command "git clean -f". If this still doesn't fix
657+
the problem, try "conda clean -all" and then restart at the
658+
"conda env create" step.
737659

738660
---
739661

740-
* PROBLEM: dream.py crashes with the complaint that it can't find
741-
ldm.simplet2i.py. Or it complains that function is being passed
742-
incorrect parameters.
662+
- PROBLEM: dream.py crashes with the complaint that it can't find
663+
ldm.simplet2i.py. Or it complains that function is being passed
664+
incorrect parameters.
743665

744-
* SOLUTION: Reinstall the stable diffusion modules. Enter the
745-
stable-diffusion directory and give the command "pip install -e ."
666+
- SOLUTION: Reinstall the stable diffusion modules. Enter the
667+
stable-diffusion directory and give the command "pip install -e ."
746668

747669
---
748670

749-
* PROBLEM: dream.py dies, complaining of various missing modules, none
750-
of which starts with "ldm".
671+
- PROBLEM: dream.py dies, complaining of various missing modules, none
672+
of which starts with "ldm".
751673

752-
* SOLUTION: From within the stable-diffusion directory, run "conda env
753-
update -f environment.yaml" This is also frequently the solution to
754-
complaints about an unknown function in a module.
674+
- SOLUTION: From within the stable-diffusion directory, run "conda env
675+
update -f environment.yaml" This is also frequently the solution to
676+
complaints about an unknown function in a module.
755677

756678
---
757679

758-
* PROBLEM: There's a feature or bugfix in the Stable Diffusion GitHub
759-
that you want to try out.
680+
- PROBLEM: There's a feature or bugfix in the Stable Diffusion GitHub
681+
that you want to try out.
760682

761-
* SOLUTION: If the fix/feature is on the "main" branch, enter the stable-diffusion
762-
directory and do a "git pull". Usually this will be sufficient, but if
763-
you start to see errors about missing or incorrect modules, use the
764-
command "pip install -e ." and/or "conda env update -f environment.yaml"
765-
(These commands won't break anything.)
683+
- SOLUTION: If the fix/feature is on the "main" branch, enter the stable-diffusion
684+
directory and do a "git pull". Usually this will be sufficient, but if
685+
you start to see errors about missing or incorrect modules, use the
686+
command "pip install -e ." and/or "conda env update -f environment.yaml"
687+
(These commands won't break anything.)
766688

767-
* If the feature/fix is on a branch (e.g. "foo-bugfix"), the recipe is similar, but
768-
do a "git pull <name of branch>".
689+
- If the feature/fix is on a branch (e.g. "foo-bugfix"), the recipe is similar, but
690+
do a "git pull <name of branch>".
769691

770-
* If the feature/fix is in a pull request that has not yet been made
771-
part of the main branch or a feature/bugfix branch, then from the page
772-
for the desired pull request, look for the line at the top that reads
773-
"xxxx wants to merge xx commits into lstein:main from YYYYYY". Copy
774-
the URL in YYYY. It should have the format
775-
https://github.com/<name of contributor>/stable-diffusion/tree/<name
776-
of branch>
692+
- If the feature/fix is in a pull request that has not yet been made
693+
part of the main branch or a feature/bugfix branch, then from the page
694+
for the desired pull request, look for the line at the top that reads
695+
"xxxx wants to merge xx commits into lstein:main from YYYYYY". Copy
696+
the URL in YYYY. It should have the format
697+
https://github.com/<name of contributor>/stable-diffusion/tree/<name
698+
of branch>
777699

778-
* Then **go to the directory above stable-diffusion**, and rename the
779-
directory to "stable-diffusion.lstein", "stable-diffusion.old", or
780-
whatever. You can then git clone the branch that contains the
781-
pull request:
700+
- Then **go to the directory above stable-diffusion**, and rename the
701+
directory to "stable-diffusion.lstein", "stable-diffusion.old", or
702+
whatever. You can then git clone the branch that contains the
703+
pull request:
782704

783-
~~~~
705+
```
784706
git clone https://github.com/<name of contributor>/stable-diffusion/tree/<name
785707
of branch>
786-
~~~~
708+
```
787709

788710
You will need to go through the install procedure again, but it should
789711
be fast because all the dependencies are already loaded.

0 commit comments

Comments
 (0)