import streamlit as st from utils import get_dataset_config_names, get_sequence_names, pretrained_models_dict, full_ref_metrics, no_ref_metrics # st.header("EVREAL - Event-based Video Reconstruction Evaluation and Analysis Library") # # paper_link = "https://arxiv.org/abs/2305.00434" # code_link = "https://github.com/ercanburak/EVREAL" # page_link = "https://ercanburak.github.io/evreal.html" # # st.markdown("Paper: " + paper_link, unsafe_allow_html=True) # st.markdown("Code: " + paper_link, unsafe_allow_html=True) # st.markdown("Page: " + paper_link, unsafe_allow_html=True) st.title("Result Analysis Tool") datasets = get_dataset_config_names("data") dataset_sequences_dict = {} for dataset in datasets: dataset_sequences_dict[dataset] = get_sequence_names("data", dataset) datasets = list(dataset_sequences_dict.keys()) pretrained_models = list(pretrained_models_dict.keys()) selected_pretrained_model_names = st.multiselect( 'Select multiple methods to compare', pretrained_models) col1, col2, col3 = st.columns(3) # A selectbox on the sidebar, for selecting dataset: with col1: selected_dataset = st.selectbox( 'Select dataset', options=datasets ) # A selectbox on the sidebar, for selecting sequence: with col2: selected_sequence = st.selectbox( 'Select sequence', options=dataset_sequences_dict[selected_dataset] ) metric_names = no_ref_metrics if selected_dataset in ["ECD_FAST", "MVSEC_NIGHT", "HDR"] else full_ref_metrics metric_names = [name.upper() for name in metric_names] selected_metric_names = st.multiselect('Select metrics to display', metric_names) other_visualizations = ["ground truth frames", "event_rates", "event_images", "histograms"] selected_viz = st.multiselect('Select other visualizations to display', other_visualizations) if not st.button('Get Results'): st.stop()