Skip to content

Commit

Permalink
added inpainting test
Browse files Browse the repository at this point in the history
  • Loading branch information
AyaanShah2204 committed Jun 22, 2023
1 parent 5999538 commit e43a632
Showing 1 changed file with 57 additions and 10 deletions.
67 changes: 57 additions & 10 deletions rest_api_tests/api_test.py
Original file line number Diff line number Diff line change
Expand Up @@ -91,19 +91,66 @@ def img2img_test():

print("Extracting response object")

# Uncomment below to save the picture
# NOTE Uncomment below to save the picture

# response_obj = res.json()
# img_b64 = response_obj.get("images", [False])[0] or response_obj.get(
# "image"
# )
# img_b2 = base64.b64decode(img_b64.replace("data:image/png;base64,", ""))
# im_file = BytesIO(img_b2)
# response_img = Image.open(im_file)
# print("Saving Response Image to: response_img")
# response_img.save(r"rest_api_tests/response_img.png")

def inpainting_test():
prompt = "Paint a rabbit riding on the dog"
negative_prompt = "ugly, bad art, poorly drawn hands, poorly drawn feet, poorly drawn face, out of frame, extra limbs, disfigured, deformed, body out of frame, blurry, bad anatomy, blurred, watermark, grainy, tiling, signature, cut off, draft"
seed = 2121991605
height = 512
width = 512
steps = 50
noise_level = 10
cfg_scale = 7
is_full_res = False
full_res_padding = 32
image_path = r"./rest_api_tests/dog.png"

img_file = open(image_path, "rb")
image = "data:image/png;base64," + base64.b64encode(img_file.read()).decode()
img_file = open(image_path, "rb")
mask = "data:image/png;base64," + base64.b64encode(img_file.read()).decode()

url = "http://127.0.0.1:8080/sdapi/v1/inpaint"

headers = {
"User-Agent": "PythonTest",
"Accept": "*/*",
"Accept-Encoding": "gzip, deflate, br",
}

data = {
"prompt": prompt,
"negative_prompt": negative_prompt,
"image": image,
"mask" : mask,
"height": height,
"width": width,
"steps": steps,
"noise_level": noise_level,
"cfg_scale": cfg_scale,
"seed": seed,
"is_full_res" : is_full_res,
"full_res_padding" : full_res_padding
}

res = requests.post(url=url, json=data, headers=headers, timeout=1000)

print(f"[Inpainting] response from server was : {res.status_code}")

response_obj = res.json()
img_b64 = response_obj.get("images", [False])[0] or response_obj.get(
"image"
)
img_b2 = base64.b64decode(img_b64.replace("data:image/png;base64,", ""))
im_file = BytesIO(img_b2)
response_img = Image.open(im_file)
print("Saving Response Image to: response_img")
response_img.save(r"rest_api_tests/response_img.png")


if __name__ == "__main__":
img2img_test()
upscaler_test()
inpainting_test()

0 comments on commit e43a632

Please sign in to comment.