nateraw commited on
Commit
b2322b1
·
1 Parent(s): ecb0e11

Synced repo using 'sync_with_huggingface' Github Action

Browse files
Files changed (2) hide show
  1. app.py +46 -0
  2. requirements.txt +2 -0
app.py ADDED
@@ -0,0 +1,46 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ import pandas as pd
2
+ import streamlit as st
3
+
4
+
5
+ URL_BASE = "https://drivendata-competition-meta-vsc-data-us.s3.us-west-2.amazonaws.com"
6
+ URL_GROUND_TRUTH_FILE = f"{URL_BASE}/train/train_descriptor_ground_truth.csv"
7
+ URL_QUERY_BASE = f"{URL_BASE}/train/query/"
8
+ URL_REF_BASE = f"{URL_BASE}/train/reference/"
9
+
10
+
11
+ @st.cache
12
+ def load_data():
13
+ df = pd.read_csv(URL_GROUND_TRUTH_FILE)
14
+ query_ids = df.query_id.unique().tolist()
15
+ ref_ids = df.ref_id.unique().tolist()
16
+
17
+ query_to_refs = {x: [] for x in query_ids}
18
+ ref_to_queries = {x: [] for x in ref_ids}
19
+ for _, row in df.iterrows():
20
+ query_to_refs[row.query_id].append(row.ref_id)
21
+ ref_to_queries[row.ref_id].append(row.query_id)
22
+ return query_to_refs, ref_to_queries
23
+
24
+
25
+ st.title("Video Similarity Challenge Ground Truth Visualizer")
26
+
27
+ q_to_r, r_to_q = load_data()
28
+
29
+ with st.sidebar:
30
+ search_by = st.selectbox("Search By:", ["query", "reference"])
31
+ chosen_val = st.selectbox("Select ID:", q_to_r.keys() if search_by == "query" else r_to_q.keys())
32
+
33
+ results_by = "reference" if search_by == "query" else "query"
34
+ search_url = URL_QUERY_BASE if search_by == "query" else URL_REF_BASE
35
+ results_url = URL_REF_BASE if search_by == "query" else URL_QUERY_BASE
36
+
37
+ col1, col2 = st.columns(2)
38
+
39
+ with col1:
40
+ st.write(f"{search_by.title()} ID: {chosen_val}")
41
+ st.video(f"{search_url}{chosen_val}.mp4")
42
+
43
+ with col2:
44
+ for i, vid in enumerate(q_to_r[chosen_val] if search_by == "query" else r_to_q[chosen_val]):
45
+ st.write(f"{results_by.title()} ID: {vid}")
46
+ st.video(f"{results_url}{vid}.mp4")
requirements.txt ADDED
@@ -0,0 +1,2 @@
 
 
 
1
+ streamlit
2
+ pandas