Spaces:
Sleeping
Sleeping
from interactive_pipe import interactive_pipeline, interactive, Image | |
from typing import Tuple | |
import numpy as np | |
# Processing blocks | |
# ----------------- | |
def processing_block( | |
inp: np.ndarray, | |
amplify: float = 1., | |
context: dict = {} | |
) -> np.ndarray: | |
context["amplify"] = amplify | |
return amplify*inp | |
# Pipeline definition | |
# ------------------- | |
def pipe(inp: np.ndarray) -> Tuple[np.ndarray, np.ndarray]: | |
out = processing_block(inp) | |
return inp, out | |
# Add interactivity to the processing blocks | |
# ------------------------------------------ | |
def add_controls() -> None: | |
interactive( | |
amplify=(0.5, [0., 1.], "Amplify") | |
)(processing_block) | |
# Add interactivity to the processing blocks | |
# ------------------------------------------ | |
def launch(img: np.ndarray, backend: str = "gradio"): | |
add_controls() | |
pipe_interactive = interactive_pipeline( | |
gui=backend, | |
markdown_description=markdown_description | |
)(pipe) | |
pipe_interactive(img) | |
if __name__ == "__main__": | |
import argparse | |
parser = argparse.ArgumentParser() | |
parser.add_argument("-b", "--backend", default="gradio", | |
choices=["gradio", "qt", "mpl"], type=str) | |
parser.add_argument( | |
"-d", "--debug", action="store_true", | |
help="Debug mode (to tune difficulty and tolerance)" | |
) | |
args = parser.parse_args() | |
markdown_description = "# Code to build this app on gradio \n\n" | |
markdown_description += "```python\n"+open(__file__, 'r').read()+"```" | |
img = Image.load_image("sample.jpg") | |
launch(img, backend=args.backend) | |