Spaces:
Running
Running
File size: 2,177 Bytes
57d7ed3 9acc552 57d7ed3 9acc552 99cd14f 9acc552 57d7ed3 99cd14f 9acc552 57d7ed3 f0adec0 99cd14f f0adec0 99cd14f f0adec0 99cd14f 57d7ed3 99cd14f 3733e70 0f2d9f6 57d7ed3 9acc552 57d7ed3 99cd14f 9acc552 5f721d1 57d7ed3 99cd14f |
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 |
import sys
import os.path as osp
import streamlit as st
root_path = osp.abspath(osp.join(__file__, osp.pardir))
sys.path.append(root_path)
from registry_utils import import_registered_modules
from app_utils import (
is_image,
is_video,
process_image_and_vizualize_data,
process_video_and_visualize_data,
set_frames_processed_count_placeholder,
set_input_image_on_ui,
set_input_video_on_ui,
set_page_info,
set_sidebar_info,
)
import_registered_modules()
def main():
cols = set_page_info()
uploaded_file, pupil_selection, tv_model, blink_detection = set_sidebar_info()
if uploaded_file is not None:
file_extension = uploaded_file.name.split(".")[-1]
st.session_state["file_extension"] = file_extension
if is_image(file_extension):
input_img = set_input_image_on_ui(uploaded_file, cols)
st.session_state["input_img"] = input_img
elif is_video(file_extension):
video_frames, video_path = set_input_video_on_ui(uploaded_file, cols)
st.session_state["video_frames"] = video_frames
st.session_state["video_path"] = video_path
set_frames_processed_count_placeholder(cols)
if st.sidebar.button("Predict Diameter & Compute CAM"):
if uploaded_file is None:
st.sidebar.error("Please upload an image or video")
else:
with st.spinner("Analyzing..."):
if is_image(st.session_state.get("file_extension")):
input_img = st.session_state.get("input_img")
process_image_and_vizualize_data(cols, input_img, tv_model, pupil_selection, blink_detection)
elif is_video(st.session_state.get("file_extension")):
video_frames = st.session_state.get("video_frames")
video_path = st.session_state.get("video_path")
process_video_and_visualize_data(
cols, video_frames, tv_model, pupil_selection, blink_detection, video_path
)
if __name__ == "__main__":
main()
# run: streamlit run app.py --server.enableXsrfProtection false
|