3v324v23's picture
modify prediction method, add webcam and image prediction
c32983a
import streamlit as st
from streamlit_option_menu import option_menu
from streamlit_webrtc import webrtc_streamer, VideoTransformerBase
from prediction import predict_emotion
import prediction
import eda
import model_result
st.sidebar.header("Emotion Classification")
st.title("Facial Emotion Classification")
class EmotionDetectionTransformer(VideoTransformerBase):
def transform(self, frame):
annotated_frame = predict_emotion(frame)
return annotated_frame
def main():
st.title('Emotion Detection App')
st.write("Press Start")
webrtc_streamer(key="example", video_processor_factory=EmotionDetectionTransformer)
with st.sidebar:
st.write("Ediashta Revindra - FTDS-020")
selected = option_menu(
"Menu",
[
"Distribution",
"Image Sample",
"Model Result",
"Webcam Classification",
"Image Classification"
],
icons=["bar-chart", "link-45deg", "code-square"],
menu_icon="cast",
default_index=0,
)
if selected == "Distribution":
eda.distribution()
elif selected == "Image Sample":
eda.samples()
elif selected == "Model Result":
model_result.report()
elif selected == "Webcam Classification":
main() # Call the main function for emotion detection
elif selected == "Image Classification":
prediction.image_prediction()