{"id":600103,"date":"2023-01-22T06:49:25","date_gmt":"2023-01-22T12:49:25","guid":{"rendered":"https:\/\/news.sellorbuyhomefast.com\/index.php\/2023\/01\/22\/new-ai-edits-images-based-on-text-instructions\/"},"modified":"2023-01-22T06:49:25","modified_gmt":"2023-01-22T12:49:25","slug":"new-ai-edits-images-based-on-text-instructions","status":"publish","type":"post","link":"https:\/\/newsycanuse.com\/index.php\/2023\/01\/22\/new-ai-edits-images-based-on-text-instructions\/","title":{"rendered":"New AI edits images based on text instructions"},"content":{"rendered":"<div id=\"readme\" data-target=\"readme-toc.content\">\n<article itemprop=\"text\">\n<h2 dir=\"auto\">ImaginAIry <g-emoji alias=\"robot\" fallback-src=\"https:\/\/github.githubassets.com\/images\/icons\/emoji\/unicode\/1f916.png\">????<\/g-emoji><g-emoji alias=\"brain\" fallback-src=\"https:\/\/github.githubassets.com\/images\/icons\/emoji\/unicode\/1f9e0.png\">????<\/g-emoji><\/h2>\n<p dir=\"auto\"><a href=\"https:\/\/pepy.tech\/project\/imaginairy\" rel=\"nofollow\"><img decoding=\"async\" src=\"https:\/\/camo.githubusercontent.com\/4570b917bfe899cd0a3715e0bd1adb88c1c82384f0c5e9030329591fa1a990bd\/68747470733a2f2f706570792e746563682f62616467652f696d6167696e61697279\" alt=\"Downloads\" data-canonical-src=\"https:\/\/pepy.tech\/badge\/imaginairy\"><\/a><br \/>\n<a href=\"https:\/\/pypi.org\/project\/imaginairy\/\" rel=\"nofollow\"><img decoding=\"async\" src=\"https:\/\/camo.githubusercontent.com\/82d218e9c752734062e7437ed495d0f94defbd641732b2008925c72e1907d7a6\/68747470733a2f2f696d672e736869656c64732e696f2f707970692f762f696d6167696e616972792e737667\" alt=\"image\" data-canonical-src=\"https:\/\/img.shields.io\/pypi\/v\/imaginairy.svg\"><\/a><br \/>\n<a href=\"https:\/\/github.com\/brycedrennan\/imaginAIry\/blob\/master\/LICENSE\/\"><img decoding=\"async\" src=\"https:\/\/camo.githubusercontent.com\/029166d85f92969845201e59c3fcd8c8345556036155ff18140f6a9e796173a3\/68747470733a2f2f696d672e736869656c64732e696f2f62616467652f6c6963656e73652d4d49542d677265656e\" alt=\"image\" data-canonical-src=\"https:\/\/img.shields.io\/badge\/license-MIT-green\"><\/a><br \/>\n<a href=\"https:\/\/github.com\/ambv\/black\"><img decoding=\"async\" src=\"https:\/\/camo.githubusercontent.com\/d91ed7ac7abbd5a6102cbe988dd8e9ac21bde0a73d97be7603b891ad08ce3479\/68747470733a2f2f696d672e736869656c64732e696f2f62616467652f636f64652532307374796c652d626c61636b2d3030303030302e737667\" alt=\"Code style: black\" data-canonical-src=\"https:\/\/img.shields.io\/badge\/code%20style-black-000000.svg\"><\/a><br \/>\n<a href=\"https:\/\/github.com\/brycedrennan\/imaginAIry\/actions\/workflows\/ci.yaml\"><img decoding=\"async\" src=\"https:\/\/github.com\/brycedrennan\/imaginAIry\/actions\/workflows\/ci.yaml\/badge.svg\" alt=\"Python Checks\"><\/a><\/p>\n<p dir=\"auto\">AI imagined images. Pythonic generation of stable diffusion images.<\/p>\n<p dir=\"auto\">&#8220;just works&#8221; on Linux and macOS(M1) (and maybe windows?).<\/p>\n<h2 dir=\"auto\">Examples<\/h2>\n<div dir=\"auto\" data-snippet-clipboard-copy-content=\"# on macOS, make sure rust is installed first\n>> pip install imaginairy<br \/>\n>> imagine &#8220;a scenic landscape&#8221; &#8220;a photo of a dog&#8221; &#8220;photo of a fruit bowl&#8221; &#8220;portrait photo of a freckled woman&#8221;<br \/>\n# Stable Diffusion 2.1<br \/>\n>> imagine &#8211;model SD-2.1 &#8220;a forest&#8221;&#8221;><\/p>\n<pre><span><span>#<\/span> on macOS, make sure rust is installed first<\/span>\n<span>>><\/span> pip install imaginairy\n<span>>><\/span> imagine <span><span>\"<\/span>a scenic landscape<span>\"<\/span><\/span> <span><span>\"<\/span>a photo of a dog<span>\"<\/span><\/span> <span><span>\"<\/span>photo of a fruit bowl<span>\"<\/span><\/span> <span><span>\"<\/span>portrait photo of a freckled woman<span>\"<\/span><\/span>\n<span><span>#<\/span> Stable Diffusion 2.1<\/span>\n<span>>><\/span> imagine --model SD-2.1 <span><span>\"<\/span>a forest<span>\"<\/span><\/span><\/pre>\n<\/div>\n<details>\n<summary>Console Output<\/summary>\n<div dir=\"auto\" data-snippet-clipboard-copy-content=\"???????? received 4 prompt(s) and will repeat them 1 times to create 4 images.\nLoading model onto mps backend...\nGenerating ????  : \"a scenic landscape\" 512x512px seed:557988237 prompt-strength:7.5 steps:40 sampler-type:PLMS\n    PLMS Sampler: 100%|\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588| 40\/40 [00:29<00:00,  1.36it\/s]\n    ????  saved to: .\/outputs\/000001_557988237_PLMS40_PS7.5_a_scenic_landscape.jpg\nGenerating ????  : \"a photo of a dog\" 512x512px seed:277230171 prompt-strength:7.5 steps:40 sampler-type:PLMS\n    PLMS Sampler: 100%|\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588| 40\/40 [00:28<00:00,  1.41it\/s]\n    ????  saved to: .\/outputs\/000002_277230171_PLMS40_PS7.5_a_photo_of_a_dog.jpg\nGenerating ????  : \"photo of a fruit bowl\" 512x512px seed:639753980 prompt-strength:7.5 steps:40 sampler-type:PLMS\n    PLMS Sampler: 100%|\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588| 40\/40 [00:28<00:00,  1.40it\/s]\n    ????  saved to: .\/outputs\/000003_639753980_PLMS40_PS7.5_photo_of_a_fruit_bowl.jpg\nGenerating ????  : \"portrait photo of a freckled woman\" 512x512px seed:500686645 prompt-strength:7.5 steps:40 sampler-type:PLMS\n    PLMS Sampler: 100%|\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588| 40\/40 [00:29<00:00,  1.37it\/s]\n    ????  saved to: .\/outputs\/000004_500686645_PLMS40_PS7.5_portrait_photo_of_a_freckled_woman.jpg\"><\/p>\n<pre>???????? received 4 prompt(s) and will repeat them 1 <span>times<\/span> to create 4 images.\nLoading model onto mps backend...\nGenerating ????  <span>:<\/span> <span><span>\"<\/span>a scenic landscape<span>\"<\/span><\/span> 512x512px seed:557988237 prompt-strength:7.5 steps:40 sampler-type:PLMS\n    PLMS Sampler: 100%<span>|<\/span>\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588<span>|<\/span> 40\/40 [00:<span>29<<\/span>00:00,  1.36it\/s]\n    ????  saved to: .\/outputs\/000001_557988237_PLMS40_PS7.5_a_scenic_landscape.jpg\nGenerating ????  <span>:<\/span> <span><span>\"<\/span>a photo of a dog<span>\"<\/span><\/span> 512x512px seed:277230171 prompt-strength:7.5 steps:40 sampler-type:PLMS\n    PLMS Sampler: 100%<span>|<\/span>\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588<span>|<\/span> 40\/40 [00:<span>28<<\/span>00:00,  1.41it\/s]\n    ????  saved to: .\/outputs\/000002_277230171_PLMS40_PS7.5_a_photo_of_a_dog.jpg\nGenerating ????  <span>:<\/span> <span><span>\"<\/span>photo of a fruit bowl<span>\"<\/span><\/span> 512x512px seed:639753980 prompt-strength:7.5 steps:40 sampler-type:PLMS\n    PLMS Sampler: 100%<span>|<\/span>\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588<span>|<\/span> 40\/40 [00:<span>28<<\/span>00:00,  1.40it\/s]\n    ????  saved to: .\/outputs\/000003_639753980_PLMS40_PS7.5_photo_of_a_fruit_bowl.jpg\nGenerating ????  <span>:<\/span> <span><span>\"<\/span>portrait photo of a freckled woman<span>\"<\/span><\/span> 512x512px seed:500686645 prompt-strength:7.5 steps:40 sampler-type:PLMS\n    PLMS Sampler: 100%<span>|<\/span>\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588<span>|<\/span> 40\/40 [00:<span>29<<\/span>00:00,  1.37it\/s]\n    ????  saved to: .\/outputs\/000004_500686645_PLMS40_PS7.5_portrait_photo_of_a_freckled_woman.jpg<\/pre>\n<\/div>\n<\/details>\n<p dir=\"auto\"><a target=\"_blank\" rel=\"noopener noreferrer nofollow\" href=\"https:\/\/raw.githubusercontent.com\/brycedrennan\/imaginAIry\/master\/assets\/000019_786355545_PLMS50_PS7.5_a_scenic_landscape.jpg\"><img decoding=\"async\" src=\"https:\/\/raw.githubusercontent.com\/brycedrennan\/imaginAIry\/master\/assets\/000019_786355545_PLMS50_PS7.5_a_scenic_landscape.jpg\" height=\"256\"><\/a><a target=\"_blank\" rel=\"noopener noreferrer nofollow\" href=\"https:\/\/raw.githubusercontent.com\/brycedrennan\/imaginAIry\/master\/assets\/000032_337692011_PLMS40_PS7.5_a_photo_of_a_dog.jpg\"><img decoding=\"async\" src=\"https:\/\/raw.githubusercontent.com\/brycedrennan\/imaginAIry\/master\/assets\/000032_337692011_PLMS40_PS7.5_a_photo_of_a_dog.jpg\" height=\"256\"><\/a><br \/>\n<a target=\"_blank\" rel=\"noopener noreferrer nofollow\" href=\"https:\/\/raw.githubusercontent.com\/brycedrennan\/imaginAIry\/master\/assets\/000056_293284644_PLMS40_PS7.5_photo_of_a_bowl_of_fruit.jpg\"><img decoding=\"async\" src=\"https:\/\/raw.githubusercontent.com\/brycedrennan\/imaginAIry\/master\/assets\/000056_293284644_PLMS40_PS7.5_photo_of_a_bowl_of_fruit.jpg\" height=\"256\"><\/a><a target=\"_blank\" rel=\"noopener noreferrer nofollow\" href=\"https:\/\/raw.githubusercontent.com\/brycedrennan\/imaginAIry\/master\/assets\/000078_260972468_PLMS40_PS7.5_portrait_photo_of_a_freckled_woman.jpg\"><img decoding=\"async\" src=\"https:\/\/raw.githubusercontent.com\/brycedrennan\/imaginAIry\/master\/assets\/000078_260972468_PLMS40_PS7.5_portrait_photo_of_a_freckled_woman.jpg\" height=\"256\"><\/a><\/p>\n<h3 dir=\"auto\"><g-emoji alias=\"tada\" fallback-src=\"https:\/\/github.githubassets.com\/images\/icons\/emoji\/unicode\/1f389.png\">????<\/g-emoji> Edit Images with Instructions alone! <a href=\"https:\/\/github.com\/timothybrooks\/instruct-pix2pix\">by InstructPix2Pix<\/a><\/h3>\n<p dir=\"auto\">Just tell imaginairy how to edit the image and it will do it for you!<br \/>\nUse prompt strength to control how strong the edit is. For extra control you can combine<br \/>\nwith prompt-based masking.<\/p>\n<div dir=\"auto\" data-snippet-clipboard-copy-content=\">> aimg edit scenic_landscape.jpg &#8220;make it winter&#8221; &#8211;prompt-strength 20<br \/>\n>> aimg edit dog.jpg &#8220;make the dog red&#8221; &#8211;prompt-strength 5<br \/>\n>> aimg edit bowl_of_fruit.jpg &#8220;replace the fruit with strawberries&#8221;<br \/>\n>> aimg edit freckled_woman.jpg &#8220;make her a cyborg&#8221; &#8211;prompt-strength 13<br \/>\n>> aimg edit pearl_girl.jpg &#8220;make her wear clown makup&#8221;<br \/>\n>> aimg edit mona-lisa.jpg &#8220;make it a color professional photo headshot&#8221; &#8211;negative-prompt &#8220;old, ugly&#8221;&#8221;><\/p>\n<pre><span>>><\/span> aimg edit scenic_landscape.jpg <span><span>\"<\/span>make it winter<span>\"<\/span><\/span> --prompt-strength 20\n<span>>><\/span> aimg edit dog.jpg <span><span>\"<\/span>make the dog red<span>\"<\/span><\/span> --prompt-strength 5\n<span>>><\/span> aimg edit bowl_of_fruit.jpg <span><span>\"<\/span>replace the fruit with strawberries<span>\"<\/span><\/span>\n<span>>><\/span> aimg edit freckled_woman.jpg <span><span>\"<\/span>make her a cyborg<span>\"<\/span><\/span> --prompt-strength 13\n<span>>><\/span> aimg edit pearl_girl.jpg <span><span>\"<\/span>make her wear clown makup<span>\"<\/span><\/span>\n<span>>><\/span> aimg edit mona-lisa.jpg <span><span>\"<\/span>make it a color professional photo headshot<span>\"<\/span><\/span> --negative-prompt <span><span>\"<\/span>old, ugly<span>\"<\/span><\/span><\/pre>\n<\/div>\n<p dir=\"auto\"><a target=\"_blank\" rel=\"noopener noreferrer\" href=\"http:\/\/github.com\/brycedrennan\/imaginAIry\/blob\/master\/assets\/scenic_landscape_winter.jpg\"><img decoding=\"async\" src=\"http:\/\/github.com\/brycedrennan\/imaginAIry\/raw\/master\/assets\/scenic_landscape_winter.jpg\" height=\"256\"><\/a><a target=\"_blank\" rel=\"noopener noreferrer\" href=\"http:\/\/github.com\/brycedrennan\/imaginAIry\/blob\/master\/assets\/dog_red.jpg\"><img decoding=\"async\" src=\"http:\/\/github.com\/brycedrennan\/imaginAIry\/raw\/master\/assets\/dog_red.jpg\" height=\"256\"><\/a><br \/>\n<a target=\"_blank\" rel=\"noopener noreferrer\" href=\"http:\/\/github.com\/brycedrennan\/imaginAIry\/blob\/master\/assets\/bowl_of_fruit_strawberries.jpg\"><img decoding=\"async\" src=\"http:\/\/github.com\/brycedrennan\/imaginAIry\/raw\/master\/assets\/bowl_of_fruit_strawberries.jpg\" height=\"256\"><\/a><a target=\"_blank\" rel=\"noopener noreferrer\" href=\"http:\/\/github.com\/brycedrennan\/imaginAIry\/blob\/master\/assets\/freckled_woman_cyborg.jpg\"><img decoding=\"async\" src=\"http:\/\/github.com\/brycedrennan\/imaginAIry\/raw\/master\/assets\/freckled_woman_cyborg.jpg\" height=\"256\"><\/a><br \/>\n<a target=\"_blank\" rel=\"noopener noreferrer\" href=\"http:\/\/github.com\/brycedrennan\/imaginAIry\/blob\/master\/assets\/girl_with_a_pearl_earring_clown_makeup.jpg\"><img decoding=\"async\" src=\"http:\/\/github.com\/brycedrennan\/imaginAIry\/raw\/master\/assets\/girl_with_a_pearl_earring_clown_makeup.jpg\" height=\"256\"><\/a><a target=\"_blank\" rel=\"noopener noreferrer\" href=\"http:\/\/github.com\/brycedrennan\/imaginAIry\/blob\/master\/assets\/mona-lisa-headshot-photo.jpg\"><img decoding=\"async\" src=\"http:\/\/github.com\/brycedrennan\/imaginAIry\/raw\/master\/assets\/mona-lisa-headshot-photo.jpg\" height=\"256\"><\/a><\/p>\n<p dir=\"auto\">Want just quickly have some fun? Try <code>--suprise-me<\/code> to apply some pre-defined edits.<\/p>\n<div dir=\"auto\" data-snippet-clipboard-copy-content=\">> aimg edit &#8211;gif &#8211;suprise-me pearl_girl.jpg<br \/>\n>> aimg edit &#8211;gif &#8211;suprise-me mona-lisa.jpg<br \/>\n>> aimg edit &#8211;gif &#8211;suprise-me luke.jpg<br \/>\n>> aimg edit &#8211;gif &#8211;suprise-me spock.jpg&#8221;><\/p>\n<pre><span>>><\/span> aimg edit --gif --suprise-me pearl_girl.jpg\n<span>>><\/span> aimg edit --gif --suprise-me mona-lisa.jpg\n<span>>><\/span> aimg edit --gif --suprise-me luke.jpg\n<span>>><\/span> aimg edit --gif --suprise-me spock.jpg<\/pre>\n<\/div>\n<p dir=\"auto\"><a target=\"_blank\" rel=\"noopener noreferrer\" href=\"http:\/\/github.com\/brycedrennan\/imaginAIry\/blob\/master\/assets\/girl_with_a_pearl_earring_suprise.gif\"><img decoding=\"async\" src=\"http:\/\/github.com\/brycedrennan\/imaginAIry\/raw\/master\/assets\/girl_with_a_pearl_earring_suprise.gif\" height=\"256\" data-animated-image><\/a><a target=\"_blank\" rel=\"noopener noreferrer\" href=\"http:\/\/github.com\/brycedrennan\/imaginAIry\/blob\/master\/assets\/mona-lisa-suprise.gif\"><img decoding=\"async\" src=\"http:\/\/github.com\/brycedrennan\/imaginAIry\/raw\/master\/assets\/mona-lisa-suprise.gif\" height=\"256\" data-animated-image><\/a><br \/>\n<a target=\"_blank\" rel=\"noopener noreferrer\" href=\"http:\/\/github.com\/brycedrennan\/imaginAIry\/blob\/master\/assets\/luke-suprise.gif\"><img decoding=\"async\" src=\"http:\/\/github.com\/brycedrennan\/imaginAIry\/raw\/master\/assets\/luke-suprise.gif\" height=\"256\" data-animated-image><\/a><a target=\"_blank\" rel=\"noopener noreferrer\" href=\"http:\/\/github.com\/brycedrennan\/imaginAIry\/blob\/master\/assets\/spock-suprise.gif\"><img decoding=\"async\" src=\"http:\/\/github.com\/brycedrennan\/imaginAIry\/raw\/master\/assets\/spock-suprise.gif\" height=\"256\" data-animated-image><\/a><br \/>\n<a target=\"_blank\" rel=\"noopener noreferrer\" href=\"http:\/\/github.com\/brycedrennan\/imaginAIry\/blob\/master\/assets\/gg-bridge-suprise.gif\"><img decoding=\"async\" src=\"http:\/\/github.com\/brycedrennan\/imaginAIry\/raw\/master\/assets\/gg-bridge-suprise.gif\" height=\"256\" data-animated-image><\/a><a target=\"_blank\" rel=\"noopener noreferrer\" href=\"http:\/\/github.com\/brycedrennan\/imaginAIry\/blob\/master\/assets\/shire-suprise.gif\"><img decoding=\"async\" src=\"http:\/\/github.com\/brycedrennan\/imaginAIry\/raw\/master\/assets\/shire-suprise.gif\" height=\"256\" data-animated-image><\/a><\/p>\n<h3 dir=\"auto\">Prompt Based Masking  <a href=\"https:\/\/github.com\/timojl\/clipseg\">by clipseg<\/a><\/h3>\n<p dir=\"auto\">Specify advanced text based masks using boolean logic and strength modifiers.<br \/>\nMask syntax:<\/p>\n<ul dir=\"auto\">\n<li>mask descriptions must be lowercase<\/li>\n<li>keywords (<code>AND<\/code>, <code>OR<\/code>, <code>NOT<\/code>) must be uppercase<\/li>\n<li>parentheses are supported<\/li>\n<li>mask modifiers may be appended to any mask or group of masks.  Example: <code>(dog OR cat){+5}<\/code> means that we&#8217;ll<br \/>\nselect any dog or cat and then expand the size of the mask area by 5 pixels.  Valid mask modifiers:<\/p>\n<ul dir=\"auto\">\n<li><code>{+n}<\/code> &#8211; expand mask by n pixels<\/li>\n<li><code>{-n}<\/code> &#8211; shrink mask by n pixels<\/li>\n<li><code>{*n}<\/code> &#8211; multiply mask strength. will expand mask to areas that weakly matched the mask description<\/li>\n<li><code>{\/n}<\/code> &#8211; divide mask strength. will reduce mask to areas that most strongly matched the mask description. probably not useful<\/li>\n<\/ul>\n<\/li>\n<\/ul>\n<p dir=\"auto\">When writing strength modifiers keep in mind that pixel values are between 0 and 1.<\/p>\n<div dir=\"auto\" data-snippet-clipboard-copy-content=\">> imagine<br \/>\n    &#8211;init-image pearl_earring.jpg<br \/>\n    &#8211;mask-prompt &#8220;face AND NOT (bandana OR hair OR blue fabric){*6}&#8221;<br \/>\n    &#8211;mask-mode keep<br \/>\n    &#8211;init-image-strength .2<br \/>\n    &#8211;fix-faces<br \/>\n    &#8220;a modern female president&#8221; &#8220;a female robot&#8221; &#8220;a female doctor&#8221; &#8220;a female firefighter&#8221;&#8221;><\/p>\n<pre><span>>><\/span> imagine \n    --init-image pearl_earring.jpg <span> <\/span>\n    --mask-prompt <span><span>\"<\/span>face AND NOT (bandana OR hair OR blue fabric){*6}<span>\"<\/span><\/span> \n    --mask-mode keep \n    --init-image-strength .2 \n    --fix-faces \n    <span><span>\"<\/span>a modern female president<span>\"<\/span><\/span> <span><span>\"<\/span>a female robot<span>\"<\/span><\/span> <span><span>\"<\/span>a female doctor<span>\"<\/span><\/span> <span><span>\"<\/span>a female firefighter<span>\"<\/span><\/span><\/pre>\n<\/div>\n<p dir=\"auto\"><a target=\"_blank\" rel=\"noopener noreferrer nofollow\" href=\"https:\/\/raw.githubusercontent.com\/brycedrennan\/imaginAIry\/master\/assets\/mask_examples\/pearl000.jpg\"><img decoding=\"async\" src=\"https:\/\/raw.githubusercontent.com\/brycedrennan\/imaginAIry\/master\/assets\/mask_examples\/pearl000.jpg\" height=\"200\"><\/a><g-emoji alias=\"arrow_right\" fallback-src=\"https:\/\/github.githubassets.com\/images\/icons\/emoji\/unicode\/27a1.png\">\u27a1\ufe0f<\/g-emoji><br \/>\n<a target=\"_blank\" rel=\"noopener noreferrer\" href=\"http:\/\/github.com\/brycedrennan\/imaginAIry\/blob\/master\/assets\/mask_examples\/pearl_pres.png\"><img decoding=\"async\" src=\"http:\/\/github.com\/brycedrennan\/imaginAIry\/raw\/master\/assets\/mask_examples\/pearl_pres.png\" height=\"200\"><\/a><br \/>\n<a target=\"_blank\" rel=\"noopener noreferrer\" href=\"http:\/\/github.com\/brycedrennan\/imaginAIry\/blob\/master\/assets\/mask_examples\/pearl_robot.png\"><img decoding=\"async\" src=\"http:\/\/github.com\/brycedrennan\/imaginAIry\/raw\/master\/assets\/mask_examples\/pearl_robot.png\" height=\"200\"><\/a><br \/>\n<a target=\"_blank\" rel=\"noopener noreferrer\" href=\"http:\/\/github.com\/brycedrennan\/imaginAIry\/blob\/master\/assets\/mask_examples\/pearl_doctor.png\"><img decoding=\"async\" src=\"http:\/\/github.com\/brycedrennan\/imaginAIry\/raw\/master\/assets\/mask_examples\/pearl_doctor.png\" height=\"200\"><\/a><br \/>\n<a target=\"_blank\" rel=\"noopener noreferrer\" href=\"http:\/\/github.com\/brycedrennan\/imaginAIry\/blob\/master\/assets\/mask_examples\/pearl_firefighter.png\"><img decoding=\"async\" src=\"http:\/\/github.com\/brycedrennan\/imaginAIry\/raw\/master\/assets\/mask_examples\/pearl_firefighter.png\" height=\"200\"><\/a><\/p>\n<div dir=\"auto\" data-snippet-clipboard-copy-content=\">> imagine<br \/>\n    &#8211;init-image fruit-bowl.jpg<br \/>\n    &#8211;mask-prompt &#8220;fruit OR fruit stem{*6}&#8221;<br \/>\n    &#8211;mask-mode replace<br \/>\n    &#8211;mask-modify-original<br \/>\n    &#8211;init-image-strength .1<br \/>\n    &#8220;a bowl of kittens&#8221; &#8220;a bowl of gold coins&#8221; &#8220;a bowl of popcorn&#8221; &#8220;a bowl of spaghetti&#8221;&#8221;><\/p>\n<pre><span>>><\/span> imagine \n    --init-image fruit-bowl.jpg \n    --mask-prompt <span><span>\"<\/span>fruit OR fruit stem{*6}<span>\"<\/span><\/span> \n    --mask-mode replace \n    --mask-modify-original \n    --init-image-strength .1 \n    <span><span>\"<\/span>a bowl of kittens<span>\"<\/span><\/span> <span><span>\"<\/span>a bowl of gold coins<span>\"<\/span><\/span> <span><span>\"<\/span>a bowl of popcorn<span>\"<\/span><\/span> <span><span>\"<\/span>a bowl of spaghetti<span>\"<\/span><\/span><\/pre>\n<\/div>\n<p dir=\"auto\"><a target=\"_blank\" rel=\"noopener noreferrer nofollow\" href=\"https:\/\/raw.githubusercontent.com\/brycedrennan\/imaginAIry\/master\/assets\/000056_293284644_PLMS40_PS7.5_photo_of_a_bowl_of_fruit.jpg\"><img decoding=\"async\" src=\"https:\/\/raw.githubusercontent.com\/brycedrennan\/imaginAIry\/master\/assets\/000056_293284644_PLMS40_PS7.5_photo_of_a_bowl_of_fruit.jpg\" height=\"200\"><\/a><g-emoji alias=\"arrow_right\" fallback-src=\"https:\/\/github.githubassets.com\/images\/icons\/emoji\/unicode\/27a1.png\">\u27a1\ufe0f<\/g-emoji><br \/>\n<a target=\"_blank\" rel=\"noopener noreferrer nofollow\" href=\"https:\/\/raw.githubusercontent.com\/brycedrennan\/imaginAIry\/master\/assets\/mask_examples\/bowl004.jpg\"><img decoding=\"async\" src=\"https:\/\/raw.githubusercontent.com\/brycedrennan\/imaginAIry\/master\/assets\/mask_examples\/bowl004.jpg\" height=\"200\"><\/a><br \/>\n<a target=\"_blank\" rel=\"noopener noreferrer nofollow\" href=\"https:\/\/raw.githubusercontent.com\/brycedrennan\/imaginAIry\/master\/assets\/mask_examples\/bowl001.jpg\"><img decoding=\"async\" src=\"https:\/\/raw.githubusercontent.com\/brycedrennan\/imaginAIry\/master\/assets\/mask_examples\/bowl001.jpg\" height=\"200\"><\/a><br \/>\n<a target=\"_blank\" rel=\"noopener noreferrer nofollow\" href=\"https:\/\/raw.githubusercontent.com\/brycedrennan\/imaginAIry\/master\/assets\/mask_examples\/bowl002.jpg\"><img decoding=\"async\" src=\"https:\/\/raw.githubusercontent.com\/brycedrennan\/imaginAIry\/master\/assets\/mask_examples\/bowl002.jpg\" height=\"200\"><\/a><br \/>\n<a target=\"_blank\" rel=\"noopener noreferrer nofollow\" href=\"https:\/\/raw.githubusercontent.com\/brycedrennan\/imaginAIry\/master\/assets\/mask_examples\/bowl003.jpg\"><img decoding=\"async\" src=\"https:\/\/raw.githubusercontent.com\/brycedrennan\/imaginAIry\/master\/assets\/mask_examples\/bowl003.jpg\" height=\"200\"><\/a><\/p>\n<h3 dir=\"auto\">Face Enhancement <a href=\"https:\/\/github.com\/sczhou\/CodeFormer\">by CodeFormer<\/a><\/h3>\n<div dir=\"auto\" data-snippet-clipboard-copy-content=\">> imagine &#8220;a couple smiling&#8221; &#8211;steps 40 &#8211;seed 1 &#8211;fix-faces&#8221;><\/p>\n<pre><span>>><\/span> imagine <span><span>\"<\/span>a couple smiling<span>\"<\/span><\/span> --steps 40 --seed 1 --fix-faces<\/pre>\n<\/div>\n<p dir=\"auto\"><a target=\"_blank\" rel=\"noopener noreferrer\" href=\"https:\/\/github.com\/brycedrennan\/imaginAIry\/raw\/master\/assets\/000178_1_PLMS40_PS7.5_a_couple_smiling_nofix.png\"><img decoding=\"async\" src=\"https:\/\/github.com\/brycedrennan\/imaginAIry\/raw\/master\/assets\/000178_1_PLMS40_PS7.5_a_couple_smiling_nofix.png\" height=\"256\"><\/a> <g-emoji alias=\"arrow_right\" fallback-src=\"https:\/\/github.githubassets.com\/images\/icons\/emoji\/unicode\/27a1.png\">\u27a1\ufe0f<\/g-emoji><br \/>\n<a target=\"_blank\" rel=\"noopener noreferrer\" href=\"https:\/\/github.com\/brycedrennan\/imaginAIry\/raw\/master\/assets\/000178_1_PLMS40_PS7.5_a_couple_smiling_fixed.png\"><img decoding=\"async\" src=\"https:\/\/github.com\/brycedrennan\/imaginAIry\/raw\/master\/assets\/000178_1_PLMS40_PS7.5_a_couple_smiling_fixed.png\" height=\"256\"><\/a><\/p>\n<h3 dir=\"auto\">Upscaling <a href=\"https:\/\/github.com\/xinntao\/Real-ESRGAN\">by RealESRGAN<\/a><\/h3>\n<div dir=\"auto\" data-snippet-clipboard-copy-content=\">> imagine &#8220;colorful smoke&#8221; &#8211;steps 40 &#8211;upscale&#8221;><\/p>\n<pre><span>>><\/span> imagine <span><span>\"<\/span>colorful smoke<span>\"<\/span><\/span> --steps 40 --upscale<\/pre>\n<\/div>\n<p dir=\"auto\"><a target=\"_blank\" rel=\"noopener noreferrer\" href=\"https:\/\/github.com\/brycedrennan\/imaginAIry\/raw\/master\/assets\/000206_856637805_PLMS40_PS7.5_colorful_smoke.jpg\"><img decoding=\"async\" src=\"https:\/\/github.com\/brycedrennan\/imaginAIry\/raw\/master\/assets\/000206_856637805_PLMS40_PS7.5_colorful_smoke.jpg\" height=\"128\"><\/a> <g-emoji alias=\"arrow_right\" fallback-src=\"https:\/\/github.githubassets.com\/images\/icons\/emoji\/unicode\/27a1.png\">\u27a1\ufe0f<\/g-emoji><br \/>\n<a target=\"_blank\" rel=\"noopener noreferrer\" href=\"https:\/\/github.com\/brycedrennan\/imaginAIry\/raw\/master\/assets\/000206_856637805_PLMS40_PS7.5_colorful_smoke_upscaled.jpg\"><img decoding=\"async\" src=\"https:\/\/github.com\/brycedrennan\/imaginAIry\/raw\/master\/assets\/000206_856637805_PLMS40_PS7.5_colorful_smoke_upscaled.jpg\" height=\"256\"><\/a><\/p>\n<h3 dir=\"auto\">Tiled Images<\/h3>\n<div dir=\"auto\" data-snippet-clipboard-copy-content=\">> imagine  &#8220;gold coins&#8221; &#8220;a lush forest&#8221; &#8220;piles of old books&#8221; leaves &#8211;tile&#8221;><\/p>\n<pre><span>>><\/span> imagine  <span><span>\"<\/span>gold coins<span>\"<\/span><\/span> <span><span>\"<\/span>a lush forest<span>\"<\/span><\/span> <span><span>\"<\/span>piles of old books<span>\"<\/span><\/span> leaves --tile<\/pre>\n<\/div>\n<p dir=\"auto\"><a target=\"_blank\" rel=\"noopener noreferrer nofollow\" href=\"https:\/\/raw.githubusercontent.com\/brycedrennan\/imaginAIry\/master\/assets\/000066_801493266_PLMS40_PS7.5_gold_coins.jpg\"><img decoding=\"async\" src=\"https:\/\/raw.githubusercontent.com\/brycedrennan\/imaginAIry\/master\/assets\/000066_801493266_PLMS40_PS7.5_gold_coins.jpg\" height=\"128\"><\/a><a target=\"_blank\" rel=\"noopener noreferrer nofollow\" href=\"https:\/\/raw.githubusercontent.com\/brycedrennan\/imaginAIry\/master\/assets\/000066_801493266_PLMS40_PS7.5_gold_coins.jpg\"><img decoding=\"async\" src=\"https:\/\/raw.githubusercontent.com\/brycedrennan\/imaginAIry\/master\/assets\/000066_801493266_PLMS40_PS7.5_gold_coins.jpg\" height=\"128\"><\/a><a target=\"_blank\" rel=\"noopener noreferrer nofollow\" href=\"https:\/\/raw.githubusercontent.com\/brycedrennan\/imaginAIry\/master\/assets\/000066_801493266_PLMS40_PS7.5_gold_coins.jpg\"><img decoding=\"async\" src=\"https:\/\/raw.githubusercontent.com\/brycedrennan\/imaginAIry\/master\/assets\/000066_801493266_PLMS40_PS7.5_gold_coins.jpg\" height=\"128\"><\/a><br \/>\n<a target=\"_blank\" rel=\"noopener noreferrer nofollow\" href=\"https:\/\/raw.githubusercontent.com\/brycedrennan\/imaginAIry\/master\/assets\/000118_597948545_PLMS40_PS7.5_a_lush_forest.jpg\"><img decoding=\"async\" src=\"https:\/\/raw.githubusercontent.com\/brycedrennan\/imaginAIry\/master\/assets\/000118_597948545_PLMS40_PS7.5_a_lush_forest.jpg\" height=\"128\"><\/a><a target=\"_blank\" rel=\"noopener noreferrer nofollow\" href=\"https:\/\/raw.githubusercontent.com\/brycedrennan\/imaginAIry\/master\/assets\/000118_597948545_PLMS40_PS7.5_a_lush_forest.jpg\"><img decoding=\"async\" src=\"https:\/\/raw.githubusercontent.com\/brycedrennan\/imaginAIry\/master\/assets\/000118_597948545_PLMS40_PS7.5_a_lush_forest.jpg\" height=\"128\"><\/a><a target=\"_blank\" rel=\"noopener noreferrer nofollow\" href=\"https:\/\/raw.githubusercontent.com\/brycedrennan\/imaginAIry\/master\/assets\/000118_597948545_PLMS40_PS7.5_a_lush_forest.jpg\"><img decoding=\"async\" src=\"https:\/\/raw.githubusercontent.com\/brycedrennan\/imaginAIry\/master\/assets\/000118_597948545_PLMS40_PS7.5_a_lush_forest.jpg\" height=\"128\"><\/a><br \/>\n<br \/>\n<a target=\"_blank\" rel=\"noopener noreferrer nofollow\" href=\"https:\/\/raw.githubusercontent.com\/brycedrennan\/imaginAIry\/master\/assets\/000075_961095192_PLMS40_PS7.5_piles_of_old_books.jpg\"><img decoding=\"async\" src=\"https:\/\/raw.githubusercontent.com\/brycedrennan\/imaginAIry\/master\/assets\/000075_961095192_PLMS40_PS7.5_piles_of_old_books.jpg\" height=\"128\"><\/a><a target=\"_blank\" rel=\"noopener noreferrer nofollow\" href=\"https:\/\/raw.githubusercontent.com\/brycedrennan\/imaginAIry\/master\/assets\/000075_961095192_PLMS40_PS7.5_piles_of_old_books.jpg\"><img decoding=\"async\" src=\"https:\/\/raw.githubusercontent.com\/brycedrennan\/imaginAIry\/master\/assets\/000075_961095192_PLMS40_PS7.5_piles_of_old_books.jpg\" height=\"128\"><\/a><a target=\"_blank\" rel=\"noopener noreferrer nofollow\" href=\"https:\/\/raw.githubusercontent.com\/brycedrennan\/imaginAIry\/master\/assets\/000075_961095192_PLMS40_PS7.5_piles_of_old_books.jpg\"><img decoding=\"async\" src=\"https:\/\/raw.githubusercontent.com\/brycedrennan\/imaginAIry\/master\/assets\/000075_961095192_PLMS40_PS7.5_piles_of_old_books.jpg\" height=\"128\"><\/a><br \/>\n<a target=\"_blank\" rel=\"noopener noreferrer nofollow\" href=\"https:\/\/raw.githubusercontent.com\/brycedrennan\/imaginAIry\/master\/assets\/000040_527733581_PLMS40_PS7.5_leaves.jpg\"><img decoding=\"async\" src=\"https:\/\/raw.githubusercontent.com\/brycedrennan\/imaginAIry\/master\/assets\/000040_527733581_PLMS40_PS7.5_leaves.jpg\" height=\"128\"><\/a><a target=\"_blank\" rel=\"noopener noreferrer nofollow\" href=\"https:\/\/raw.githubusercontent.com\/brycedrennan\/imaginAIry\/master\/assets\/000040_527733581_PLMS40_PS7.5_leaves.jpg\"><img decoding=\"async\" src=\"https:\/\/raw.githubusercontent.com\/brycedrennan\/imaginAIry\/master\/assets\/000040_527733581_PLMS40_PS7.5_leaves.jpg\" height=\"128\"><\/a><a target=\"_blank\" rel=\"noopener noreferrer nofollow\" href=\"https:\/\/raw.githubusercontent.com\/brycedrennan\/imaginAIry\/master\/assets\/000040_527733581_PLMS40_PS7.5_leaves.jpg\"><img decoding=\"async\" src=\"https:\/\/raw.githubusercontent.com\/brycedrennan\/imaginAIry\/master\/assets\/000040_527733581_PLMS40_PS7.5_leaves.jpg\" height=\"128\"><\/a><\/p>\n<h4 dir=\"auto\">360 degree images<\/h4>\n<div dir=\"auto\" data-snippet-clipboard-copy-content=\"imagine --tile-x -w 1024 -h 512 \"360 degree equirectangular panorama photograph of the desert\"  --upscale\">\n<pre>imagine --tile-x -w 1024 -h 512 <span><span>\"<\/span>360 degree equirectangular panorama photograph of the desert<span>\"<\/span><\/span>  --upscale<\/pre>\n<\/div>\n<p dir=\"auto\"><a target=\"_blank\" rel=\"noopener noreferrer\" href=\"http:\/\/github.com\/brycedrennan\/imaginAIry\/blob\/master\/assets\/desert_360.jpg\"><img decoding=\"async\" src=\"http:\/\/github.com\/brycedrennan\/imaginAIry\/raw\/master\/assets\/desert_360.jpg\" height=\"128\"><\/a><\/p>\n<h3 dir=\"auto\">Image-to-Image<\/h3>\n<p dir=\"auto\">Use depth maps for amazing &#8220;translations&#8221; of existing images.<\/p>\n<div dir=\"auto\" data-snippet-clipboard-copy-content=\">> imagine &#8211;model SD-2.0-depth &#8211;init-image girl_with_a_pearl_earring_large.jpg &#8211;init-image-strength 0.05  &#8220;professional headshot photo of a woman with a pearl earring&#8221; -r 4 -w 1024 -h 1024 &#8211;steps 50&#8243;><\/p>\n<pre><span>>><\/span> imagine --model SD-2.0-depth --init-image girl_with_a_pearl_earring_large.jpg --init-image-strength 0.05  <span><span>\"<\/span>professional headshot photo of a woman with a pearl earring<span>\"<\/span><\/span> -r 4 -w 1024 -h 1024 --steps 50<\/pre>\n<\/div>\n<p dir=\"auto\"><a target=\"_blank\" rel=\"noopener noreferrer nofollow\" href=\"https:\/\/raw.githubusercontent.com\/brycedrennan\/imaginAIry\/master\/tests\/data\/girl_with_a_pearl_earring.jpg\"><img decoding=\"async\" src=\"https:\/\/raw.githubusercontent.com\/brycedrennan\/imaginAIry\/master\/tests\/data\/girl_with_a_pearl_earring.jpg\" height=\"256\"><\/a> <g-emoji alias=\"arrow_right\" fallback-src=\"https:\/\/github.githubassets.com\/images\/icons\/emoji\/unicode\/27a1.png\">\u27a1\ufe0f<\/g-emoji><br \/>\n<a target=\"_blank\" rel=\"noopener noreferrer\" href=\"http:\/\/github.com\/brycedrennan\/imaginAIry\/blob\/master\/assets\/pearl_depth_1.jpg\"><img decoding=\"async\" src=\"http:\/\/github.com\/brycedrennan\/imaginAIry\/raw\/master\/assets\/pearl_depth_1.jpg\" height=\"512\"><\/a><br \/>\n<a target=\"_blank\" rel=\"noopener noreferrer\" href=\"http:\/\/github.com\/brycedrennan\/imaginAIry\/blob\/master\/assets\/pearl_depth_2.jpg\"><img decoding=\"async\" src=\"http:\/\/github.com\/brycedrennan\/imaginAIry\/raw\/master\/assets\/pearl_depth_2.jpg\" height=\"512\"><\/a><br \/>\n<a target=\"_blank\" rel=\"noopener noreferrer\" href=\"http:\/\/github.com\/brycedrennan\/imaginAIry\/blob\/master\/assets\/pearl_depth_3.jpg\"><img decoding=\"async\" src=\"http:\/\/github.com\/brycedrennan\/imaginAIry\/raw\/master\/assets\/pearl_depth_3.jpg\" height=\"512\"><\/a><\/p>\n<h3 dir=\"auto\">Outpainting<\/h3>\n<p dir=\"auto\">Given a starting image, one can generate it&#8217;s &#8220;surroundings&#8221;.<\/p>\n<p dir=\"auto\">Example:<br \/>\n<code>imagine --init-image pearl-earring.jpg --init-image-strength 0 --outpaint all250,up0,down600 \"woman standing\"<\/code><br \/>\n<a target=\"_blank\" rel=\"noopener noreferrer nofollow\" href=\"https:\/\/raw.githubusercontent.com\/brycedrennan\/imaginAIry\/master\/tests\/data\/girl_with_a_pearl_earring.jpg\"><img decoding=\"async\" src=\"https:\/\/raw.githubusercontent.com\/brycedrennan\/imaginAIry\/master\/tests\/data\/girl_with_a_pearl_earring.jpg\" height=\"256\"><\/a> <g-emoji alias=\"arrow_right\" fallback-src=\"https:\/\/github.githubassets.com\/images\/icons\/emoji\/unicode\/27a1.png\">\u27a1\ufe0f<\/g-emoji><br \/>\n<a target=\"_blank\" rel=\"noopener noreferrer nofollow\" href=\"https:\/\/raw.githubusercontent.com\/brycedrennan\/imaginAIry\/master\/tests\/expected_output\/test_outpainting_outpaint_.png\"><img decoding=\"async\" src=\"https:\/\/raw.githubusercontent.com\/brycedrennan\/imaginAIry\/master\/tests\/expected_output\/test_outpainting_outpaint_.png\" height=\"256\"><\/a><\/p>\n<h3 dir=\"auto\">Prompt Expansion<\/h3>\n<p dir=\"auto\">You can use <code>{}<\/code> to randomly pull values from lists.  A list of values separated by <code>|<\/code><br \/>\nand enclosed in <code>{ }<\/code> will be randomly drawn from in a non-repeating fashion. Values that are surrounded by <code>_ _<\/code> will<br \/>\npull from a phrase list of the same name.   Folders containing .txt phraselist files may be specified via<br \/>\n<code>--prompt_library_path<\/code>. The option may be specified multiple times.  Built-in categories:<\/p>\n<div data-snippet-clipboard-copy-content=\"  3d-term, adj-architecture, adj-beauty, adj-detailed, adj-emotion, adj-general, adj-horror, animal, art-movement, \n  art-site, artist, artist-botanical, artist-surreal, aspect-ratio, bird, body-of-water, body-pose, camera-brand,\n  camera-model, color, cosmic-galaxy, cosmic-nebula, cosmic-star, cosmic-term, dinosaur, eyecolor, f-stop, \n  fantasy-creature, fantasy-setting, fish, flower, focal-length, food, fruit, games, gen-modifier, hair, hd,\n  iso-stop, landscape-type, national-park, nationality, neg-weight, noun-beauty, noun-fantasy, noun-general, \n  noun-horror, occupation, photo-term, pop-culture, pop-location, punk-style, quantity, rpg-item, scenario-desc, \n  skin-color, spaceship, style, tree-species, trippy, world-heritage-site\"><\/p>\n<pre><code>  3d-term, adj-architecture, adj-beauty, adj-detailed, adj-emotion, adj-general, adj-horror, animal, art-movement, \n  art-site, artist, artist-botanical, artist-surreal, aspect-ratio, bird, body-of-water, body-pose, camera-brand,\n  camera-model, color, cosmic-galaxy, cosmic-nebula, cosmic-star, cosmic-term, dinosaur, eyecolor, f-stop, \n  fantasy-creature, fantasy-setting, fish, flower, focal-length, food, fruit, games, gen-modifier, hair, hd,\n  iso-stop, landscape-type, national-park, nationality, neg-weight, noun-beauty, noun-fantasy, noun-general, \n  noun-horror, occupation, photo-term, pop-culture, pop-location, punk-style, quantity, rpg-item, scenario-desc, \n  skin-color, spaceship, style, tree-species, trippy, world-heritage-site\n<\/code><\/pre>\n<\/div>\n<p dir=\"auto\">Examples:<\/p>\n<p dir=\"auto\"><code>imagine \"a {lime|blue|silver|aqua} colored dog\" -r 4 --seed 0<\/code> (note that it generates a dog of each color without repetition)<\/p>\n<p dir=\"auto\"><a target=\"_blank\" rel=\"noopener noreferrer nofollow\" href=\"https:\/\/raw.githubusercontent.com\/brycedrennan\/imaginAIry\/master\/assets\/000184_0_plms40_PS7.5_a_silver_colored_dog_[generated].jpg\"><img decoding=\"async\" src=\"https:\/\/raw.githubusercontent.com\/brycedrennan\/imaginAIry\/master\/assets\/000184_0_plms40_PS7.5_a_silver_colored_dog_[generated].jpg\" height=\"200\"><\/a><a target=\"_blank\" rel=\"noopener noreferrer nofollow\" href=\"https:\/\/raw.githubusercontent.com\/brycedrennan\/imaginAIry\/master\/assets\/000186_0_plms40_PS7.5_a_aqua_colored_dog_[generated].jpg\"><img decoding=\"async\" src=\"https:\/\/raw.githubusercontent.com\/brycedrennan\/imaginAIry\/master\/assets\/000186_0_plms40_PS7.5_a_aqua_colored_dog_[generated].jpg\" height=\"200\"><\/a><br \/>\n<a target=\"_blank\" rel=\"noopener noreferrer nofollow\" href=\"https:\/\/raw.githubusercontent.com\/brycedrennan\/imaginAIry\/master\/assets\/000210_0_plms40_PS7.5_a_lime_colored_dog_[generated].jpg\"><img decoding=\"async\" src=\"https:\/\/raw.githubusercontent.com\/brycedrennan\/imaginAIry\/master\/assets\/000210_0_plms40_PS7.5_a_lime_colored_dog_[generated].jpg\" height=\"200\"><\/a><br \/>\n<a target=\"_blank\" rel=\"noopener noreferrer nofollow\" href=\"https:\/\/raw.githubusercontent.com\/brycedrennan\/imaginAIry\/master\/assets\/000211_0_plms40_PS7.5_a_blue_colored_dog_[generated].jpg\"><img decoding=\"async\" src=\"https:\/\/raw.githubusercontent.com\/brycedrennan\/imaginAIry\/master\/assets\/000211_0_plms40_PS7.5_a_blue_colored_dog_[generated].jpg\" height=\"200\"><\/a><\/p>\n<p dir=\"auto\"><code>imagine \"a {_color_} dog\" -r 4 --seed 0<\/code> will generate four, different colored dogs. The colors will be pulled from an included<br \/>\nphraselist of colors.<\/p>\n<p dir=\"auto\"><code>imagine \"a {_spaceship_|_fruit_|hot air balloon}. low-poly\" -r 4 --seed 0<\/code> will generate images of spaceships or fruits or a hot air balloon<\/p>\n<p dir=\"auto\">Credit to <a href=\"https:\/\/github.com\/WASasquatch\/noodle-soup-prompts\/\">noodle-soup-prompts<\/a> where most, but not all, of the wordlists originate.<\/p>\n<h3 dir=\"auto\">Generate image captions (via <a href=\"https:\/\/github.com\/salesforce\/BLIP\">BLIP<\/a>)<\/h3>\n<div dir=\"auto\" data-snippet-clipboard-copy-content=\">> aimg describe assets\/mask_examples\/bowl001.jpg<br \/>\na bowl full of gold bars sitting on a table&#8221;><\/p>\n<pre><span>>><\/span> aimg describe assets\/mask_examples\/bowl001.jpg\na bowl full of gold bars sitting on a table<\/pre>\n<\/div>\n<h2 dir=\"auto\">Features<\/h2>\n<ul dir=\"auto\">\n<li>It makes images from text descriptions! <g-emoji alias=\"tada\" fallback-src=\"https:\/\/github.githubassets.com\/images\/icons\/emoji\/unicode\/1f389.png\">????<\/g-emoji><\/li>\n<li>Generate images either in code or from command line.<\/li>\n<li>It just works. Proper requirements are installed. model weights are automatically downloaded. No huggingface account needed.<br \/>\n(if you have the right hardware&#8230; and aren&#8217;t on windows)<\/li>\n<li>No more distorted faces!<\/li>\n<li>Noisy logs are gone (which was surprisingly hard to accomplish)<\/li>\n<li>WeightedPrompts let you smash together separate prompts (cat-dog)<\/li>\n<li>Tile Mode creates tileable images<\/li>\n<li>Prompt metadata saved into image file metadata<\/li>\n<li>Edit images by describing the part you want edited (see example above)<\/li>\n<li>Have AI generate captions for images <code>aimg describe <filename-or-url><\/code><\/li>\n<li>Interactive prompt: just run <code>aimg<\/code><\/li>\n<li><g-emoji alias=\"tada\" fallback-src=\"https:\/\/github.githubassets.com\/images\/icons\/emoji\/unicode\/1f389.png\">????<\/g-emoji> finetune your own image model. kind of like dreambooth. Read instructions on <a href=\"http:\/\/github.com\/brycedrennan\/imaginAIry\/blob\/master\/docs\/concept-training.md\">&#8220;Concept Training&#8221;<\/a> page<\/li>\n<\/ul>\n<h2 dir=\"auto\">How To<\/h2>\n<p dir=\"auto\">For full command line instructions run <code>aimg --help<\/code><\/p>\n<div dir=\"auto\" data-snippet-clipboard-copy-content=\"from imaginairy import imagine, imagine_image_files, ImaginePrompt, WeightedPrompt, LazyLoadingImage\n\nurl = \"https:\/\/upload.wikimedia.org\/wikipedia\/commons\/thumb\/6\/6c\/Thomas_Cole_-_Architect%E2%80%99s_Dream_-_Google_Art_Project.jpg\/540px-Thomas_Cole_-_Architect%E2%80%99s_Dream_-_Google_Art_Project.jpg\"\nprompts = [\n    ImaginePrompt(\"a scenic landscape\", seed=1, upscale=True),\n    ImaginePrompt(\"a bowl of fruit\"),\n    ImaginePrompt([\n        WeightedPrompt(\"cat\", weight=1),\n        WeightedPrompt(\"dog\", weight=1),\n    ]),\n    ImaginePrompt(\n        \"a spacious building\", \n        init_image=LazyLoadingImage(url=url)\n    ),\n    ImaginePrompt(\n        \"a bowl of strawberries\", \n        init_image=LazyLoadingImage(filepath=\"mypath\/to\/bowl_of_fruit.jpg\"),\n        mask_prompt=\"fruit OR stem{*2}\",  # amplify the stem mask x2\n        mask_mode=\"replace\",\n        mask_modify_original=True,\n    ),\n    ImaginePrompt(\"strawberries\", tile_mode=True),\n]\nfor result in imagine(prompts):\n    # do something\n    result.save(\"my_image.jpg\")\n\n# or\n\nimagine_image_files(prompts, outdir=\".\/my-art\")\n\"><\/p>\n<pre><span>from<\/span> <span>imaginairy<\/span> <span>import<\/span> <span>imagine<\/span>, <span>imagine_image_files<\/span>, <span>ImaginePrompt<\/span>, <span>WeightedPrompt<\/span>, <span>LazyLoadingImage<\/span>\n\n<span>url<\/span> <span>=<\/span> <span>\"https:\/\/upload.wikimedia.org\/wikipedia\/commons\/thumb\/6\/6c\/Thomas_Cole_-_Architect%E2%80%99s_Dream_-_Google_Art_Project.jpg\/540px-Thomas_Cole_-_Architect%E2%80%99s_Dream_-_Google_Art_Project.jpg\"<\/span>\n<span>prompts<\/span> <span>=<\/span> [\n    <span>ImaginePrompt<\/span>(<span>\"a scenic landscape\"<\/span>, <span>seed<\/span><span>=<\/span><span>1<\/span>, <span>upscale<\/span><span>=<\/span><span>True<\/span>),\n    <span>ImaginePrompt<\/span>(<span>\"a bowl of fruit\"<\/span>),\n    <span>ImaginePrompt<\/span>([\n        <span>WeightedPrompt<\/span>(<span>\"cat\"<\/span>, <span>weight<\/span><span>=<\/span><span>1<\/span>),\n        <span>WeightedPrompt<\/span>(<span>\"dog\"<\/span>, <span>weight<\/span><span>=<\/span><span>1<\/span>),\n    ]),\n    <span>ImaginePrompt<\/span>(\n        <span>\"a spacious building\"<\/span>, \n        <span>init_image<\/span><span>=<\/span><span>LazyLoadingImage<\/span>(<span>url<\/span><span>=<\/span><span>url<\/span>)\n    ),\n    <span>ImaginePrompt<\/span>(\n        <span>\"a bowl of strawberries\"<\/span>, \n        <span>init_image<\/span><span>=<\/span><span>LazyLoadingImage<\/span>(<span>filepath<\/span><span>=<\/span><span>\"mypath\/to\/bowl_of_fruit.jpg\"<\/span>),\n        <span>mask_prompt<\/span><span>=<\/span><span>\"fruit OR stem{*2}\"<\/span>,  <span># amplify the stem mask x2<\/span>\n        <span>mask_mode<\/span><span>=<\/span><span>\"replace\"<\/span>,\n        <span>mask_modify_original<\/span><span>=<\/span><span>True<\/span>,\n    ),\n    <span>ImaginePrompt<\/span>(<span>\"strawberries\"<\/span>, <span>tile_mode<\/span><span>=<\/span><span>True<\/span>),\n]\n<span>for<\/span> <span>result<\/span> <span>in<\/span> <span>imagine<\/span>(<span>prompts<\/span>):\n    <span># do something<\/span>\n    <span>result<\/span>.<span>save<\/span>(<span>\"my_image.jpg\"<\/span>)\n\n<span># or<\/span>\n\n<span>imagine_image_files<\/span>(<span>prompts<\/span>, <span>outdir<\/span><span>=<\/span><span>\".\/my-art\"<\/span>)<\/pre>\n<\/div>\n<h2 dir=\"auto\">Requirements<\/h2>\n<ul dir=\"auto\">\n<li>~10 gb space for models to download<\/li>\n<li>A CUDA supported graphics card with >= 11gb VRAM (and CUDA installed) or an M1 processor.<\/li>\n<li>Python installed. Preferably Python 3.10.  (not conda)<\/li>\n<li>For macOS <a href=\"https:\/\/www.rust-lang.org\/tools\/install\" rel=\"nofollow\">rust<\/a> and setuptools-rust must be installed to compile the <code>tokenizer<\/code> library.<br \/>\nThey can be installed via: <code>curl --proto '=https' --tlsv1.2 -sSf https:\/\/sh.rustup.rs | sh<\/code> and <code>pip install setuptools-rust<\/code><\/li>\n<\/ul>\n<h2 dir=\"auto\">Running in Docker<\/h2>\n<p dir=\"auto\">See example Dockerfile (works on machine where you can pass the gpu into the container)<\/p>\n<div dir=\"auto\" data-snippet-clipboard-copy-content=\"docker build . -t imaginairy\n# you really want to map the cache or you end up wasting a lot of time and space redownloading the model weights\ndocker run -it --gpus all -v $HOME\/.cache\/huggingface:\/root\/.cache\/huggingface -v $HOME\/.cache\/torch:\/root\/.cache\/torch -v `pwd`\/outputs:\/outputs imaginairy \/bin\/bash\"><\/p>\n<pre>docker build <span>.<\/span> -t imaginairy\n<span><span>#<\/span> you really want to map the cache or you end up wasting a lot of time and space redownloading the model weights<\/span>\ndocker run -it --gpus all -v <span>$HOME<\/span>\/.cache\/huggingface:\/root\/.cache\/huggingface -v <span>$HOME<\/span>\/.cache\/torch:\/root\/.cache\/torch -v <span><span>`<\/span>pwd<span>`<\/span><\/span>\/outputs:\/outputs imaginairy \/bin\/bash<\/pre>\n<\/div>\n<h2 dir=\"auto\">Running on Google Colab<\/h2>\n<p dir=\"auto\"><a href=\"https:\/\/colab.research.google.com\/drive\/1rOvQNs0Cmn_yU1bKWjCOHzGVDgZkaTtO?usp=sharing\" rel=\"nofollow\">Example Colab<\/a><\/p>\n<h2 dir=\"auto\">ChangeLog<\/h2>\n<p dir=\"auto\"><strong>8.0.0<\/strong><\/p>\n<ul dir=\"auto\">\n<li>feature: <g-emoji alias=\"tada\" fallback-src=\"https:\/\/github.githubassets.com\/images\/icons\/emoji\/unicode\/1f389.png\">????<\/g-emoji> edit images with instructions alone!<\/li>\n<li>feature: when editing an image add <code>--gif<\/code> to create a comparision gif<\/li>\n<li>feature: <code>aimg edit --suprise-me --gif my-image.jpg<\/code> for some fun pre-programmed edits<\/li>\n<li>feature: prune-ckpt command also removes the non-ema weights<\/li>\n<\/ul>\n<p dir=\"auto\"><strong>7.6.0<\/strong><\/p>\n<ul dir=\"auto\">\n<li>fix: default model config was broken<\/li>\n<li>feature: print version with <code>--version<\/code><\/li>\n<li>feature: ability to load safetensors<\/li>\n<li>feature:  <g-emoji alias=\"tada\" fallback-src=\"https:\/\/github.githubassets.com\/images\/icons\/emoji\/unicode\/1f389.png\">????<\/g-emoji> outpainting. Examples: <code>--outpaint up10,down300,left50,right50<\/code> or <code>--outpaint all100<\/code> or <code>--outpaint u100,d200,l300,r400<\/code><\/li>\n<\/ul>\n<p dir=\"auto\"><strong>7.4.3<\/strong><\/p>\n<ul dir=\"auto\">\n<li>fix: handle old pytorch lightning imports with a graceful failure (fixes #161)<\/li>\n<li>fix: handle failed image generations better (fixes #83)<\/li>\n<\/ul>\n<p dir=\"auto\"><strong>7.4.2<\/strong><\/p>\n<ul dir=\"auto\">\n<li>fix: run face enhancement on GPU for 10x speedup<\/li>\n<\/ul>\n<p dir=\"auto\"><strong>7.4.1<\/strong><\/p>\n<ul dir=\"auto\">\n<li>fix: incorrect config files being used for non-1.0 models<\/li>\n<\/ul>\n<p dir=\"auto\"><strong>7.4.0<\/strong><\/p>\n<ul dir=\"auto\">\n<li>feature: <g-emoji alias=\"tada\" fallback-src=\"https:\/\/github.githubassets.com\/images\/icons\/emoji\/unicode\/1f389.png\">????<\/g-emoji> finetune your own image model. kind of like dreambooth. Read instructions on <a href=\"http:\/\/github.com\/brycedrennan\/imaginAIry\/blob\/master\/docs\/concept-training.md\">&#8220;Concept Training&#8221;<\/a> page<\/li>\n<li>feature: image prep command. crops to face or other interesting parts of photo<\/li>\n<li>fix: back-compat for hf_hub_download<\/li>\n<li>feature: add prune-ckpt command<\/li>\n<li>feature: allow specification of model config file<\/li>\n<\/ul>\n<p dir=\"auto\"><strong>7.3.0<\/strong><\/p>\n<ul dir=\"auto\">\n<li>feature: <g-emoji alias=\"tada\" fallback-src=\"https:\/\/github.githubassets.com\/images\/icons\/emoji\/unicode\/1f389.png\">????<\/g-emoji> depth-based image-to-image generations (and inpainting)<\/li>\n<li>fix: k_euler_a produces more consistent images per seed (randomization respects the seed again)<\/li>\n<\/ul>\n<p dir=\"auto\"><strong>7.2.0<\/strong><\/p>\n<ul dir=\"auto\">\n<li>feature: <g-emoji alias=\"tada\" fallback-src=\"https:\/\/github.githubassets.com\/images\/icons\/emoji\/unicode\/1f389.png\">????<\/g-emoji> tile in a single dimension (&#8220;x&#8221; or &#8220;y&#8221;).  This enables, with a bit of luck, generation of 360 VR images.<br \/>\nTry this for example: <code>imagine --tile-x -w 1024 -h 512 \"360 degree equirectangular panorama photograph of the mountains\"  --upscale<\/code><\/li>\n<\/ul>\n<p dir=\"auto\"><strong>7.1.1<\/strong><\/p>\n<ul dir=\"auto\">\n<li>fix: memory\/speed regression introduced in 6.1.0<\/li>\n<li>fix: model switching now clears memory better, thus avoiding out of memory errors<\/li>\n<\/ul>\n<p dir=\"auto\"><strong>7.1.0<\/strong><\/p>\n<ul dir=\"auto\">\n<li>feature: <g-emoji alias=\"tada\" fallback-src=\"https:\/\/github.githubassets.com\/images\/icons\/emoji\/unicode\/1f389.png\">????<\/g-emoji> Stable Diffusion 2.1.  Generated people are no longer (completely) distorted.<br \/>\nUse with <code>--model SD-2.1<\/code> or <code>--model SD-2.0-v<\/code><\/li>\n<\/ul>\n<p dir=\"auto\"><strong>7.0.0<\/strong><\/p>\n<ul dir=\"auto\">\n<li>feature: negative prompting.  <code>--negative-prompt<\/code> or <code>ImaginePrompt(..., negative_prompt=\"ugly, deformed, extra arms, etc\")<\/code><\/li>\n<li>feature: a default negative prompt is added to all generations. Images in SD-2.0 don&#8217;t look bad anymore. Images in 1.5 look improved as well.<\/li>\n<\/ul>\n<p dir=\"auto\"><strong>6.1.2<\/strong><\/p>\n<ul dir=\"auto\">\n<li>fix: add back in memory-efficient algorithms<\/li>\n<\/ul>\n<p dir=\"auto\"><strong>6.1.1<\/strong><\/p>\n<ul dir=\"auto\">\n<li>feature: xformers will be used if available (for faster generation)<\/li>\n<li>fix: version metadata was broken<\/li>\n<\/ul>\n<p dir=\"auto\"><strong>6.1.0<\/strong><\/p>\n<ul dir=\"auto\">\n<li>feature: use different default steps and image sizes depending on sampler and model selceted<\/li>\n<li>fix: #110 use proper version in image metadata<\/li>\n<li>refactor: samplers all have their own class that inherits from ImageSampler<\/li>\n<li>feature: <g-emoji alias=\"tada\" fallback-src=\"https:\/\/github.githubassets.com\/images\/icons\/emoji\/unicode\/1f389.png\">????<\/g-emoji><g-emoji alias=\"tada\" fallback-src=\"https:\/\/github.githubassets.com\/images\/icons\/emoji\/unicode\/1f389.png\">????<\/g-emoji><g-emoji alias=\"tada\" fallback-src=\"https:\/\/github.githubassets.com\/images\/icons\/emoji\/unicode\/1f389.png\">????<\/g-emoji> Stable Diffusion 2.0\n<ul dir=\"auto\">\n<li><code>--model SD-2.0<\/code> to use (it makes worse images than 1.5 though&#8230;)<\/li>\n<li>Tested on macOS and Linux<\/li>\n<li>All samplers working for new 512&#215;512 model<\/li>\n<li>New inpainting model working<\/li>\n<li>768&#215;768 model working for all samplers except PLMS (<code>--model SD-2.0-v <\/code>)<\/li>\n<\/ul>\n<\/li>\n<\/ul>\n<p dir=\"auto\"><strong>5.1.0<\/strong><\/p>\n<ul dir=\"auto\">\n<li>feature: add progress image callback<\/li>\n<\/ul>\n<p dir=\"auto\"><strong>5.0.1<\/strong><\/p>\n<ul dir=\"auto\">\n<li>fix: support larger images on M1. Fixes #8<\/li>\n<li>fix: support CPU generation by disabling autocast on CPU. Fixes #81<\/li>\n<\/ul>\n<p dir=\"auto\"><strong>5.0.0<\/strong><\/p>\n<ul dir=\"auto\">\n<li>feature: <g-emoji alias=\"tada\" fallback-src=\"https:\/\/github.githubassets.com\/images\/icons\/emoji\/unicode\/1f389.png\">????<\/g-emoji> inpainting support using new inpainting model from RunwayML. It works really well! By default, the<br \/>\ninpainting model will automatically be used for any image-masking task<\/li>\n<li>feature: <g-emoji alias=\"tada\" fallback-src=\"https:\/\/github.githubassets.com\/images\/icons\/emoji\/unicode\/1f389.png\">????<\/g-emoji> new default sampler makes image generation more than twice as fast<\/li>\n<li>feature: added <code>DPM++ 2S a<\/code> and <code>DPM++ 2M<\/code> samplers.<\/li>\n<li>feature: improve progress image logging<\/li>\n<li>fix: fix bug with <code>--show-work<\/code>. fixes #84<\/li>\n<li>fix: add workaround for pytorch bug affecting macOS users using the new <code>DPM++ 2S a<\/code> and <code>DPM++ 2M<\/code> samplers.<\/li>\n<li>fix: add workaround for pytorch mps bug affecting <code>k_dpm_fast<\/code> sampler. fixes #75<\/li>\n<li>fix: larger image sizes now work on macOS. fixes #8<\/li>\n<\/ul>\n<p dir=\"auto\"><strong>4.1.0<\/strong><\/p>\n<ul dir=\"auto\">\n<li>feature: allow dynamic switching between models\/weights <code>--model SD-1.5<\/code> or <code>--model SD-1.4<\/code> or <code>--model path\/my-custom-weights.ckpt<\/code>)<\/li>\n<li>feature: log total progress when generating images (image X out of Y)<\/li>\n<\/ul>\n<p dir=\"auto\"><strong>4.0.0<\/strong><\/p>\n<ul dir=\"auto\">\n<li>feature: stable diffusion 1.5 (slightly improved image quality)<\/li>\n<li>feature: dilation and erosion of masks<br \/>\nPreviously the <code>+<\/code> and <code>-<\/code> characters in a mask (example: <code>face{+0.1}<\/code>) added to the grayscale value of any masked areas. This wasn&#8217;t very useful. The new behavior is that the mask will expand or contract by the number of pixel specified. The technical terms for this are dilation and erosion.  This allows much greater control over the masked area.<\/li>\n<li>feature: update k-diffusion samplers. add k_dpm_adaptive and k_dpm_fast<\/li>\n<li>feature: img2img\/inpainting supported on all samplers<\/li>\n<li>refactor: consolidates img2img\/txt2img code. consolidates schedules. consolidates masking<\/li>\n<li>ci: minor logging improvements<\/li>\n<\/ul>\n<p dir=\"auto\"><strong>3.0.1<\/strong><\/p>\n<ul dir=\"auto\">\n<li>fix: k-samplers were broken<\/li>\n<\/ul>\n<p dir=\"auto\"><strong>3.0.0<\/strong><\/p>\n<ul dir=\"auto\">\n<li>feature: improved safety filter<\/li>\n<\/ul>\n<p dir=\"auto\"><strong>2.4.0<\/strong><\/p>\n<ul dir=\"auto\">\n<li><g-emoji alias=\"tada\" fallback-src=\"https:\/\/github.githubassets.com\/images\/icons\/emoji\/unicode\/1f389.png\">????<\/g-emoji> feature: prompt expansion<\/li>\n<li>feature: make (blip) photo captions more descriptive<\/li>\n<\/ul>\n<p dir=\"auto\"><strong>2.3.1<\/strong><\/p>\n<ul dir=\"auto\">\n<li>fix: face fidelity default was broken<\/li>\n<\/ul>\n<p dir=\"auto\"><strong>2.3.0<\/strong><\/p>\n<ul dir=\"auto\">\n<li>feature: model weights file can be specified via <code>--model-weights-path<\/code> argument at the command line<\/li>\n<li>fix: set face fidelity default back to old value<\/li>\n<li>fix: handle small images without throwing exception. credit to @NiclasEriksen<\/li>\n<li>docs: add setuptools-rust as dependency for macos<\/li>\n<\/ul>\n<p dir=\"auto\"><strong>2.2.1<\/strong><\/p>\n<ul dir=\"auto\">\n<li>fix: init image is fully ignored if init-image-strength = 0<\/li>\n<\/ul>\n<p dir=\"auto\"><strong>2.2.0<\/strong><\/p>\n<ul dir=\"auto\">\n<li>feature: face enhancement fidelity is now configurable<\/li>\n<\/ul>\n<p dir=\"auto\"><strong>2.1.0<\/strong><\/p>\n<ul dir=\"auto\">\n<li><a href=\"https:\/\/github.com\/timojl\/clipseg\/issues\/8#issuecomment-1259150865\" data-hovercard-type=\"issue\" data-hovercard-url=\"\/timojl\/clipseg\/issues\/8\/hovercard\">improved masking accuracy from clipseg<\/a><\/li>\n<\/ul>\n<p dir=\"auto\"><strong>2.0.3<\/strong><\/p>\n<ul dir=\"auto\">\n<li>fix memory leak in face enhancer<\/li>\n<li>fix blurry inpainting<\/li>\n<li>fix for pillow compatibility<\/li>\n<\/ul>\n<p dir=\"auto\"><strong>2.0.0<\/strong><\/p>\n<ul dir=\"auto\">\n<li><g-emoji alias=\"tada\" fallback-src=\"https:\/\/github.githubassets.com\/images\/icons\/emoji\/unicode\/1f389.png\">????<\/g-emoji> fix: inpainted areas correlate with surrounding image, even at 100% generation strength.  Previously if the generation strength was high enough the generated image<br \/>\nwould be uncorrelated to the rest of the surrounding image.  It created terrible looking images.<\/li>\n<li><g-emoji alias=\"tada\" fallback-src=\"https:\/\/github.githubassets.com\/images\/icons\/emoji\/unicode\/1f389.png\">????<\/g-emoji> feature: interactive prompt added. access by running <code>aimg<\/code><\/li>\n<li><g-emoji alias=\"tada\" fallback-src=\"https:\/\/github.githubassets.com\/images\/icons\/emoji\/unicode\/1f389.png\">????<\/g-emoji> feature: Specify advanced text based masks using boolean logic and strength modifiers. Mask descriptions must be lowercase. Keywords uppercase.<br \/>\nValid symbols: <code>AND<\/code>, <code>OR<\/code>, <code>NOT<\/code>, <code>()<\/code>, and mask strength modifier <code>{+0.1}<\/code> where <code>+<\/code> can be any of <code>+ - * \/<\/code>. Single character boolean operators also work (<code>|<\/code>, <code>&<\/code>, <code>!<\/code>)<\/li>\n<li><g-emoji alias=\"tada\" fallback-src=\"https:\/\/github.githubassets.com\/images\/icons\/emoji\/unicode\/1f389.png\">????<\/g-emoji> feature: apply mask edits to original files with <code>mask_modify_original<\/code> (on by default)<\/li>\n<li>feature: auto-rotate images if exif data specifies to do so<\/li>\n<li>fix: mask boundaries are more accurate<\/li>\n<li>fix: accept mask images in command line<\/li>\n<li>fix: img2img algorithm was wrong and wouldn&#8217;t at values close to 0 or 1<\/li>\n<\/ul>\n<p dir=\"auto\"><strong>1.6.2<\/strong><\/p>\n<ul dir=\"auto\">\n<li>fix: another bfloat16 fix<\/li>\n<\/ul>\n<p dir=\"auto\"><strong>1.6.1<\/strong><\/p>\n<ul dir=\"auto\">\n<li>fix: make sure image tensors come to the CPU as float32 so there aren&#8217;t compatibility issues with non-bfloat16 cpus<\/li>\n<\/ul>\n<p dir=\"auto\"><strong>1.6.0<\/strong><\/p>\n<ul dir=\"auto\">\n<li>fix: <em>maybe<\/em> address #13 with <code>expected scalar type BFloat16 but found Float<\/code>\n<ul dir=\"auto\">\n<li>at minimum one can specify <code>--precision full<\/code> now and that will probably fix the issue<\/li>\n<\/ul>\n<\/li>\n<li>feature: tile mode can now be specified per-prompt<\/li>\n<\/ul>\n<p dir=\"auto\"><strong>1.5.3<\/strong><\/p>\n<ul dir=\"auto\">\n<li>fix: missing config file for describe feature<\/li>\n<\/ul>\n<p dir=\"auto\"><strong>1.5.1<\/strong><\/p>\n<ul dir=\"auto\">\n<li>img2img now supported with PLMS (instead of just DDIM)<\/li>\n<li>added image captioning feature <code>aimg describe dog.jpg<\/code> => <code>a brown dog sitting on grass<\/code><\/li>\n<li>added new commandline tool <code>aimg<\/code> for additional image manipulation functionality<\/li>\n<\/ul>\n<p dir=\"auto\"><strong>1.4.0<\/strong><\/p>\n<ul dir=\"auto\">\n<li>support multiple additive targets for masking with <code>|<\/code> symbol.  Example: &#8220;fruit|stem|fruit stem&#8221;<\/li>\n<\/ul>\n<p dir=\"auto\"><strong>1.3.0<\/strong><\/p>\n<ul dir=\"auto\">\n<li>added prompt based image editing. Example: &#8220;fruit => gold coins&#8221;<\/li>\n<li>test coverage improved<\/li>\n<\/ul>\n<p dir=\"auto\"><strong>1.2.0<\/strong><\/p>\n<ul dir=\"auto\">\n<li>allow urls as init-images<\/li>\n<\/ul>\n<p dir=\"auto\"><strong>previous<\/strong><\/p>\n<ul dir=\"auto\">\n<li>img2img actually does # of steps you specify<\/li>\n<li>performance optimizations<\/li>\n<li>numerous other changes<\/li>\n<\/ul>\n<h2 dir=\"auto\">Not Supported<\/h2>\n<ul dir=\"auto\">\n<li>a GUI. this is a python library<\/li>\n<li>exploratory features that don&#8217;t work well<\/li>\n<\/ul>\n<h2 dir=\"auto\">Todo<\/h2>\n<ul dir=\"auto\">\n<li>Performance Optimizations\n<ul dir=\"auto\">\n<li><g-emoji alias=\"white_check_mark\" fallback-src=\"https:\/\/github.githubassets.com\/images\/icons\/emoji\/unicode\/2705.png\">\u2705<\/g-emoji> <a href=\"https:\/\/github.com\/huggingface\/diffusers\/blob\/main\/docs\/source\/optimization\/fp16.mdx\">https:\/\/github.com\/huggingface\/diffusers\/blob\/main\/docs\/source\/optimization\/fp16.mdx<\/a><\/li>\n<li><g-emoji alias=\"white_check_mark\" fallback-src=\"https:\/\/github.githubassets.com\/images\/icons\/emoji\/unicode\/2705.png\">\u2705<\/g-emoji> <a href=\"https:\/\/github.com\/CompVis\/stable-diffusion\/compare\/main...Doggettx:stable-diffusion:autocast-improvements#\">https:\/\/github.com\/CompVis\/stable-diffusion\/compare\/main&#8230;Doggettx:stable-diffusion:autocast-improvements#<\/a><\/li>\n<li><g-emoji alias=\"white_check_mark\" fallback-src=\"https:\/\/github.githubassets.com\/images\/icons\/emoji\/unicode\/2705.png\">\u2705<\/g-emoji> <a href=\"https:\/\/www.reddit.com\/r\/StableDiffusion\/comments\/xalaws\/test_update_for_less_memory_usage_and_higher\/\" rel=\"nofollow\">https:\/\/www.reddit.com\/r\/StableDiffusion\/comments\/xalaws\/test_update_for_less_memory_usage_and_higher\/<\/a><\/li>\n<li><a href=\"https:\/\/github.com\/neonsecret\/stable-diffusion\">https:\/\/github.com\/neonsecret\/stable-diffusion<\/a><\/li>\n<li><a data-error-text=\"Failed to load title\" data-id=\"1361081911\" data-permission-text=\"Title is private\" data-url=\"https:\/\/github.com\/CompVis\/stable-diffusion\/issues\/177\" data-hovercard-type=\"pull_request\" data-hovercard-url=\"\/CompVis\/stable-diffusion\/pull\/177\/hovercard\" href=\"https:\/\/github.com\/CompVis\/stable-diffusion\/pull\/177\">CompVis\/stable-diffusion#177<\/a><\/li>\n<li><a href=\"https:\/\/github.com\/huggingface\/diffusers\/pull\/532\/files\">https:\/\/github.com\/huggingface\/diffusers\/pull\/532\/files<\/a><\/li>\n<li><a href=\"https:\/\/github.com\/HazyResearch\/flash-attention\">https:\/\/github.com\/HazyResearch\/flash-attention<\/a><\/li>\n<li><g-emoji alias=\"white_check_mark\" fallback-src=\"https:\/\/github.githubassets.com\/images\/icons\/emoji\/unicode\/2705.png\">\u2705<\/g-emoji> xformers improvements <a href=\"https:\/\/www.photoroom.com\/tech\/stable-diffusion-100-percent-faster-with-memory-efficient-attention\/\" rel=\"nofollow\">https:\/\/www.photoroom.com\/tech\/stable-diffusion-100-percent-faster-with-memory-efficient-attention\/<\/a><\/li>\n<\/ul>\n<\/li>\n<li>Development Environment\n<ul dir=\"auto\">\n<li><g-emoji alias=\"white_check_mark\" fallback-src=\"https:\/\/github.githubassets.com\/images\/icons\/emoji\/unicode\/2705.png\">\u2705<\/g-emoji> add tests<\/li>\n<li><g-emoji alias=\"white_check_mark\" fallback-src=\"https:\/\/github.githubassets.com\/images\/icons\/emoji\/unicode\/2705.png\">\u2705<\/g-emoji> set up ci (test\/lint\/format)<\/li>\n<li><g-emoji alias=\"white_check_mark\" fallback-src=\"https:\/\/github.githubassets.com\/images\/icons\/emoji\/unicode\/2705.png\">\u2705<\/g-emoji> unified pipeline (txt2img &#038; img2img combined)<\/li>\n<li><g-emoji alias=\"white_check_mark\" fallback-src=\"https:\/\/github.githubassets.com\/images\/icons\/emoji\/unicode\/2705.png\">\u2705<\/g-emoji> setup parallel testing<\/li>\n<li>add docs<\/li>\n<li>remove yaml config<\/li>\n<li>delete more unused code<\/li>\n<li>faster latent logging <a href=\"https:\/\/discuss.huggingface.co\/t\/decoding-latents-to-rgb-without-upscaling\/23204\/9\" rel=\"nofollow\">https:\/\/discuss.huggingface.co\/t\/decoding-latents-to-rgb-without-upscaling\/23204\/9<\/a><\/li>\n<\/ul>\n<\/li>\n<li>Interface improvements\n<ul dir=\"auto\">\n<li><g-emoji alias=\"white_check_mark\" fallback-src=\"https:\/\/github.githubassets.com\/images\/icons\/emoji\/unicode\/2705.png\">\u2705<\/g-emoji> init-image at command line<\/li>\n<li><g-emoji alias=\"white_check_mark\" fallback-src=\"https:\/\/github.githubassets.com\/images\/icons\/emoji\/unicode\/2705.png\">\u2705<\/g-emoji> prompt expansion<\/li>\n<li><g-emoji alias=\"white_check_mark\" fallback-src=\"https:\/\/github.githubassets.com\/images\/icons\/emoji\/unicode\/2705.png\">\u2705<\/g-emoji> interactive cli<\/li>\n<\/ul>\n<\/li>\n<li>Image Generation Features\n<ul dir=\"auto\">\n<li><g-emoji alias=\"white_check_mark\" fallback-src=\"https:\/\/github.githubassets.com\/images\/icons\/emoji\/unicode\/2705.png\">\u2705<\/g-emoji> add k-diffusion sampling methods<\/li>\n<li><g-emoji alias=\"white_check_mark\" fallback-src=\"https:\/\/github.githubassets.com\/images\/icons\/emoji\/unicode\/2705.png\">\u2705<\/g-emoji> tiling<\/li>\n<li>generation videos\/gifs<\/li>\n<li>Compositional Visual Generation\n<ul dir=\"auto\">\n<li><a href=\"https:\/\/github.com\/energy-based-model\/Compositional-Visual-Generation-with-Composable-Diffusion-Models-PyTorch\">https:\/\/github.com\/energy-based-model\/Compositional-Visual-Generation-with-Composable-Diffusion-Models-PyTorch<\/a><\/li>\n<li><a href=\"https:\/\/colab.research.google.com\/github\/energy-based-model\/Compositional-Visual-Generation-with-Composable-Diffusion-Models-PyTorch\/blob\/main\/notebooks\/demo.ipynb#scrollTo=wt_j3uXZGFAS\" rel=\"nofollow\">https:\/\/colab.research.google.com\/github\/energy-based-model\/Compositional-Visual-Generation-with-Composable-Diffusion-Models-PyTorch\/blob\/main\/notebooks\/demo.ipynb#scrollTo=wt_j3uXZGFAS<\/a><\/li>\n<\/ul>\n<\/li>\n<li><g-emoji alias=\"white_check_mark\" fallback-src=\"https:\/\/github.githubassets.com\/images\/icons\/emoji\/unicode\/2705.png\">\u2705<\/g-emoji> negative prompting\n<ul dir=\"auto\">\n<li>some syntax to allow it in a text string<\/li>\n<\/ul>\n<\/li>\n<li><g-emoji alias=\"no_entry_sign\" fallback-src=\"https:\/\/github.githubassets.com\/images\/icons\/emoji\/unicode\/1f6ab.png\">????<\/g-emoji> images as actual prompts instead of just init images.\n<ul dir=\"auto\">\n<li>not directly possible due to model architecture.<\/li>\n<li>requires model fine-tuning since SD1.4 expects 77&#215;768 text encoding input<\/li>\n<li><a href=\"https:\/\/twitter.com\/Buntworthy\/status\/1566744186153484288\" rel=\"nofollow\">https:\/\/twitter.com\/Buntworthy\/status\/1566744186153484288<\/a><\/li>\n<li><a href=\"https:\/\/github.com\/justinpinkney\/stable-diffusion\">https:\/\/github.com\/justinpinkney\/stable-diffusion<\/a><\/li>\n<li><a href=\"https:\/\/github.com\/LambdaLabsML\/lambda-diffusers\">https:\/\/github.com\/LambdaLabsML\/lambda-diffusers<\/a><\/li>\n<li><a href=\"https:\/\/www.reddit.com\/r\/MachineLearning\/comments\/x6k5bm\/n_stable_diffusion_image_variations_released\/\" rel=\"nofollow\">https:\/\/www.reddit.com\/r\/MachineLearning\/comments\/x6k5bm\/n_stable_diffusion_image_variations_released\/<\/a><\/li>\n<\/ul>\n<\/li>\n<\/ul>\n<\/li>\n<li>Image Editing\n<ul dir=\"auto\">\n<li>outpainting\n<ul dir=\"auto\">\n<li><a href=\"https:\/\/github.com\/parlance-zz\/g-diffuser-bot\/search?q=noise&#038;type=issues\">https:\/\/github.com\/parlance-zz\/g-diffuser-bot\/search?q=noise&#038;type=issues<\/a><\/li>\n<li>lama cleaner<\/li>\n<\/ul>\n<\/li>\n<li><g-emoji alias=\"white_check_mark\" fallback-src=\"https:\/\/github.githubassets.com\/images\/icons\/emoji\/unicode\/2705.png\">\u2705<\/g-emoji> inpainting\n<ul dir=\"auto\">\n<li><a href=\"https:\/\/github.com\/Jack000\/glid-3-xl-stable\">https:\/\/github.com\/Jack000\/glid-3-xl-stable<\/a><\/li>\n<li><a href=\"https:\/\/github.com\/andreas128\/RePaint\">https:\/\/github.com\/andreas128\/RePaint<\/a><\/li>\n<li><g-emoji alias=\"white_check_mark\" fallback-src=\"https:\/\/github.githubassets.com\/images\/icons\/emoji\/unicode\/2705.png\">\u2705<\/g-emoji> img2img but keeps img stable<\/li>\n<li><a href=\"https:\/\/www.reddit.com\/r\/StableDiffusion\/comments\/xboy90\/a_better_way_of_doing_img2img_by_finding_the\/\" rel=\"nofollow\">https:\/\/www.reddit.com\/r\/StableDiffusion\/comments\/xboy90\/a_better_way_of_doing_img2img_by_finding_the\/<\/a><\/li>\n<li><a href=\"https:\/\/gist.github.com\/trygvebw\/c71334dd127d537a15e9d59790f7f5e1\">https:\/\/gist.github.com\/trygvebw\/c71334dd127d537a15e9d59790f7f5e1<\/a><\/li>\n<li><a href=\"https:\/\/github.com\/pesser\/stable-diffusion\/commit\/bbb52981460707963e2a62160890d7ecbce00e79\">https:\/\/github.com\/pesser\/stable-diffusion\/commit\/bbb52981460707963e2a62160890d7ecbce00e79<\/a><\/li>\n<li><a href=\"https:\/\/github.com\/SHI-Labs\/FcF-Inpainting\">https:\/\/github.com\/SHI-Labs\/FcF-Inpainting<\/a> <a href=\"https:\/\/praeclarumjj3.github.io\/fcf-inpainting\/\" rel=\"nofollow\">https:\/\/praeclarumjj3.github.io\/fcf-inpainting\/<\/a><\/li>\n<\/ul>\n<\/li>\n<li><g-emoji alias=\"white_check_mark\" fallback-src=\"https:\/\/github.githubassets.com\/images\/icons\/emoji\/unicode\/2705.png\">\u2705<\/g-emoji> text based image masking\n<ul dir=\"auto\">\n<li><g-emoji alias=\"white_check_mark\" fallback-src=\"https:\/\/github.githubassets.com\/images\/icons\/emoji\/unicode\/2705.png\">\u2705<\/g-emoji> ClipSeg &#8211; <a href=\"https:\/\/github.com\/timojl\/clipseg\">https:\/\/github.com\/timojl\/clipseg<\/a><\/li>\n<li><a href=\"https:\/\/github.com\/facebookresearch\/detectron2\">https:\/\/github.com\/facebookresearch\/detectron2<\/a><\/li>\n<\/ul>\n<\/li>\n<li>Attention Control Methods\n<ul dir=\"auto\">\n<li><a href=\"https:\/\/github.com\/bloc97\/CrossAttentionControl\">https:\/\/github.com\/bloc97\/CrossAttentionControl<\/a><\/li>\n<li><a href=\"https:\/\/github.com\/ChenWu98\/cycle-diffusion\">https:\/\/github.com\/ChenWu98\/cycle-diffusion<\/a><\/li>\n<\/ul>\n<\/li>\n<\/ul>\n<\/li>\n<li>Image Enhancement\n<ul dir=\"auto\">\n<li>Photo Restoration &#8211; <a href=\"https:\/\/github.com\/microsoft\/Bringing-Old-Photos-Back-to-Life\">https:\/\/github.com\/microsoft\/Bringing-Old-Photos-Back-to-Life<\/a><\/li>\n<li>Upscaling\n<ul dir=\"auto\">\n<li><g-emoji alias=\"white_check_mark\" fallback-src=\"https:\/\/github.githubassets.com\/images\/icons\/emoji\/unicode\/2705.png\">\u2705<\/g-emoji> realesrgan<\/li>\n<li>ldm<\/li>\n<li><a href=\"https:\/\/github.com\/lowfuel\/progrock-stable\">https:\/\/github.com\/lowfuel\/progrock-stable<\/a><\/li>\n<li>gobig<\/li>\n<li>stable super-res?\n<ul dir=\"auto\">\n<li>todo: try with 1-0-0-0 mask at full image resolution (rencoding entire image+predicted image at every step)<\/li>\n<li>todo: use a gaussian pyramid and only include the &#8220;high-detail&#8221; level of the pyramid into the next step<\/li>\n<li><a href=\"https:\/\/www.reddit.com\/r\/StableDiffusion\/comments\/xkjjf9\/upscale_to_huge_sizes_and_add_detail_with_sd\/\" rel=\"nofollow\">https:\/\/www.reddit.com\/r\/StableDiffusion\/comments\/xkjjf9\/upscale_to_huge_sizes_and_add_detail_with_sd\/<\/a><\/li>\n<\/ul>\n<\/li>\n<\/ul>\n<\/li>\n<li><g-emoji alias=\"white_check_mark\" fallback-src=\"https:\/\/github.githubassets.com\/images\/icons\/emoji\/unicode\/2705.png\">\u2705<\/g-emoji> face enhancers\n<ul dir=\"auto\">\n<li><g-emoji alias=\"white_check_mark\" fallback-src=\"https:\/\/github.githubassets.com\/images\/icons\/emoji\/unicode\/2705.png\">\u2705<\/g-emoji> gfpgan &#8211; <a href=\"https:\/\/github.com\/TencentARC\/GFPGAN\">https:\/\/github.com\/TencentARC\/GFPGAN<\/a><\/li>\n<li><g-emoji alias=\"white_check_mark\" fallback-src=\"https:\/\/github.githubassets.com\/images\/icons\/emoji\/unicode\/2705.png\">\u2705<\/g-emoji> codeformer &#8211; <a href=\"https:\/\/github.com\/sczhou\/CodeFormer\">https:\/\/github.com\/sczhou\/CodeFormer<\/a><\/li>\n<\/ul>\n<\/li>\n<li><g-emoji alias=\"white_check_mark\" fallback-src=\"https:\/\/github.githubassets.com\/images\/icons\/emoji\/unicode\/2705.png\">\u2705<\/g-emoji> image describe feature &#8211;\n<ul dir=\"auto\">\n<li><g-emoji alias=\"white_check_mark\" fallback-src=\"https:\/\/github.githubassets.com\/images\/icons\/emoji\/unicode\/2705.png\">\u2705<\/g-emoji> <a href=\"https:\/\/github.com\/salesforce\/BLIP\">https:\/\/github.com\/salesforce\/BLIP<\/a><\/li>\n<li><g-emoji alias=\"no_entry_sign\" fallback-src=\"https:\/\/github.githubassets.com\/images\/icons\/emoji\/unicode\/1f6ab.png\">????<\/g-emoji> CLIP brute-force prompt reconstruction\n<ul dir=\"auto\">\n<li>The accuracy of this approach is too low for me to include it in imaginAIry<\/li>\n<li><a href=\"https:\/\/github.com\/rmokady\/CLIP_prefix_caption\">https:\/\/github.com\/rmokady\/CLIP_prefix_caption<\/a><\/li>\n<li><a href=\"https:\/\/github.com\/pharmapsychotic\/clip-interrogator\">https:\/\/github.com\/pharmapsychotic\/clip-interrogator<\/a> (blip + clip)<\/li>\n<\/ul>\n<\/li>\n<li><a href=\"https:\/\/github.com\/KaiyangZhou\/CoOp\">https:\/\/github.com\/KaiyangZhou\/CoOp<\/a><\/li>\n<\/ul>\n<\/li>\n<li><g-emoji alias=\"no_entry_sign\" fallback-src=\"https:\/\/github.githubassets.com\/images\/icons\/emoji\/unicode\/1f6ab.png\">????<\/g-emoji> CPU support.  While the code does actually work on some CPUs, the generation takes so long that I don&#8217;t think it&#8217;s<br \/>\nworth the effort to support this feature<\/li>\n<li><g-emoji alias=\"white_check_mark\" fallback-src=\"https:\/\/github.githubassets.com\/images\/icons\/emoji\/unicode\/2705.png\">\u2705<\/g-emoji> img2img for plms<\/li>\n<li><g-emoji alias=\"white_check_mark\" fallback-src=\"https:\/\/github.githubassets.com\/images\/icons\/emoji\/unicode\/2705.png\">\u2705<\/g-emoji> img2img for kdiff functions<\/li>\n<\/ul>\n<\/li>\n<li>Other\n<ul dir=\"auto\">\n<li>Enhancement pipelines<\/li>\n<li>text-to-3d <a href=\"https:\/\/dreamfusionpaper.github.io\/\" rel=\"nofollow\">https:\/\/dreamfusionpaper.github.io\/<\/a>\n<ul dir=\"auto\">\n<li><a href=\"https:\/\/shihmengli.github.io\/3D-Photo-Inpainting\/\" rel=\"nofollow\">https:\/\/shihmengli.github.io\/3D-Photo-Inpainting\/<\/a><\/li>\n<li><a data-error-text=\"Failed to load title\" data-id=\"4674386\" data-permission-text=\"Title is private\" data-url=\"https:\/\/github.com\/thygate\/stable-diffusion-webui-depthmap-script\/discussions\/50\" data-hovercard-type=\"discussion\" data-hovercard-url=\"\/thygate\/stable-diffusion-webui-depthmap-script\/discussions\/50\/hovercard\" href=\"https:\/\/github.com\/thygate\/stable-diffusion-webui-depthmap-script\/discussions\/50\">thygate\/stable-diffusion-webui-depthmap-script#50<\/a><\/li>\n<li>Depth estimation\n<ul dir=\"auto\">\n<li>what is SOTA for monocular depth estimation?<\/li>\n<li><a href=\"https:\/\/github.com\/compphoto\/BoostingMonocularDepth\">https:\/\/github.com\/compphoto\/BoostingMonocularDepth<\/a><\/li>\n<\/ul>\n<\/li>\n<\/ul>\n<\/li>\n<li>make a video <a href=\"https:\/\/github.com\/lucidrains\/make-a-video-pytorch\">https:\/\/github.com\/lucidrains\/make-a-video-pytorch<\/a><\/li>\n<li>animations\n<ul dir=\"auto\">\n<li><a href=\"https:\/\/github.com\/francislabountyjr\/stable-diffusion\/blob\/main\/inferencing_notebook.ipynb\">https:\/\/github.com\/francislabountyjr\/stable-diffusion\/blob\/main\/inferencing_notebook.ipynb<\/a><\/li>\n<li><a href=\"https:\/\/www.youtube.com\/watch?v=E7aAFEhdngI\" rel=\"nofollow\">https:\/\/www.youtube.com\/watch?v=E7aAFEhdngI<\/a><\/li>\n<li><a href=\"https:\/\/github.com\/pytti-tools\/frame-interpolation\">https:\/\/github.com\/pytti-tools\/frame-interpolation<\/a><\/li>\n<\/ul>\n<\/li>\n<li>guided generation\n<ul dir=\"auto\">\n<li><a href=\"https:\/\/colab.research.google.com\/drive\/1dlgggNa5Mz8sEAGU0wFCHhGLFooW_pf1#scrollTo=UDeXQKbPTdZI\" rel=\"nofollow\">https:\/\/colab.research.google.com\/drive\/1dlgggNa5Mz8sEAGU0wFCHhGLFooW_pf1#scrollTo=UDeXQKbPTdZI<\/a><\/li>\n<li><a href=\"https:\/\/colab.research.google.com\/github\/aicrumb\/doohickey\/blob\/main\/Doohickey_Diffusion.ipynb#scrollTo=PytCwKXCmPid\" rel=\"nofollow\">https:\/\/colab.research.google.com\/github\/aicrumb\/doohickey\/blob\/main\/Doohickey_Diffusion.ipynb#scrollTo=PytCwKXCmPid<\/a><\/li>\n<li><a href=\"https:\/\/github.com\/mlfoundations\/open_clip\">https:\/\/github.com\/mlfoundations\/open_clip<\/a><\/li>\n<li><a href=\"https:\/\/github.com\/openai\/guided-diffusion\">https:\/\/github.com\/openai\/guided-diffusion<\/a><\/li>\n<\/ul>\n<\/li>\n<li>image variations <a href=\"https:\/\/github.com\/lstein\/stable-diffusion\/blob\/main\/VARIATIONS.md\">https:\/\/github.com\/lstein\/stable-diffusion\/blob\/main\/VARIATIONS.md<\/a><\/li>\n<li>textual inversion\n<ul dir=\"auto\">\n<li><a href=\"https:\/\/www.reddit.com\/r\/StableDiffusion\/comments\/xbwb5y\/how_to_run_textual_inversion_locally_train_your\/\" rel=\"nofollow\">https:\/\/www.reddit.com\/r\/StableDiffusion\/comments\/xbwb5y\/how_to_run_textual_inversion_locally_train_your\/<\/a><\/li>\n<li><a href=\"https:\/\/colab.research.google.com\/github\/huggingface\/notebooks\/blob\/main\/diffusers\/sd_textual_inversion_training.ipynb#scrollTo=50JuJUM8EG1h\" rel=\"nofollow\">https:\/\/colab.research.google.com\/github\/huggingface\/notebooks\/blob\/main\/diffusers\/sd_textual_inversion_training.ipynb#scrollTo=50JuJUM8EG1h<\/a><\/li>\n<li><a href=\"https:\/\/colab.research.google.com\/github\/huggingface\/notebooks\/blob\/main\/diffusers\/stable_diffusion_textual_inversion_library_navigator.ipynb\" rel=\"nofollow\">https:\/\/colab.research.google.com\/github\/huggingface\/notebooks\/blob\/main\/diffusers\/stable_diffusion_textual_inversion_library_navigator.ipynb<\/a><\/li>\n<li><a href=\"https:\/\/github.com\/Jack000\/glid-3-xl-stable\">https:\/\/github.com\/Jack000\/glid-3-xl-stable<\/a><\/li>\n<\/ul>\n<\/li>\n<li>fix saturation at high CFG <a href=\"https:\/\/www.reddit.com\/r\/StableDiffusion\/comments\/xalo78\/fixing_excessive_contrastsaturation_resulting\/\" rel=\"nofollow\">https:\/\/www.reddit.com\/r\/StableDiffusion\/comments\/xalo78\/fixing_excessive_contrastsaturation_resulting\/<\/a><\/li>\n<li><a href=\"https:\/\/www.reddit.com\/r\/StableDiffusion\/comments\/xbrrgt\/a_rundown_of_twenty_new_methodsoptions_added_to\/\" rel=\"nofollow\">https:\/\/www.reddit.com\/r\/StableDiffusion\/comments\/xbrrgt\/a_rundown_of_twenty_new_methodsoptions_added_to\/<\/a><\/li>\n<li><g-emoji alias=\"white_check_mark\" fallback-src=\"https:\/\/github.githubassets.com\/images\/icons\/emoji\/unicode\/2705.png\">\u2705<\/g-emoji> deploy to pypi<\/li>\n<li>find similar images <a href=\"https:\/\/knn5.laion.ai\/?back=https%3A%2F%2Fknn5.laion.ai%2F&#038;index=laion5B&#038;useMclip=false\" rel=\"nofollow\">https:\/\/knn5.laion.ai\/?back=https%3A%2F%2Fknn5.laion.ai%2F&#038;index=laion5B&#038;useMclip=false<\/a><\/li>\n<li><a href=\"https:\/\/github.com\/vicgalle\/stable-diffusion-aesthetic-gradients\">https:\/\/github.com\/vicgalle\/stable-diffusion-aesthetic-gradients<\/a><\/li>\n<\/ul>\n<\/li>\n<li>Training\n<ul dir=\"auto\">\n<li>Finetuning &#8220;dreambooth&#8221; style<\/li>\n<li>Textual Inversion<\/li>\n<li>Performance Improvements<\/li>\n<li><a href=\"https:\/\/github.com\/hpcaitech\/ColossalAI\/tree\/main\/examples\/images\/diffusion\">ColoassalAI<\/a> &#8211; almost got it working but it&#8217;s not easy enough to install to merit inclusion in imaginairy. We should check back in on this.<\/li>\n<li>Xformers<\/li>\n<li>Deepspeed<\/li>\n<li><\/li>\n<\/ul>\n<\/li>\n<\/ul>\n<h2 dir=\"auto\">Notable Stable Diffusion Implementations<\/h2>\n<ul dir=\"auto\">\n<li><a href=\"https:\/\/github.com\/ahrm\/UnstableFusion\">https:\/\/github.com\/ahrm\/UnstableFusion<\/a><\/li>\n<li><a href=\"https:\/\/github.com\/AUTOMATIC1111\/stable-diffusion-webui\">https:\/\/github.com\/AUTOMATIC1111\/stable-diffusion-webui<\/a><\/li>\n<li><a href=\"https:\/\/github.com\/blueturtleai\/gimp-stable-diffusion\">https:\/\/github.com\/blueturtleai\/gimp-stable-diffusion<\/a><\/li>\n<li><a href=\"https:\/\/github.com\/hafriedlander\/stable-diffusion-grpcserver\">https:\/\/github.com\/hafriedlander\/stable-diffusion-grpcserver<\/a><\/li>\n<li><a href=\"https:\/\/github.com\/huggingface\/diffusers\/tree\/main\/src\/diffusers\/pipelines\/stable_diffusion\">https:\/\/github.com\/huggingface\/diffusers\/tree\/main\/src\/diffusers\/pipelines\/stable_diffusion<\/a><\/li>\n<li><a href=\"https:\/\/github.com\/lkwq007\/stablediffusion-infinity\">https:\/\/github.com\/lkwq007\/stablediffusion-infinity<\/a><\/li>\n<li><a href=\"https:\/\/github.com\/lstein\/stable-diffusion\">https:\/\/github.com\/lstein\/stable-diffusion<\/a><\/li>\n<li><a href=\"https:\/\/github.com\/parlance-zz\/g-diffuser-lib\">https:\/\/github.com\/parlance-zz\/g-diffuser-lib<\/a><\/li>\n<li><a href=\"https:\/\/github.com\/hafriedlander\/idea2art\">https:\/\/github.com\/hafriedlander\/idea2art<\/a><\/li>\n<\/ul>\n<h2 dir=\"auto\">Online Stable Diffusion Services<\/h2>\n<ul dir=\"auto\">\n<li><a href=\"https:\/\/stablecog.com\/\" rel=\"nofollow\">https:\/\/stablecog.com\/<\/a><\/li>\n<\/ul>\n<h2 dir=\"auto\">Further Reading<\/h2>\n<ul dir=\"auto\">\n<li><a href=\"https:\/\/openart.ai\/promptbook\" rel=\"nofollow\">Prompt Engineering Handbook<\/a><\/li>\n<li>Differences between samplers\n<ul dir=\"auto\">\n<li><a href=\"https:\/\/www.reddit.com\/r\/StableDiffusion\/comments\/xbeyw3\/can_anyone_offer_a_little_guidance_on_the\/\" rel=\"nofollow\">https:\/\/www.reddit.com\/r\/StableDiffusion\/comments\/xbeyw3\/can_anyone_offer_a_little_guidance_on_the\/<\/a><\/li>\n<\/ul>\n<\/li>\n<li><a href=\"https:\/\/www.reddit.com\/r\/bigsleep\/comments\/xb5cat\/wiskkeys_lists_of_texttoimage_systems_and_related\/\" rel=\"nofollow\">https:\/\/www.reddit.com\/r\/bigsleep\/comments\/xb5cat\/wiskkeys_lists_of_texttoimage_systems_and_related\/<\/a><\/li>\n<li><a href=\"https:\/\/huggingface.co\/blog\/annotated-diffusion\" rel=\"nofollow\">https:\/\/huggingface.co\/blog\/annotated-diffusion<\/a><\/li>\n<li><a href=\"https:\/\/github.com\/jessevig\/bertviz\">https:\/\/github.com\/jessevig\/bertviz<\/a><\/li>\n<li><a href=\"https:\/\/www.youtube.com\/watch?v=5pIQFQZsNe8\" rel=\"nofollow\">https:\/\/www.youtube.com\/watch?v=5pIQFQZsNe8<\/a><\/li>\n<li><a href=\"https:\/\/jalammar.github.io\/illustrated-transformer\/\" rel=\"nofollow\">https:\/\/jalammar.github.io\/illustrated-transformer\/<\/a><\/li>\n<li><a href=\"https:\/\/huggingface.co\/blog\/assets\/78_annotated-diffusion\/unet_architecture.jpg\" rel=\"nofollow\">https:\/\/huggingface.co\/blog\/assets\/78_annotated-diffusion\/unet_architecture.jpg<\/a><\/li>\n<\/ul><\/div>\n<p><a href=\"https:\/\/github.com\/brycedrennan\/imaginAIry\/blob\/master\/README.md\" class=\"button purchase\" rel=\"nofollow noopener\" target=\"_blank\">Read More<\/a><br \/>\n Christeen Catt<\/p>\n","protected":false},"excerpt":{"rendered":"<p>ImaginAIry ???????? AI imagined images. Pythonic generation of stable diffusion images. &#8220;just works&#8221; on Linux and macOS(M1) (and maybe windows?). Examples # on macOS, make sure rust is installed first<\/p>\n","protected":false},"author":1,"featured_media":600104,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[29423,23726,46],"tags":[],"class_list":{"0":"post-600103","1":"post","2":"type-post","3":"status-publish","4":"format-standard","5":"has-post-thumbnail","7":"category-edits","8":"category-images","9":"category-technology"},"aioseo_notices":[],"_links":{"self":[{"href":"https:\/\/newsycanuse.com\/index.php\/wp-json\/wp\/v2\/posts\/600103","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/newsycanuse.com\/index.php\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/newsycanuse.com\/index.php\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/newsycanuse.com\/index.php\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/newsycanuse.com\/index.php\/wp-json\/wp\/v2\/comments?post=600103"}],"version-history":[{"count":0,"href":"https:\/\/newsycanuse.com\/index.php\/wp-json\/wp\/v2\/posts\/600103\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/newsycanuse.com\/index.php\/wp-json\/wp\/v2\/media\/600104"}],"wp:attachment":[{"href":"https:\/\/newsycanuse.com\/index.php\/wp-json\/wp\/v2\/media?parent=600103"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/newsycanuse.com\/index.php\/wp-json\/wp\/v2\/categories?post=600103"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/newsycanuse.com\/index.php\/wp-json\/wp\/v2\/tags?post=600103"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}