Spaces:
Build error
Build error
File size: 1,144 Bytes
19ca011 |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 |
import cv2
from doc_ufcn.main import DocUFCN
import gradio as gr
from doc_ufcn import models
import numpy as np
import random
from PIL import Image
model_path, parameters = models.download_model('generic-page')
model = DocUFCN(len(parameters['classes']), parameters['input_size'], 'cpu')
model.load(model_path, parameters['mean'], parameters['std'])
def visualize_instance_seg_mask(mask):
image = np.zeros((mask.shape[0], mask.shape[1], 3))
labels = np.unique(mask)
label2color = {label: (random.randint(0, 1), random.randint(0, 255), random.randint(0, 255)) for label in labels}
for i in range(image.shape[0]):
for j in range(image.shape[1]):
image[i, j, :] = label2color[mask[i, j]]
image = image / 255
return image
def query_image(image):
image = cv2.cvtColor(image, cv2.COLOR_BGR2RGB)
detected_polygons, probabilities, mask, overlap = model.predict(
image, raw_output=True, mask_output=True, overlap_output=True
)
return visualize_instance_seg_mask(overlap)
demo = gr.Interface(
query_image,
inputs=[gr.Image()],
outputs="image",
title="TODO",
)
demo.launch()
|