Lifeinhockey commited on
Commit
0884ab2
·
verified ·
1 Parent(s): f82fd7b

Update app.py

Browse files
Files changed (1) hide show
  1. app.py +1 -157
app.py CHANGED
@@ -68,10 +68,6 @@ def infer(
68
  seed=4,
69
  guidance_scale=7.5,
70
  lora_scale=0.5,
71
- # use_control_net=False, # Добавляем параметр для управления включением ControlNet
72
- # control_strength=0.5,
73
- # use_ip_adapter=False, # Добавляем параметр для управления включением Ip_Adapter
74
- # ip_adapter_scale=0.5,
75
  progress=gr.Progress(track_tqdm=True)
76
  ):
77
 
@@ -99,26 +95,14 @@ def infer(
99
  'generator': generator,
100
  }
101
 
102
- # if use_control_net: # Если ControlNet включен
103
- # params['control_net'] = True # Включаем использование ControlNet
104
- # params['control_strength'] = control_strength # Устанавливаем вес ControlNet
105
-
106
- # if use_ip_adapter: # Если Ip_Adapter включен
107
- # params['ip_adapter'] = True # Включаем использование Ip_Adapter
108
- # params['ip_adapter_scale'] = ip_adapter_scale # Устанавливаем вес Ip_Adapter
109
-
110
  return pipe(**params).images[0]
111
 
112
  examples = [
113
  "A young man in anime style. The image is characterized by high definition and resolution. Handsome, thoughtful man, attentive eyes. The man is depicted in the foreground, close-up or in the middle. High-quality images of the face, eyes, nose, lips, hands and clothes. The background and background are blurred and indistinct. The play of light and shadow is visible on the face and clothes.",
114
- "Astronaut in a jungle, cold color palette, muted colors, detailed, 8k.",
115
- "An astronaut riding a green horse.",
116
  ]
117
 
118
  examples_negative = [
119
  "blurred details, low resolution, poor image of a man's face, poor quality, artifacts, black and white image",
120
- "blurry details, low resolution, poorly defined edges",
121
- "bad face, bad quality, artifacts, low-res, black and white",
122
  ]
123
 
124
  css = """
@@ -130,15 +114,7 @@ css = """
130
 
131
  available_models = [
132
  "stable-diffusion-v1-5/stable-diffusion-v1-5",
133
- "SG161222/Realistic_Vision_V3.0_VAE",
134
  "CompVis/stable-diffusion-v1-4",
135
- "stabilityai/sdxl-turbo",
136
- "runwayml/stable-diffusion-v1-5",
137
- "sd-legacy/stable-diffusion-v1-5",
138
- "prompthero/openjourney",
139
- "stabilityai/stable-diffusion-3-medium-diffusers",
140
- "stabilityai/stable-diffusion-3.5-large",
141
- "stabilityai/stable-diffusion-3.5-large-turbo",
142
  ]
143
 
144
  with gr.Blocks(css=css) as demo:
@@ -220,134 +196,6 @@ with gr.Blocks(css=css) as demo:
220
  value=512,
221
  )
222
 
223
- # Функция для работы с ControlNet ---------------------------------------------------------------------
224
- def process_input_ControlNet(image, use_control_net, control_strength, control_mode):
225
- if use_control_net:
226
- # Логика для обработки с использованием ControlNet
227
- result = f"ControlNet активен! Режим: {control_mode}, Интенсивность: {control_strength}"
228
- else:
229
- # Логика для обработки без ControlNet
230
- result = "ControlNet отключен."
231
- return result
232
-
233
- with gr.Blocks():
234
- with gr.Row():
235
- # Чекбокс для включения/отключения ControlNet
236
- use_control_net = gr.Checkbox(
237
- label="Use ControlNet",
238
- value=False,
239
- )
240
-
241
- # Дополнительные опции для ControlNet
242
- with gr.Column(visible=False) as control_net_options:
243
- # Слайдер для настройки интенсивности
244
- control_strength = gr.Slider(
245
- label="Control Strength",
246
- minimum=0.0,
247
- maximum=1.0,
248
- value=0.5,
249
- step=0.05,
250
- )
251
-
252
- # Выпадающий список для выбора режима
253
- control_mode = gr.Dropdown(
254
- label="Control Mode",
255
- choices=[
256
- "edge_detection",
257
- "canny_edge_detection",
258
- "pose_estimation",
259
- "depth_map",
260
- "segmentation_map",
261
- "scribble_sketch",
262
- "normal_map",
263
- "hed_edge_detection",
264
- "openpose",
265
- "mlsd_line_detection",
266
- "scribble_diffusion",
267
- "semantic_segmentation",
268
- "style_transfer",
269
- "colorization",
270
- "custom_map"
271
- ],
272
- value="pose_estimation",
273
- )
274
-
275
- # Окно для загрузки изображений
276
- control_image = gr.Image(label="Upload Control Image")
277
-
278
- # Кнопка для запуска работы ControlNet
279
- run_button = gr.Button("Run")
280
-
281
- # Текстовое поле для вывода результата
282
- output = gr.Textbox(label="Output")
283
-
284
- # Логика для отображения/скрытия дополнительных опций
285
- use_control_net.change(
286
- fn=lambda x: gr.Row.update(visible=x),
287
- inputs=use_control_net,
288
- outputs=control_net_options,
289
- )
290
-
291
- # Привязка кнопки Run к функции работы с ControlNet
292
- run_button.click(
293
- fn=process_input_ControlNet,
294
- inputs=[control_image, use_control_net, control_strength, control_mode],
295
- outputs=output,
296
- )
297
-
298
- # Функция для работы с IP-adapter ----------------------------------------------------------------------------
299
- def process_input_IP_adapter(image, use_ip_adapter, ip_adapter_scale, ip_adapter_image):
300
- if use_ip_adapter:
301
- # Логика для обработки с использованием IP-adapter
302
- result = f"IP-adapter активен! Масштаб: {ip_adapter_scale}"
303
- else:
304
- # Логика для обработки без IP-adapter
305
- result = "IP-adapter отключен."
306
- return result
307
-
308
- # Создание интерфейса
309
- with gr.Blocks():
310
- with gr.Row():
311
- # Чекбокс для включения/отключения IP-adapter
312
- use_ip_adapter = gr.Checkbox(
313
- label="Use IP-adapter",
314
- value=False,
315
- )
316
-
317
- # Дополнительные опции для IP-adapter
318
- with gr.Column(visible=False) as ip_adapter_options:
319
- # Слайдер для настройки масштаба
320
- ip_adapter_scale = gr.Slider(
321
- label="IP-adapter Scale",
322
- minimum=0.0,
323
- maximum=1.0,
324
- value=0.5,
325
- step=0.05,
326
- )
327
-
328
- # Окно для загрузки изображений
329
- ip_adapter_image = gr.Image(label="Upload IP-adapter Image")
330
-
331
- # Кнопка для запуска обработки
332
- run_button = gr.Button("Run")
333
-
334
- # Текстовое поле для вывода результата
335
- output = gr.Textbox(label="Output")
336
-
337
- # Логика для отображения/скрытия дополнительных опций
338
- use_ip_adapter.change(
339
- fn=lambda x: gr.Row.update(visible=x),
340
- inputs=use_ip_adapter,
341
- outputs=ip_adapter_options,
342
- )
343
-
344
- # Привязка кнопки Run к функции работы с IP-adapter
345
- run_button.click(
346
- fn=process_input_IP_adapter,
347
- inputs=[ip_adapter_image, use_ip_adapter, ip_adapter_scale, ip_adapter_image],
348
- outputs=output,
349
- )
350
-
351
  gr.Examples(examples=examples, inputs=[prompt])
352
  gr.Examples(examples=examples_negative, inputs=[negative_prompt])
353
 
@@ -368,14 +216,10 @@ with gr.Blocks(css=css) as demo:
368
  seed,
369
  guidance_scale,
370
  lora_scale,
371
- # use_control_net,
372
- # control_strength,
373
- # use_ip_adapter,
374
- # ip_adapter_scale,
375
  ],
376
  outputs=[result],
377
  )
378
 
379
  if __name__ == "__main__":
380
  demo.launch()
381
-
 
68
  seed=4,
69
  guidance_scale=7.5,
70
  lora_scale=0.5,
 
 
 
 
71
  progress=gr.Progress(track_tqdm=True)
72
  ):
73
 
 
95
  'generator': generator,
96
  }
97
 
 
 
 
 
 
 
 
 
98
  return pipe(**params).images[0]
99
 
100
  examples = [
101
  "A young man in anime style. The image is characterized by high definition and resolution. Handsome, thoughtful man, attentive eyes. The man is depicted in the foreground, close-up or in the middle. High-quality images of the face, eyes, nose, lips, hands and clothes. The background and background are blurred and indistinct. The play of light and shadow is visible on the face and clothes.",
 
 
102
  ]
103
 
104
  examples_negative = [
105
  "blurred details, low resolution, poor image of a man's face, poor quality, artifacts, black and white image",
 
 
106
  ]
107
 
108
  css = """
 
114
 
115
  available_models = [
116
  "stable-diffusion-v1-5/stable-diffusion-v1-5",
 
117
  "CompVis/stable-diffusion-v1-4",
 
 
 
 
 
 
 
118
  ]
119
 
120
  with gr.Blocks(css=css) as demo:
 
196
  value=512,
197
  )
198
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
199
  gr.Examples(examples=examples, inputs=[prompt])
200
  gr.Examples(examples=examples_negative, inputs=[negative_prompt])
201
 
 
216
  seed,
217
  guidance_scale,
218
  lora_scale,
 
 
 
 
219
  ],
220
  outputs=[result],
221
  )
222
 
223
  if __name__ == "__main__":
224
  demo.launch()
225
+