9
9
10
10
11
11
def make_demo (pipe ):
12
- def infer (edit_images , prompt , seed = 42 , randomize_seed = False , width = 1024 , height = 1024 , guidance_scale = 3.5 , control_strength = 0.5 , control_stop = 0.33 , num_inference_steps = 50 , progress = gr .Progress (track_tqdm = True )):
12
+ def infer (
13
+ edit_images ,
14
+ prompt ,
15
+ seed = 42 ,
16
+ randomize_seed = False ,
17
+ width = 1024 ,
18
+ height = 1024 ,
19
+ guidance_scale = 3.5 ,
20
+ control_strength = 0.5 ,
21
+ control_stop = 0.33 ,
22
+ num_inference_steps = 50 ,
23
+ progress = gr .Progress (track_tqdm = True ),
24
+ ):
13
25
image = edit_images ["background" ].convert ("RGB" )
14
26
mask = Image .fromarray (np .array (edit_images ["layers" ][- 1 ])[:, :, - 1 ])
15
27
if randomize_seed :
@@ -21,10 +33,10 @@ def infer(edit_images, prompt, seed=42, randomize_seed=False, width=1024, height
21
33
height = height ,
22
34
width = width ,
23
35
guidance_scale = guidance_scale ,
24
- control_strength = control_strength ,
36
+ control_strength = control_strength ,
25
37
control_stop = control_stop ,
26
38
num_inference_steps = num_inference_steps ,
27
- generator = torch .Generator ("cpu" ).manual_seed (seed )
39
+ generator = torch .Generator ("cpu" ).manual_seed (seed ),
28
40
).images [0 ]
29
41
return (image , out_image ), seed
30
42
@@ -162,24 +174,26 @@ def infer(edit_images, prompt, seed=42, randomize_seed=False, width=1024, height
162
174
with gr .Column (elem_id = "col-container" ):
163
175
# Header with gradient
164
176
with gr .Column (elem_classes = ["header-container" ]):
165
- gr .HTML ("""
177
+ gr .HTML (
178
+ """
166
179
<h1>Flex.2 Preview Inpainting OpenVINO Demo</h1>
167
- """ )
180
+ """
181
+ )
168
182
# Main interface container
169
183
with gr .Column (elem_classes = ["container" ]):
170
184
with gr .Row ():
171
185
# Left column: Input
172
186
with gr .Column (scale = 1 ):
173
187
edit_image = gr .ImageEditor (
174
- label = ' Upload and draw mask for inpainting' ,
175
- type = ' pil' ,
188
+ label = " Upload and draw mask for inpainting" ,
189
+ type = " pil" ,
176
190
sources = ["upload" , "webcam" ],
177
- image_mode = ' RGB' ,
191
+ image_mode = " RGB" ,
178
192
layers = False ,
179
193
brush = gr .Brush (colors = ["#FFFFFF" ], color_mode = "fixed" ),
180
- height = 500
194
+ height = 500 ,
181
195
)
182
-
196
+
183
197
with gr .Column (elem_classes = ["prompt-container" ]):
184
198
prompt = gr .Text (
185
199
label = "Your creative prompt" ,
@@ -188,17 +202,12 @@ def infer(edit_images, prompt, seed=42, randomize_seed=False, width=1024, height
188
202
placeholder = "Describe what you want to generate..." ,
189
203
container = True ,
190
204
)
191
-
205
+
192
206
run_button = gr .Button ("✨ Generate" , elem_classes = ["btn-primary" ])
193
207
# Right column: Output
194
208
with gr .Column (scale = 1 , elem_classes = ["result-container" ]):
195
- result = gr .ImageSlider (
196
- label = "Before & After" ,
197
- type = "pil" ,
198
- image_mode = 'RGB' ,
199
- elem_classes = ["result-animation" ]
200
- )
201
-
209
+ result = gr .ImageSlider (label = "Before & After" , type = "pil" , image_mode = "RGB" , elem_classes = ["result-animation" ])
210
+
202
211
# Advanced settings in a nice container
203
212
with gr .Column (elem_classes = ["settings-container" ]):
204
213
with gr .Accordion ("Advanced Settings" , open = False , elem_classes = ["accordion-header" ]):
@@ -212,30 +221,32 @@ def infer(edit_images, prompt, seed=42, randomize_seed=False, width=1024, height
212
221
value = 0 ,
213
222
)
214
223
randomize_seed = gr .Checkbox (label = "Randomize seed" , value = True )
215
-
224
+
216
225
with gr .Row ():
217
226
height = gr .Slider (64 , 2048 , value = 512 , step = 64 , label = "Height" )
218
227
width = gr .Slider (64 , 2048 , value = 512 , step = 64 , label = "Width" )
219
-
228
+
220
229
with gr .Row ():
221
230
guidance_scale = gr .Slider (0.0 , 20.0 , value = 3.5 , step = 0.1 , label = "Guidance Scale" )
222
231
control_strength = gr .Slider (0.0 , 1.0 , value = 0.5 , step = 0.05 , label = "Control Strength" )
223
-
232
+
224
233
with gr .Row ():
225
234
control_stop = gr .Slider (0.0 , 1.0 , value = 0.33 , step = 0.05 , label = "Control Stop" )
226
235
num_inference_steps = gr .Slider (1 , 100 , value = 20 , step = 1 , label = "Inference Steps" )
227
-
236
+
228
237
# Footer
229
- gr .HTML ("""
238
+ gr .HTML (
239
+ """
230
240
<div class="footer">
231
241
<p>Flex.2 Preview Inpainting OpenVINO Demo</p>
232
242
</div>
233
- """ )
243
+ """
244
+ )
234
245
235
246
run_button .click (
236
247
fn = infer ,
237
248
inputs = [edit_image , prompt , seed , randomize_seed , width , height , guidance_scale , control_strength , control_stop , num_inference_steps ],
238
- outputs = [result , seed ]
249
+ outputs = [result , seed ],
239
250
)
240
-
241
- return demo
251
+
252
+ return demo
0 commit comments