Spaces:
Sleeping
Sleeping
import streamlit as st | |
import os | |
from core.ui import show_choosing_pic_bar, show_right_sidebar | |
from core.model import load_model, run_yolo_inference | |
from core.helpers import get_image_list, show_note_for_classes, show_hyperparameters | |
def main(): | |
st.set_page_config(layout="wide") | |
st.title("Vietnam Traffic Sign Deployment") | |
model = load_model() | |
st.success("Model load successfully!") | |
# Left sidebar for image selection | |
images = get_image_list() | |
img_folder = "test_dataset/images" | |
show_choosing_pic_bar(images, img_folder) | |
if "selected_image" in st.session_state: | |
selected_image = os.path.join(img_folder, st.session_state.selected_image) | |
st.subheader("๐ผ๏ธ Selected Image") | |
st.image(selected_image, caption=f"Original Image {st.session_state.selected_image}", use_container_width=True) | |
# Now create 2 columns below the Selected Image | |
middle_part, right_bar = st.columns([4, 1], gap="large") | |
# Right sidebar for thresholds | |
conf_threshold, iou_threshold, conf_show = show_right_sidebar(right_bar) | |
with middle_part: | |
st.subheader("๐ Detection Result") | |
detected_img, classes_with_conf = run_yolo_inference(model, selected_image, conf_threshold, iou_threshold, conf_show) | |
st.image(detected_img, caption="Detected Objects", use_container_width=True) | |
show_hyperparameters(conf_threshold, iou_threshold) | |
show_note_for_classes(classes_with_conf) | |
if __name__ == "__main__": | |
main() |