Spaces:
Running
Running
import streamlit as st | |
# Top down page rendering | |
st.set_page_config(page_title='Hockey Breeds v2 - Objects', layout="wide", | |
page_icon=":frame_with_picture:") | |
st.title('Hockey Breeds v2 - Objects') | |
intro = '''The first version of Hockey Breeds was fun and educational, but not useful for analyzing hockey videos. The second version is to a proof of concept | |
with the ability to recognize individual "objects" within an image, which paves the way to ultimately tracking those objects through game play.''' | |
st.markdown(intro) | |
st.subheader('Object Detection Technical Details') | |
desc = '''Hockey Breed detector v2 uses a state of the art (circa 2023) computer vision approach. | |
I used the same training images as the first version of the Hockey Breeds model, but change the ML algorithm to use YOLO object detection (YOLO v8). | |
The output will be a set of hockey objects (defined by "bounding boxes") with labels for any hockey image uploaded. | |
**Object List**: | |
1. net | |
1. stick | |
1. puck | |
1. skater | |
1. goalie | |
1. referee | |
''' | |
st.markdown(desc) | |
st.subheader("Sample") | |
st.image('src/images/samples/v2/v2-sample1-090124.png', | |
caption='Sample image with hockey objects detected') | |
st.subheader("Validation Results") | |
st.markdown('''Validation of the model\'s performance was done using 15 images not included in the training set. The model had many issues; it did poorly with detecting *pucks* and *sticks* vs backgrounds and even goalies and skaters. It did very well on detecting referees.''') | |
st.image("src/images/artifacts/confusion_matrix_v2.png", | |
caption="Confusion Matrix for Hockey Breeds v2", ) | |