File size: 1,370 Bytes
deabc90 e7bac26 deabc90 e7bac26 deabc90 e7bac26 deabc90 e7bac26 56aae38 e7bac26 |
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 41 42 43 |
# https://huggingface.co/spaces/karolmajek/Detectron2-MaskRCNN/commit/0a02fceaca5ec92613aa2e8ce3b7d5e5043cbee5
try:
import detectron2
except:
import os
os.system('pip install git+https://github.com/facebookresearch/detectron2.git')
import glob
import gradio as gr
from os.path import basename
from predictor import Predictor
predictor = Predictor()
def predict(model: str, img_path: str, score_min: int):
if not model:
raise ValueError('モデルが指定されていません')
if not img_path:
return ValueError('画像が指定されていません')
return predictor.predict(model, img_path, score_min)
models = [basename(path) for path in glob.glob("models/*")]
images = glob.glob("test/*.jpg")
demo = gr.Interface(
predict,
inputs=[
gr.Dropdown(models, label="モデル", value=models[0]),
gr.Image(images[0], type='filepath', label="画像", interactive=True),
gr.Slider(0, 100, 80, label="確信度下限(%)", info='指定した確信度以上のオブジェクトのみ検出します。'),
],
outputs=[
gr.Image(label='結果'),
gr.Text(label='パイプの数'),
],
title="パイプ検出デモ",
examples=[[models[0], path, 80] for path in images],
allow_flagging='never', # 「フラグする」ボタンを非表示に
)
demo.launch()
|