Spaces:
Running
on
Zero
Running
on
Zero
Adds precise docstrings to main func and enables MCP server mode (#2)
Browse files- Adds precise docstrings to main func and enables MCP server mode (1e6d57814dc45e383af2b988d512a5b2771dc59e)
Co-authored-by: Sylvain Filoni <[email protected]>
app.py
CHANGED
|
@@ -146,10 +146,26 @@ def run_with_upload(
|
|
| 146 |
cy_norm: float,
|
| 147 |
):
|
| 148 |
"""
|
| 149 |
-
-
|
| 150 |
-
|
| 151 |
-
|
| 152 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 153 |
"""
|
| 154 |
if uploaded_image_path is None:
|
| 155 |
return []
|
|
@@ -317,4 +333,4 @@ with gr.Blocks(css=css) as demo:
|
|
| 317 |
demo.queue(default_concurrency_limit=1, # ≤ 1 worker per event
|
| 318 |
max_size=20) # optional: allow 20 waiting jobs
|
| 319 |
|
| 320 |
-
demo.launch(share=True)
|
|
|
|
| 146 |
cy_norm: float,
|
| 147 |
):
|
| 148 |
"""
|
| 149 |
+
Perform chain-of-zoom super-resolution on a given image, using recursive multi-scale upscaling centered on a specific point.
|
| 150 |
+
|
| 151 |
+
This function enhances a given image by progressively zooming into a specific point, using a recursive deep super-resolution model.
|
| 152 |
+
|
| 153 |
+
Args:
|
| 154 |
+
uploaded_image_path (str): Path to the input image file on disk.
|
| 155 |
+
upscale_option (str): The desired upscale factor as a string. Valid options are "1x", "2x", and "4x".
|
| 156 |
+
- "1x" means no upscaling.
|
| 157 |
+
- "2x" means 2× enlargement per zoom step.
|
| 158 |
+
- "4x" means 4× enlargement per zoom step.
|
| 159 |
+
cx_norm (float): Normalized X-coordinate (0 to 1) of the zoom center.
|
| 160 |
+
cy_norm (float): Normalized Y-coordinate (0 to 1) of the zoom center.
|
| 161 |
+
|
| 162 |
+
Returns:
|
| 163 |
+
list[PIL.Image.Image]: A list of progressively zoomed-in and super-resolved images at each recursion step (typically 4),
|
| 164 |
+
centered around the user-specified point.
|
| 165 |
+
|
| 166 |
+
Note:
|
| 167 |
+
The center point is repeated for each recursion level to maintain consistency during zooming.
|
| 168 |
+
This function uses a modified version of the `recursive_multiscale_sr` pipeline for inference.
|
| 169 |
"""
|
| 170 |
if uploaded_image_path is None:
|
| 171 |
return []
|
|
|
|
| 333 |
demo.queue(default_concurrency_limit=1, # ≤ 1 worker per event
|
| 334 |
max_size=20) # optional: allow 20 waiting jobs
|
| 335 |
|
| 336 |
+
demo.launch(share=True, mcp_server=True)
|