InvokeAI/scripts/images2prompt.py

29 lines
863 B
Python
Raw Normal View History

#!/usr/bin/env python
2023-07-27 14:54:01 +00:00
"""This script reads the "Invoke" Stable Diffusion prompt embedded in files generated by invoke.py"""
import sys
2023-07-27 14:54:01 +00:00
from PIL import Image, PngImagePlugin
if len(sys.argv) < 2:
print("Usage: file2prompt.py <file1.png> <file2.png> <file3.png>...")
2023-07-27 14:54:01 +00:00
print(
"This script opens up the indicated invoke.py-generated PNG file(s) and prints out the prompt used to generate them."
)
exit(-1)
filenames = sys.argv[1:]
for f in filenames:
try:
im = Image.open(f)
try:
2023-07-27 14:54:01 +00:00
prompt = im.text["Dream"]
except KeyError:
2023-07-27 14:54:01 +00:00
prompt = ""
print(f"{f}: {prompt}")
except FileNotFoundError:
2023-07-27 14:54:01 +00:00
sys.stderr.write(f"{f} not found\n")
continue
except PermissionError:
2023-07-27 14:54:01 +00:00
sys.stderr.write(f"{f} could not be opened due to inadequate permissions\n")
continue