Fabrice-TIERCELIN commited on
Commit
f6c0ece
·
verified ·
1 Parent(s): 7ef9f0b

Adapt information

Browse files
Files changed (1) hide show
  1. app.py +23 -12
app.py CHANGED
@@ -3,7 +3,6 @@ import numpy as np
3
  import time
4
  import math
5
  import random
6
- import imageio
7
  import torch
8
 
9
  from diffusers import AutoPipelineForImage2Image
@@ -11,9 +10,15 @@ from PIL import Image, ImageFilter
11
 
12
  max_64_bit_int = 2**63 - 1
13
 
14
- device = "cuda" if torch.cuda.is_available() else "cpu"
15
- floatType = torch.float16 if torch.cuda.is_available() else torch.float32
16
- variant = "fp16" if torch.cuda.is_available() else None
 
 
 
 
 
 
17
 
18
  pipe = AutoPipelineForImage2Image.from_pretrained("stabilityai/sdxl-turbo", torch_dtype = floatType, variant = variant)
19
  pipe = pipe.to(device)
@@ -24,9 +29,7 @@ def update_seed(is_randomize_seed, seed):
24
  return seed
25
 
26
  def toggle_debug(is_debug_mode):
27
- if is_debug_mode:
28
- return [gr.update(visible = True)]
29
- return [gr.update(visible = False)]
30
 
31
  def check(
32
  source_img,
@@ -38,6 +41,7 @@ def check(
38
  strength,
39
  denoising_steps,
40
  seed,
 
41
  debug_mode,
42
  progress = gr.Progress()
43
  ):
@@ -56,6 +60,7 @@ def redraw(
56
  image_guidance_scale,
57
  strength,
58
  denoising_steps,
 
59
  seed,
60
  debug_mode,
61
  progress = gr.Progress()
@@ -69,6 +74,7 @@ def redraw(
69
  image_guidance_scale,
70
  strength,
71
  denoising_steps,
 
72
  seed,
73
  debug_mode
74
  )
@@ -163,7 +169,7 @@ def redraw(
163
  minutes = minutes - (hours * 60)
164
  return [
165
  output_image,
166
- "Start again to get a different result. The new image is " + str(output_width) + " pixels large and " + str(output_height) + " pixels high, so an image of " + f'{output_width * output_height:,}' + " pixels. The image have been generated in " + str(hours) + " h, " + str(minutes) + " min, " + str(secondes) + " sec." + limitation,
167
  input_image
168
  ]
169
 
@@ -174,7 +180,7 @@ with gr.Blocks() as interface:
174
  <p style="text-align: center;">Modifies the global render of your image, at any resolution, freely, without account, without watermark, without installation, which can be downloaded</p>
175
  <br/>
176
  <br/>
177
- 🚀 Powered by <i>SDXL Turbo</i> artificial intellingence. For illustration purpose, not information purpose. The new content is not based on real information but imagination.
178
  <br/>
179
  <ul>
180
  <li>To change the <b>view angle</b> of your image, I recommend to use <i>Zero123</i>,</li>
@@ -195,7 +201,7 @@ with gr.Blocks() as interface:
195
  )
196
  with gr.Column():
197
  source_img = gr.Image(label = "Your image", sources = ["upload", "webcam", "clipboard"], type = "pil")
198
- prompt = gr.Textbox(label = "Prompt", info = "Describe the subject, the background and the style of image; 77 token limit", placeholder = "Describe what you want to see")
199
  strength = gr.Slider(value = 0.5, minimum = 0.01, maximum = 1.0, step = 0.01, label = "Strength", info = "lower=follow the original image, higher=follow the prompt")
200
  with gr.Accordion("Advanced options", open = False):
201
  negative_prompt = gr.Textbox(label = "Negative prompt", placeholder = "Describe what you do NOT want to see", value = "Ugly, malformed, noise, blur, watermark")
@@ -207,14 +213,15 @@ with gr.Blocks() as interface:
207
  seed = gr.Slider(minimum = 0, maximum = max_64_bit_int, step = 1, randomize = True, label = "Seed")
208
  debug_mode = gr.Checkbox(label = "Debug mode", value = False, info = "Show intermediate results")
209
 
210
- submit = gr.Button("Redraw", variant = "primary")
211
 
212
  redrawn_image = gr.Image(label = "Redrawn image")
213
  information = gr.Label(label = "Information")
214
  original_image = gr.Image(label = "Original image", visible = False)
215
 
216
  submit.click(update_seed, inputs = [
217
- randomize_seed, seed
 
218
  ], outputs = [
219
  seed
220
  ], queue = False, show_progress = False).then(toggle_debug, debug_mode, [
@@ -228,6 +235,7 @@ with gr.Blocks() as interface:
228
  image_guidance_scale,
229
  strength,
230
  denoising_steps,
 
231
  seed,
232
  debug_mode
233
  ], outputs = [], queue = False, show_progress = False).success(redraw, inputs = [
@@ -239,6 +247,7 @@ with gr.Blocks() as interface:
239
  image_guidance_scale,
240
  strength,
241
  denoising_steps,
 
242
  seed,
243
  debug_mode
244
  ], outputs = [
@@ -258,6 +267,7 @@ with gr.Blocks() as interface:
258
  image_guidance_scale,
259
  strength,
260
  denoising_steps,
 
261
  seed,
262
  debug_mode
263
  ],
@@ -276,6 +286,7 @@ with gr.Blocks() as interface:
276
  1.1,
277
  0.6,
278
  1000,
 
279
  42,
280
  False
281
  ],
 
3
  import time
4
  import math
5
  import random
 
6
  import torch
7
 
8
  from diffusers import AutoPipelineForImage2Image
 
10
 
11
  max_64_bit_int = 2**63 - 1
12
 
13
+ # Automatic device detection
14
+ if torch.cuda.is_available():
15
+ device = "cuda"
16
+ floatType = torch.float16
17
+ variant = "fp16"
18
+ else:
19
+ device = "cpu"
20
+ floatType = torch.float32
21
+ variant = None
22
 
23
  pipe = AutoPipelineForImage2Image.from_pretrained("stabilityai/sdxl-turbo", torch_dtype = floatType, variant = variant)
24
  pipe = pipe.to(device)
 
29
  return seed
30
 
31
  def toggle_debug(is_debug_mode):
32
+ return [gr.update(visible = is_debug_mode)]
 
 
33
 
34
  def check(
35
  source_img,
 
41
  strength,
42
  denoising_steps,
43
  seed,
44
+ is_randomize_seed,
45
  debug_mode,
46
  progress = gr.Progress()
47
  ):
 
60
  image_guidance_scale,
61
  strength,
62
  denoising_steps,
63
+ is_randomize_seed,
64
  seed,
65
  debug_mode,
66
  progress = gr.Progress()
 
74
  image_guidance_scale,
75
  strength,
76
  denoising_steps,
77
+ is_randomize_seed,
78
  seed,
79
  debug_mode
80
  )
 
169
  minutes = minutes - (hours * 60)
170
  return [
171
  output_image,
172
+ ("Start again to get a different result. " if is_randomize_seed else "") + "The new image is " + str(output_width) + " pixels large and " + str(output_height) + " pixels high, so an image of " + f'{output_width * output_height:,}' + " pixels. The image have been generated in " + str(hours) + " h, " + str(minutes) + " min, " + str(secondes) + " sec." + limitation,
173
  input_image
174
  ]
175
 
 
180
  <p style="text-align: center;">Modifies the global render of your image, at any resolution, freely, without account, without watermark, without installation, which can be downloaded</p>
181
  <br/>
182
  <br/>
183
+ Powered by <i>SDXL Turbo</i> artificial intellingence. For illustration purpose, not information purpose. The new content is not based on real information but imagination.
184
  <br/>
185
  <ul>
186
  <li>To change the <b>view angle</b> of your image, I recommend to use <i>Zero123</i>,</li>
 
201
  )
202
  with gr.Column():
203
  source_img = gr.Image(label = "Your image", sources = ["upload", "webcam", "clipboard"], type = "pil")
204
+ prompt = gr.Textbox(label = "Prompt", info = "Describe the subject, the background and the style of image; 77 token limit", placeholder = "Describe what you want to see", lines = 2)
205
  strength = gr.Slider(value = 0.5, minimum = 0.01, maximum = 1.0, step = 0.01, label = "Strength", info = "lower=follow the original image, higher=follow the prompt")
206
  with gr.Accordion("Advanced options", open = False):
207
  negative_prompt = gr.Textbox(label = "Negative prompt", placeholder = "Describe what you do NOT want to see", value = "Ugly, malformed, noise, blur, watermark")
 
213
  seed = gr.Slider(minimum = 0, maximum = max_64_bit_int, step = 1, randomize = True, label = "Seed")
214
  debug_mode = gr.Checkbox(label = "Debug mode", value = False, info = "Show intermediate results")
215
 
216
+ submit = gr.Button("🚀 Redraw", variant = "primary")
217
 
218
  redrawn_image = gr.Image(label = "Redrawn image")
219
  information = gr.Label(label = "Information")
220
  original_image = gr.Image(label = "Original image", visible = False)
221
 
222
  submit.click(update_seed, inputs = [
223
+ randomize_seed,
224
+ seed
225
  ], outputs = [
226
  seed
227
  ], queue = False, show_progress = False).then(toggle_debug, debug_mode, [
 
235
  image_guidance_scale,
236
  strength,
237
  denoising_steps,
238
+ randomize_seed,
239
  seed,
240
  debug_mode
241
  ], outputs = [], queue = False, show_progress = False).success(redraw, inputs = [
 
247
  image_guidance_scale,
248
  strength,
249
  denoising_steps,
250
+ randomize_seed,
251
  seed,
252
  debug_mode
253
  ], outputs = [
 
267
  image_guidance_scale,
268
  strength,
269
  denoising_steps,
270
+ randomize_seed,
271
  seed,
272
  debug_mode
273
  ],
 
286
  1.1,
287
  0.6,
288
  1000,
289
+ False,
290
  42,
291
  False
292
  ],