szili2011 commited on
Commit
1e1e794
·
verified ·
1 Parent(s): 3632adb

Update app.py

Browse files
Files changed (1) hide show
  1. app.py +13 -6
app.py CHANGED
@@ -18,6 +18,7 @@ color_mapping = {
18
  "Sky": (135, 206, 235) # Sky Blue
19
  }
20
 
 
21
  def predict(image):
22
  # Decode the image from base64
23
  image_data = np.frombuffer(base64.b64decode(image.split(",")[1]), np.uint8)
@@ -32,6 +33,10 @@ def predict(image):
32
  generated_image = (generated_image * 255).astype(np.uint8) # Rescale to 0-255
33
  return generated_image
34
 
 
 
 
 
35
  # Create Gradio interface
36
  with gr.Blocks() as demo:
37
  gr.Markdown("<h1>Sketch to Draw Model</h1>")
@@ -39,21 +44,23 @@ with gr.Blocks() as demo:
39
  with gr.Row():
40
  with gr.Column():
41
  # Create a sketchpad for drawing
42
- canvas = gr.Sketchpad(label="Draw Here", brush_color="black")
43
  clear_btn = gr.Button("Clear")
44
  generate_btn = gr.Button("Generate Image")
45
 
46
  with gr.Column():
47
  # Create color buttons for different terrains
 
 
 
 
 
48
  for color_name, color in color_mapping.items():
49
- gr.Button(color_name, variant="primary").click(fn=lambda c=color: canvas.update(brush_color=c), inputs=None, outputs=None)
50
-
51
  output_image = gr.Image(label="Generated Image", type="numpy")
52
 
53
  # Define the actions for buttons
54
- def clear_canvas():
55
- return np.zeros((400, 400, 3), dtype=np.uint8)
56
-
57
  clear_btn.click(fn=clear_canvas, inputs=None, outputs=canvas)
58
 
59
  # Click to generate an image
 
18
  "Sky": (135, 206, 235) # Sky Blue
19
  }
20
 
21
+ # Function to predict and generate image
22
  def predict(image):
23
  # Decode the image from base64
24
  image_data = np.frombuffer(base64.b64decode(image.split(",")[1]), np.uint8)
 
33
  generated_image = (generated_image * 255).astype(np.uint8) # Rescale to 0-255
34
  return generated_image
35
 
36
+ # Function to clear the canvas
37
+ def clear_canvas():
38
+ return np.zeros((400, 400, 3), dtype=np.uint8)
39
+
40
  # Create Gradio interface
41
  with gr.Blocks() as demo:
42
  gr.Markdown("<h1>Sketch to Draw Model</h1>")
 
44
  with gr.Row():
45
  with gr.Column():
46
  # Create a sketchpad for drawing
47
+ canvas = gr.Sketchpad(label="Draw Here")
48
  clear_btn = gr.Button("Clear")
49
  generate_btn = gr.Button("Generate Image")
50
 
51
  with gr.Column():
52
  # Create color buttons for different terrains
53
+ brush_color = gr.Variable(default="black") # Variable to store brush color
54
+
55
+ def change_color(color):
56
+ brush_color.set(color) # Update the brush color
57
+
58
  for color_name, color in color_mapping.items():
59
+ gr.Button(color_name, variant="primary").click(fn=change_color, inputs=color, outputs=None)
60
+
61
  output_image = gr.Image(label="Generated Image", type="numpy")
62
 
63
  # Define the actions for buttons
 
 
 
64
  clear_btn.click(fn=clear_canvas, inputs=None, outputs=canvas)
65
 
66
  # Click to generate an image