Spaces:
Sleeping
Sleeping
File size: 1,925 Bytes
39debef 3170d22 0715e8c 3170d22 0715e8c 39debef 8ed86f2 3170d22 8ed86f2 3cf084f 3170d22 8ed86f2 3170d22 cf4de60 76a2d16 0715e8c 76a2d16 cf4de60 881bd74 76a2d16 3170d22 76a2d16 96b4bfb a3cfe41 3170d22 a3cfe41 3170d22 |
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 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 |
import streamlit as st
from PIL import Image
import random
import sahi.utils.file
import pandas as pd
IMAGE_TO_URL = {
'factory_pid.png' : 'https://d1afc1j4569hs1.cloudfront.net/factory-pid.png',
'plant_pid.png' : 'https://d1afc1j4569hs1.cloudfront.net/plant-pid.png',
'processing_pid.png' : 'https://d1afc1j4569hs1.cloudfront.net/processing-pid.png'
}
st.set_page_config(
page_title="P&ID Object Detection",
layout="wide",
initial_sidebar_state="expanded"
)
st.title('P&ID Object Detection')
st.subheader(' Identify valves and pumps with deep learning model ', divider='rainbow')
st.caption('Developed by Deep Drawings Co.')
col1, col2, col3 = st.columns([10, 10, 10])
with col2:
with st.expander('How to use it'):
st.markdown(
'''
1) Upload your P&ID or Select Test Diagrams π¬
2) Set Confidence Threshold π
3) Press to Perform Inference π
4) Visualize Model Predictions π
'''
)
st.write('##')
col1, col2, col3 = st.columns([10, 10, 10])
with col1:
st.markdown(f"##### Input File")
# set input image by upload
image_file = st.file_uploader("Upload your diagram", type=["pdf"])
with col2:
# set input images from examples
def slider_func(option):
option_to_id = {
'factory_pid.png' : str(1),
'plant_pid.png' : str(2),
'processing_pid.png' : str(3),
}
return option_to_id[option]
slider = st.select_slider(
'Or select from example diagrams',
options = ['factory_pid.png', 'plant_pid.png', 'processing_pid.png'],
format_func = slider_func,
value = 'processing_pid.png',
)
# visualize input image
if image_file is not None:
image = Image.open(image_file)
else:
image = sahi.utils.cv.read_image_as_pil(IMAGE_TO_URL[slider])
st.image(image, width = 400) |