|
from transformers import pipeline |
|
import gradio as gr |
|
import numpy as np |
|
|
|
|
|
def predict(image): |
|
result = pipe(image) |
|
return image, [ |
|
( |
|
np.array(subsection["mask"]) / 255, |
|
subsection["label"], |
|
) |
|
for subsection in result |
|
] |
|
|
|
|
|
pipe = pipeline( |
|
"image-segmentation", |
|
model="SatwikKambham/segformer-b0-finetuned-suim", |
|
) |
|
demo = gr.Interface( |
|
fn=predict, |
|
inputs=gr.Image( |
|
type="pil", |
|
height=400, |
|
), |
|
outputs=gr.AnnotatedImage( |
|
color_map={ |
|
"Background (waterbody)": "#000000", |
|
"Human divers": "#0000FF", |
|
"Aquatic plants and sea-grass": "#00FF00", |
|
"Wrecks and ruins": "#FF0000", |
|
"Robots (AUVs/ROVs/instruments)": "#FFFF00", |
|
"Reefs and invertebrates": "#00FFFF", |
|
"Fish and vertebrates": "#FF00FF", |
|
"Sea-floor and rocks": "#FFFFFF", |
|
}, |
|
height=400, |
|
), |
|
examples="examples", |
|
) |
|
|
|
demo.launch() |
|
|