Spaces:
Sleeping
Sleeping
Update app.py
Browse files
app.py
CHANGED
|
@@ -16,6 +16,8 @@ def edge_detection(image, threshold1, threshold2):
|
|
| 16 |
|
| 17 |
# 圖像修復功能(Inpainting)
|
| 18 |
def image_inpainting(image, mask):
|
|
|
|
|
|
|
| 19 |
mask = cv2.cvtColor(mask, cv2.COLOR_BGR2GRAY) if len(mask.shape) == 3 else mask
|
| 20 |
inpainted = cv2.inpaint(image, mask, inpaintRadius=3, flags=cv2.INPAINT_TELEA)
|
| 21 |
return inpainted
|
|
@@ -26,14 +28,21 @@ def main_interface(image, task, param1=50, param2=150, mask=None):
|
|
| 26 |
return image_segmentation(image)
|
| 27 |
elif task == "Edge Detection":
|
| 28 |
return edge_detection(image, param1, param2)
|
| 29 |
-
elif task == "Image Inpainting"
|
| 30 |
return image_inpainting(image, mask)
|
| 31 |
else:
|
| 32 |
return "Invalid Task or Missing Parameters!"
|
| 33 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 34 |
# UI 設計
|
| 35 |
with gr.Blocks() as app:
|
| 36 |
gr.Markdown("# 電腦視覺功能展示應用程式")
|
|
|
|
| 37 |
with gr.Row():
|
| 38 |
with gr.Column():
|
| 39 |
input_image = gr.Image(label="上傳圖片", type="numpy")
|
|
@@ -44,6 +53,13 @@ with gr.Blocks() as app:
|
|
| 44 |
submit_button = gr.Button("執行")
|
| 45 |
with gr.Column():
|
| 46 |
output_image = gr.Image(label="輸出結果")
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 47 |
submit_button.click(main_interface, inputs=[input_image, task, param1, param2, mask_input], outputs=output_image)
|
| 48 |
|
| 49 |
# 啟動應用程式
|
|
|
|
| 16 |
|
| 17 |
# 圖像修復功能(Inpainting)
|
| 18 |
def image_inpainting(image, mask):
|
| 19 |
+
if mask is None:
|
| 20 |
+
return "請提供遮罩圖像以執行圖像修復。"
|
| 21 |
mask = cv2.cvtColor(mask, cv2.COLOR_BGR2GRAY) if len(mask.shape) == 3 else mask
|
| 22 |
inpainted = cv2.inpaint(image, mask, inpaintRadius=3, flags=cv2.INPAINT_TELEA)
|
| 23 |
return inpainted
|
|
|
|
| 28 |
return image_segmentation(image)
|
| 29 |
elif task == "Edge Detection":
|
| 30 |
return edge_detection(image, param1, param2)
|
| 31 |
+
elif task == "Image Inpainting":
|
| 32 |
return image_inpainting(image, mask)
|
| 33 |
else:
|
| 34 |
return "Invalid Task or Missing Parameters!"
|
| 35 |
|
| 36 |
+
# 示例圖片
|
| 37 |
+
example_images = [
|
| 38 |
+
["example1.jpg", "測試圖片 1"],
|
| 39 |
+
["example2.jpg", "測試圖片 2"]
|
| 40 |
+
]
|
| 41 |
+
|
| 42 |
# UI 設計
|
| 43 |
with gr.Blocks() as app:
|
| 44 |
gr.Markdown("# 電腦視覺功能展示應用程式")
|
| 45 |
+
|
| 46 |
with gr.Row():
|
| 47 |
with gr.Column():
|
| 48 |
input_image = gr.Image(label="上傳圖片", type="numpy")
|
|
|
|
| 53 |
submit_button = gr.Button("執行")
|
| 54 |
with gr.Column():
|
| 55 |
output_image = gr.Image(label="輸出結果")
|
| 56 |
+
|
| 57 |
+
gr.Examples(
|
| 58 |
+
examples=example_images,
|
| 59 |
+
inputs=input_image,
|
| 60 |
+
label="示例圖片"
|
| 61 |
+
)
|
| 62 |
+
|
| 63 |
submit_button.click(main_interface, inputs=[input_image, task, param1, param2, mask_input], outputs=output_image)
|
| 64 |
|
| 65 |
# 啟動應用程式
|