ysharma HF staff commited on
Commit
26049de
·
1 Parent(s): 6fb313b

update layout, bug fix for parallel usage

Browse files
Files changed (1) hide show
  1. app.py +16 -12
app.py CHANGED
@@ -37,25 +37,27 @@ be to the input. This pipeline requires a value of at least `1`. It's possible y
37
  * Cropping the image so the face takes up a larger portion of the frame.
38
  """
39
 
40
- def chat(image_in, in_steps, in_guidance_scale, in_img_guidance_scale, prompt, history, progress=gr.Progress(track_tqdm=True)):
41
- progress(0, desc="Starting...")
42
  global counter
43
  counter += 1
44
  #if message == "revert": --to add revert functionality later
45
  if counter > 1:
46
  # Open the image
47
- image_in = Image.open("edited_image.png")
48
- #edited_image = pipe(prompt, image=image_in, num_inference_steps=20, image_guidance_scale=1).images[0]
49
- edited_image = pipe(prompt, image=image_in, num_inference_steps=int(in_steps), guidance_scale=float(in_guidance_scale), image_guidance_scale=float(in_img_guidance_scale)).images[0]
50
- edited_image.save("edited_image.png") #("/tmp/edited_image.png") #(img_nm)
 
 
 
 
51
  history = history or []
52
- #Fixed supportive text
53
  add_text_list = ["There you go", "Enjoy your image!", "Nice work! Wonder what you gonna do next!", "Way to go!", "Does this work for you?", "Something like this?"]
54
- #Resize (or not) the image for better display
55
- #response = random.choice(add_text_list) + '<img src="/file=edited_image.png" style="width: 350px; height: 350px;">'
56
- response = random.choice(add_text_list) + '<img src="/file=edited_image.png">' # style="width: 350px; height: 350px;">'
57
  history.append((prompt, response))
58
- return history, history
59
 
60
  with gr.Blocks() as demo:
61
  gr.Markdown("""<h1><center> Chat Interface with InstructPix2Pix: Give Image Editing Instructions </h1></center>
@@ -76,8 +78,10 @@ with gr.Blocks() as demo:
76
  in_steps = gr.Number(label="Enter the number of Inference steps", value = 20)
77
  in_guidance_scale = gr.Slider(1,10, step=0.5, label="Set Guidance scale", value=7.5)
78
  in_img_guidance_scale = gr.Slider(1,10, step=0.5, label="Set Image Guidance scale", value=1.5)
 
 
79
  chatbot = gr.Chatbot()
80
- b1.click(chat,[image_in, in_steps, in_guidance_scale, in_img_guidance_scale, text_in, state_in], [chatbot, state_in]) #, queue=True)
81
  gr.Markdown(help_text)
82
 
83
  demo.queue(concurrency_count=10)
 
37
  * Cropping the image so the face takes up a larger portion of the frame.
38
  """
39
 
40
+ def chat(image_in, in_steps, in_guidance_scale, in_img_guidance_scale, image_hid, img_name, prompt, history, progress=gr.Progress(track_tqdm=True)):
41
+ #progress(0, desc="Starting...")
42
  global counter
43
  counter += 1
44
  #if message == "revert": --to add revert functionality later
45
  if counter > 1:
46
  # Open the image
47
+ image_in = Image.open(img_name) #("edited_image.png") #(img_nm)
48
+ edited_image = pipe(prompt, image=image_in, num_inference_steps=int(in_steps), guidance_scale=float(in_guidance_scale), image_guidance_scale=float(in_img_guidance_scale)).images[0]
49
+ edited_image.save(img_name)
50
+ else:
51
+ seed = random.randint(0, 1000000)
52
+ img_name = f"edited_image_{seed}.png"
53
+ edited_image = pipe(prompt, image=image_in, num_inference_steps=int(in_steps), guidance_scale=float(in_guidance_scale), image_guidance_scale=float(in_img_guidance_scale)).images[0]
54
+ edited_image.save(img_name) #("/tmp/edited_image.png") #(img_nm)
55
  history = history or []
56
+ #Resizing (or not) the image for better display and adding supportive sample text
57
  add_text_list = ["There you go", "Enjoy your image!", "Nice work! Wonder what you gonna do next!", "Way to go!", "Does this work for you?", "Something like this?"]
58
+ response = random.choice(add_text_list) + '<img src="/file=' + img_name + '">' # style="width: 200px; height: 200px;">'
 
 
59
  history.append((prompt, response))
60
+ return history, history, edited_image, img_name
61
 
62
  with gr.Blocks() as demo:
63
  gr.Markdown("""<h1><center> Chat Interface with InstructPix2Pix: Give Image Editing Instructions </h1></center>
 
78
  in_steps = gr.Number(label="Enter the number of Inference steps", value = 20)
79
  in_guidance_scale = gr.Slider(1,10, step=0.5, label="Set Guidance scale", value=7.5)
80
  in_img_guidance_scale = gr.Slider(1,10, step=0.5, label="Set Image Guidance scale", value=1.5)
81
+ image_hid = gr.Image(visible=False,)
82
+ img_name_temp_out = gr.Textbox(visible=False)
83
  chatbot = gr.Chatbot()
84
+ b1.click(chat,[image_in, in_steps, in_guidance_scale, in_img_guidance_scale, image_hid, img_name_temp_out, text_in, state_in], [chatbot, state_in, image_hid, img_name_temp_out]) #, queue=True)
85
  gr.Markdown(help_text)
86
 
87
  demo.queue(concurrency_count=10)