mirror of
https://github.com/gradio-app/gradio.git
synced 2025-01-06 10:25:17 +08:00
6c33eed976
* changes * Delete media_data.py.isorted * fixes in other files * fixes in other files * added for grid * removed status tracker * removed status tracker * added deprecation warning * formatting
34 lines
1.1 KiB
Python
34 lines
1.1 KiB
Python
import numpy as np
|
|
import gradio as gr
|
|
|
|
def sepia(input_img, strength):
|
|
sepia_filter = strength * np.array(
|
|
[[0.393, 0.769, 0.189], [0.349, 0.686, 0.168], [0.272, 0.534, 0.131]]
|
|
) + (1-strength) * np.identity(3)
|
|
sepia_img = input_img.dot(sepia_filter.T)
|
|
sepia_img /= sepia_img.max()
|
|
return sepia_img
|
|
|
|
callback = gr.CSVLogger()
|
|
|
|
with gr.Blocks() as demo:
|
|
with gr.Row():
|
|
with gr.Column():
|
|
img_input = gr.Image()
|
|
strength = gr.Slider(0, 1, 0.5)
|
|
img_output = gr.Image()
|
|
with gr.Row():
|
|
btn = gr.Button("Flag")
|
|
|
|
# This needs to be called at some point prior to the first call to callback.flag()
|
|
callback.setup([img_input, strength, img_output], "flagged_data_points")
|
|
|
|
img_input.change(sepia, [img_input, strength], img_output)
|
|
strength.change(sepia, [img_input, strength], img_output)
|
|
|
|
# We can choose which components to flag -- in this case, we'll flag all of them
|
|
btn.click(lambda *args: callback.flag(args), [img_input, strength, img_output], None, preprocess=False)
|
|
|
|
if __name__ == "__main__":
|
|
demo.launch()
|