AbdullahAlfaraj / Auto-Photoshop-StableDiffusion-Plugin

A user-friendly plug-in that makes it easy to generate stable diffusion images inside Photoshop using either Automatic or ComfyUI as a backend.
MIT License
6.65k stars 507 forks source link

Can't outpaint/inpaint, error messages in webui batch interface #241

Open DonnyKemp opened 1 year ago

DonnyKemp commented 1 year ago

Hello,

I've successfully installed the plugin, and can generate images, but I'm unable to outpaint, inpaint or use img2img.

I see 2 issues, but I don't know how they're related or what the fix is.

First, when I attempt to outpaint or inpaint the image that I've generated does not load in the image or mask previews. The screenshot below is what I see. I'm guessing the correct path to the created image isn't set, but I can't find where to change it.

Screenshot 2023-04-27 200024

Second, I get the errors below in the SD webui batch interface when I hit the generate outpaint button. I'm not sure if this is related to the fact that I can't see the images in the preview above, or separate issue.

Has anyone run into this, or know what the solution is?

Traceback (most recent call last): File "C:\Stable Diffusion WebUI\venv\lib\site-packages\starlette\middleware\base.py", line 78, in call_next message = await recv_stream.receive() File "C:\Stable Diffusion WebUI\venv\lib\site-packages\anyio\streams\memory.py", line 114, in receive raise EndOfStream anyio.EndOfStream

During handling of the above exception, another exception occurred:

Traceback (most recent call last): File "C:\Stable Diffusion WebUI\modules\api\api.py", line 145, in exception_handling return await call_next(request) File "C:\Stable Diffusion WebUI\venv\lib\site-packages\starlette\middleware\base.py", line 84, in call_next raise app_exc File "C:\Stable Diffusion WebUI\venv\lib\site-packages\starlette\middleware\base.py", line 70, in coro await self.app(scope, receive_or_disconnect, send_no_error) File "C:\Stable Diffusion WebUI\venv\lib\site-packages\starlette\middleware\base.py", line 108, in call response = await self.dispatch_func(request, call_next) File "C:\Stable Diffusion WebUI\modules\api\api.py", line 110, in log_and_time res: Response = await call_next(req) File "C:\Stable Diffusion WebUI\venv\lib\site-packages\starlette\middleware\base.py", line 84, in call_next raise app_exc File "C:\Stable Diffusion WebUI\venv\lib\site-packages\starlette\middleware\base.py", line 70, in coro await self.app(scope, receive_or_disconnect, send_no_error) File "C:\Stable Diffusion WebUI\venv\lib\site-packages\starlette\middleware\gzip.py", line 26, in call await self.app(scope, receive, send) File "C:\Stable Diffusion WebUI\venv\lib\site-packages\starlette\middleware\exceptions.py", line 79, in call raise exc File "C:\Stable Diffusion WebUI\venv\lib\site-packages\starlette\middleware\exceptions.py", line 68, in call await self.app(scope, receive, sender) File "C:\Stable Diffusion WebUI\venv\lib\site-packages\fastapi\middleware\asyncexitstack.py", line 21, in call raise e File "C:\Stable Diffusion WebUI\venv\lib\site-packages\fastapi\middleware\asyncexitstack.py", line 18, in call await self.app(scope, receive, send) File "C:\Stable Diffusion WebUI\venv\lib\site-packages\starlette\routing.py", line 718, in call await route.handle(scope, receive, send) File "C:\Stable Diffusion WebUI\venv\lib\site-packages\starlette\routing.py", line 276, in handle await self.app(scope, receive, send) File "C:\Stable Diffusion WebUI\venv\lib\site-packages\starlette\routing.py", line 66, in app response = await func(request) File "C:\Stable Diffusion WebUI\venv\lib\site-packages\fastapi\routing.py", line 237, in app raw_response = await run_endpoint_function( File "C:\Stable Diffusion WebUI\venv\lib\site-packages\fastapi\routing.py", line 165, in run_endpoint_function return await run_in_threadpool(dependant.call, *values) File "C:\Stable Diffusion WebUI\venv\lib\site-packages\starlette\concurrency.py", line 41, in run_in_threadpool return await anyio.to_thread.run_sync(func, args) File "C:\Stable Diffusion WebUI\venv\lib\site-packages\anyio\to_thread.py", line 31, in run_sync return await get_asynclib().run_sync_in_worker_thread( File "C:\Stable Diffusion WebUI\venv\lib\site-packages\anyio_backends_asyncio.py", line 937, in run_sync_in_worker_thread return await future File "C:\Stable Diffusion WebUI\venv\lib\site-packages\anyio_backends_asyncio.py", line 867, in run result = context.run(func, *args) File "C:\Stable Diffusion WebUI\modules\api\api.py", line 363, in img2imgapi p.init_images = [decode_base64_to_image(x) for x in init_images] File "C:\Stable Diffusion WebUI\modules\api\api.py", line 363, in p.init_images = [decode_base64_to_image(x) for x in init_images] File "C:\Stable Diffusion WebUI\modules\api\api.py", line 59, in decode_base64_to_image if encoding.startswith("data:image/"): AttributeError: 'NoneType' object has no attribute 'startswith'

zombieyang commented 1 year ago

I meet this problem too. But I notice that your selected area must be a square instead of rectangular when you use inpaint/outpaint.

DonnyKemp commented 1 year ago

Unfortunately I have my selected area set to a fixed 512x512, but that doesn't make a difference. It's almost like the inpaint/outpaint function doesn't have the correct path for the generated images, but I can't find a setting for that. I can see the txt2img generated images in the appdata\roaming sub-folders.

I don't know if it's related, but I also get a popup error the first time I generate a new image after loading everything. It still generates the image, and the popup doesn't occur after that on additional image generations.

Screenshot 2023-04-28 091857