MLap commited on
Commit
31c66c0
Β·
verified Β·
1 Parent(s): 18b301b

Update app.py

Browse files
Files changed (1) hide show
  1. app.py +29 -17
app.py CHANGED
@@ -1,3 +1,7 @@
 
 
 
 
1
  import gradio as gr
2
  import numpy as np
3
  import tempfile
@@ -17,15 +21,18 @@ def apply_enhancements(image, contrast, sharpness, brightness, saturation, upsca
17
 
18
  enhanced = original.copy()
19
 
 
20
  if upscale != 1.0:
21
  w, h = enhanced.size
22
  enhanced = enhanced.resize((int(w * upscale), int(h * upscale)), Image.LANCZOS)
23
 
 
24
  enhanced = ImageEnhance.Contrast(enhanced).enhance(contrast)
25
  enhanced = ImageEnhance.Brightness(enhanced).enhance(brightness)
26
  enhanced = ImageEnhance.Color(enhanced).enhance(saturation)
27
  enhanced = ImageEnhance.Sharpness(enhanced).enhance(sharpness)
28
 
 
29
  if blur_radius > 0:
30
  enhanced = enhanced.filter(ImageFilter.GaussianBlur(radius=blur_radius))
31
 
@@ -48,28 +55,33 @@ def save_enhanced(image, contrast, sharpness, brightness, saturation, upscale, b
48
 
49
 
50
  with gr.Blocks(title="Image Enhancement Lab") as demo:
51
- gr.Markdown("# Image Enhancement Lab")
52
- gr.Markdown("Upload an image and adjust sliders.")
53
 
54
  with gr.Row():
55
- with gr.Column():
56
- image_input = gr.Image(type="numpy")
 
 
 
 
 
 
 
 
 
57
 
58
- contrast = gr.Slider(0.1, 3.0, 1.0)
59
- brightness = gr.Slider(0.1, 3.0, 1.0)
60
- saturation = gr.Slider(0.0, 3.0, 1.0)
61
- sharpness = gr.Slider(0.0, 5.0, 1.0)
62
- upscale = gr.Slider(0.25, 4.0, 1.0)
63
- blur = gr.Slider(0.0, 10.0, 0.0)
64
 
65
- apply_btn = gr.Button("Apply")
66
- save_btn = gr.Button("Download")
67
 
68
- download = gr.File(visible=True)
69
 
70
- with gr.Column():
71
- original_out = gr.Image()
72
- enhanced_out = gr.Image()
73
 
74
  inputs = [image_input, contrast, sharpness, brightness, saturation, upscale, blur]
75
 
@@ -77,6 +89,6 @@ with gr.Blocks(title="Image Enhancement Lab") as demo:
77
  save_btn.click(save_enhanced, inputs, download)
78
 
79
 
80
- # πŸš€ REQUIRED for Spaces
81
  demo.queue()
82
  demo.launch()
 
1
+ """
2
+ Image Enhancement Lab β€” Gradio (Spaces-ready, labeled sliders)
3
+ """
4
+
5
  import gradio as gr
6
  import numpy as np
7
  import tempfile
 
21
 
22
  enhanced = original.copy()
23
 
24
+ # Upscale
25
  if upscale != 1.0:
26
  w, h = enhanced.size
27
  enhanced = enhanced.resize((int(w * upscale), int(h * upscale)), Image.LANCZOS)
28
 
29
+ # Enhancements
30
  enhanced = ImageEnhance.Contrast(enhanced).enhance(contrast)
31
  enhanced = ImageEnhance.Brightness(enhanced).enhance(brightness)
32
  enhanced = ImageEnhance.Color(enhanced).enhance(saturation)
33
  enhanced = ImageEnhance.Sharpness(enhanced).enhance(sharpness)
34
 
35
+ # Blur
36
  if blur_radius > 0:
37
  enhanced = enhanced.filter(ImageFilter.GaussianBlur(radius=blur_radius))
38
 
 
55
 
56
 
57
  with gr.Blocks(title="Image Enhancement Lab") as demo:
58
+ gr.Markdown("# πŸ–ΌοΈ Image Enhancement Lab")
59
+ gr.Markdown("Upload an image and adjust sliders to enhance it.")
60
 
61
  with gr.Row():
62
+ with gr.Column(scale=1):
63
+ image_input = gr.Image(label="Upload Image", type="numpy")
64
+
65
+ gr.Markdown("### 🎨 Color Adjustments")
66
+ contrast = gr.Slider(0.1, 3.0, 1.0, label="Contrast (1.0 = original)")
67
+ brightness = gr.Slider(0.1, 3.0, 1.0, label="Brightness (1.0 = original)")
68
+ saturation = gr.Slider(0.0, 3.0, 1.0, label="Saturation (0 = grayscale)")
69
+
70
+ gr.Markdown("### πŸ” Detail Controls")
71
+ sharpness = gr.Slider(0.0, 5.0, 1.0, label="Sharpness (0 = blurry)")
72
+ blur = gr.Slider(0.0, 10.0, 0.0, label="Gaussian Blur Radius")
73
 
74
+ gr.Markdown("### πŸ“ Size Control")
75
+ upscale = gr.Slider(0.25, 4.0, 1.0, label="Upscale Factor")
 
 
 
 
76
 
77
+ apply_btn = gr.Button("Apply Enhancements")
78
+ save_btn = gr.Button("Download Enhanced Image")
79
 
80
+ download = gr.File(label="Download File", visible=True)
81
 
82
+ with gr.Column(scale=2):
83
+ original_out = gr.Image(label="Original Image")
84
+ enhanced_out = gr.Image(label="Enhanced Image")
85
 
86
  inputs = [image_input, contrast, sharpness, brightness, saturation, upscale, blur]
87
 
 
89
  save_btn.click(save_enhanced, inputs, download)
90
 
91
 
92
+ # Required for Hugging Face Spaces
93
  demo.queue()
94
  demo.launch()