Mr.Blue commited on
Commit
c422be7
·
1 Parent(s): e516e16

deploy demo

Browse files
This view is limited to 50 files because it contains too many changes.   See raw diff
Files changed (50) hide show
  1. app.py +233 -0
  2. demo.jsonl +71 -0
  3. requirements.txt +4 -0
  4. states/017e51bff537023f_4_0.jpg +0 -0
  5. states/017e51bff537023f_4_1.jpg +0 -0
  6. states/017e51bff537023f_4_2.jpg +0 -0
  7. states/017e51bff537023f_4_3.jpg +0 -0
  8. states/03de4c6c61ebf065_3_0.jpg +0 -0
  9. states/03de4c6c61ebf065_3_1.jpg +0 -0
  10. states/03de4c6c61ebf065_3_2.jpg +0 -0
  11. states/07f0e2f3f60aa981_5_0.jpg +0 -0
  12. states/07f0e2f3f60aa981_5_1.jpg +0 -0
  13. states/07f0e2f3f60aa981_5_2.jpg +0 -0
  14. states/07f0e2f3f60aa981_5_3.jpg +0 -0
  15. states/07f0e2f3f60aa981_5_4.jpg +0 -0
  16. states/08a2828cf7cdd021_3_0.jpg +0 -0
  17. states/08a2828cf7cdd021_3_1.jpg +0 -0
  18. states/08a2828cf7cdd021_3_2.jpg +0 -0
  19. states/107811ed26be4b12_6_0.jpg +0 -0
  20. states/107811ed26be4b12_6_1.jpg +0 -0
  21. states/107811ed26be4b12_6_2.jpg +0 -0
  22. states/107811ed26be4b12_6_3.jpg +0 -0
  23. states/107811ed26be4b12_6_4.jpg +0 -0
  24. states/107811ed26be4b12_6_5.jpg +0 -0
  25. states/1391f0a39eb7d051_6_0.jpg +0 -0
  26. states/1391f0a39eb7d051_6_1.jpg +0 -0
  27. states/1391f0a39eb7d051_6_2.jpg +0 -0
  28. states/1391f0a39eb7d051_6_3.jpg +0 -0
  29. states/1391f0a39eb7d051_6_4.jpg +0 -0
  30. states/1391f0a39eb7d051_6_5.jpg +0 -0
  31. states/148f1d5f5378b9b0_4_0.jpg +0 -0
  32. states/148f1d5f5378b9b0_4_1.jpg +0 -0
  33. states/148f1d5f5378b9b0_4_2.jpg +0 -0
  34. states/148f1d5f5378b9b0_4_3.jpg +0 -0
  35. states/1eb3e48e5d3249dd_5_0.jpg +0 -0
  36. states/1eb3e48e5d3249dd_5_1.jpg +0 -0
  37. states/1eb3e48e5d3249dd_5_2.jpg +0 -0
  38. states/1eb3e48e5d3249dd_5_3.jpg +0 -0
  39. states/1eb3e48e5d3249dd_5_4.jpg +0 -0
  40. states/1f8113e6fda95c74_3_0.jpg +0 -0
  41. states/1f8113e6fda95c74_3_1.jpg +0 -0
  42. states/1f8113e6fda95c74_3_2.jpg +0 -0
  43. states/1ff4d5e766209674_4_0.jpg +0 -0
  44. states/1ff4d5e766209674_4_1.jpg +0 -0
  45. states/1ff4d5e766209674_4_2.jpg +0 -0
  46. states/1ff4d5e766209674_4_3.jpg +0 -0
  47. states/292d3bb739fdf8c1_4_0.jpg +0 -0
  48. states/292d3bb739fdf8c1_4_1.jpg +0 -0
  49. states/292d3bb739fdf8c1_4_2.jpg +0 -0
  50. states/292d3bb739fdf8c1_4_3.jpg +0 -0
app.py ADDED
@@ -0,0 +1,233 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ from pathlib import Path
2
+ from io import BytesIO
3
+
4
+ import gradio as gr
5
+ import jsonlines
6
+ import matplotlib.image as mpimg
7
+ import matplotlib.pyplot as plt
8
+ from PIL import Image
9
+
10
+ CURRENT_DIR = Path(__file__).parent
11
+ LIST_FILE = "demo.jsonl"
12
+ STATES_ROOT = Path("states/")
13
+ REPEAT = 1
14
+ MAX_IMAGES_ROW = 6
15
+ TITLE = "VTT Demo"
16
+ START_TEXT = "Start"
17
+ PREV_TEXT = "Prev"
18
+ NEXT_TEXT = "Next"
19
+ CATEGORY_TEXT = "Category"
20
+ TOPIC_TEXT = "Topic"
21
+ TRANSFORMATIONS_TEXT = "Transformation Descriptions"
22
+
23
+
24
+ with jsonlines.open(LIST_FILE) as reader:
25
+ samples = list(reader)
26
+ samples_dict = {sample["id"]: sample for sample in samples}
27
+
28
+
29
+ def get_sample(annotation_id):
30
+ validate_annotation_id(annotation_id)
31
+ id = samples[annotation_id]["id"]
32
+ sample = samples_dict[id]
33
+ return sample
34
+
35
+
36
+ def get_texts(annotation_id):
37
+ annotation_id = validate_annotation_id(annotation_id)
38
+ sample = samples[annotation_id]
39
+ texts = [x['label'] for x in sample["annotation"]]
40
+ return texts
41
+
42
+
43
+ def get_transformations(annotation_id):
44
+ texts = get_texts(annotation_id)
45
+ return ", ".join([f"{i} -> {i+1}: {text}" for i, text in enumerate(texts)])
46
+
47
+
48
+ def show_figures(path_list, title=None, labels=None, show_indices=True):
49
+ from textwrap import wrap
50
+
51
+ n_img = len(path_list)
52
+ width, height = plt.figaspect(1)
53
+
54
+ plt.rcParams["savefig.bbox"] = "tight"
55
+ plt.rcParams["axes.linewidth"] = 0
56
+ plt.rcParams["axes.titlepad"] = 6
57
+ plt.rcParams["axes.titlesize"] = 12
58
+ plt.rcParams["font.family"] = "Helvetica"
59
+ plt.rcParams["axes.labelweight"] = "normal"
60
+ plt.rcParams["font.size"] = 12
61
+ plt.rcParams["figure.dpi"] = 100
62
+ plt.rcParams["savefig.dpi"] = 100
63
+ plt.rcParams["figure.titlesize"] = 18
64
+
65
+ # subplot(r,c) provide the no. of rows and columns
66
+
67
+ if n_img > MAX_IMAGES_ROW:
68
+ width = width / 2
69
+ height = height / 2
70
+
71
+ n_image_row = min(n_img, MAX_IMAGES_ROW)
72
+ n_row = (n_img - 1) // n_image_row + 1
73
+ fig, axarr = plt.subplots(
74
+ n_row, n_image_row, figsize=(width * n_image_row, height * n_row)
75
+ )
76
+ # use the created array to output your multiple images. In this case I have stacked 4 images vertically
77
+ for i in range(n_row * n_image_row):
78
+ # axarr[i].axis("off")
79
+ if n_row == 1:
80
+ ax = axarr[i]
81
+ else:
82
+ ax = axarr[i // n_image_row][i % n_image_row]
83
+ if i < len(path_list) and path_list[i].exists():
84
+ ax.imshow(mpimg.imread(path_list[i]))
85
+ if show_indices:
86
+ ax.set_title(f"{i}")
87
+ if labels is not None and labels[i]:
88
+ ax.set_xlabel(
89
+ "\n".join(wrap(f"{i-1}-{i}: {labels[i]}", width=width * 10))
90
+ )
91
+ ax.set_xticks([])
92
+ ax.set_yticks([])
93
+
94
+ plt.tight_layout()
95
+
96
+
97
+ def show_sample(sample, texts):
98
+ n_states = len(sample["annotation"]) + 1
99
+ state_path_list = [
100
+ STATES_ROOT / f"{sample['id']}_{n_states}_{i}.jpg"
101
+ for i in range(n_states)
102
+ ]
103
+ show_figures(
104
+ state_path_list,
105
+ labels=[""] + texts,
106
+ )
107
+
108
+
109
+ def get_image(annotation_id):
110
+ sample = get_sample(annotation_id)
111
+ buf = BytesIO()
112
+ show_sample(sample, get_texts(annotation_id))
113
+ plt.savefig(buf, format="png")
114
+ buf.seek(0)
115
+ img = Image.open(buf)
116
+ plt.close()
117
+ return img
118
+
119
+
120
+ def get_category_topic(annotation_id):
121
+ sample = get_sample(annotation_id)
122
+ return sample["category"], sample["topic"]
123
+
124
+
125
+ def validate_annotation_id(annotation_id):
126
+ annotation_id = max(0, min(int(annotation_id), len(samples) - 1))
127
+ return annotation_id
128
+
129
+
130
+ def start(annotation_id):
131
+ annotation_id = validate_annotation_id(annotation_id)
132
+ category, topic = get_category_topic(annotation_id)
133
+ image = get_image(annotation_id)
134
+ return (
135
+ category,
136
+ topic,
137
+ image,
138
+ get_transformations(annotation_id),
139
+ )
140
+
141
+
142
+ def prev_sample(annotation_id):
143
+ annotation_id = validate_annotation_id(annotation_id - 1)
144
+ category, topic = get_category_topic(annotation_id)
145
+ image = get_image(annotation_id)
146
+ return (
147
+ annotation_id,
148
+ category,
149
+ topic,
150
+ image,
151
+ get_transformations(annotation_id),
152
+ )
153
+
154
+
155
+ def next_sample(annotation_id):
156
+ annotation_id = validate_annotation_id(annotation_id + 1)
157
+ category, topic = get_category_topic(annotation_id)
158
+ image = get_image(annotation_id)
159
+ return (
160
+ annotation_id,
161
+ category,
162
+ topic,
163
+ image,
164
+ get_transformations(annotation_id),
165
+ )
166
+
167
+
168
+ def main():
169
+
170
+ with gr.Blocks(title="VTT") as demo:
171
+ gr.Markdown(f"## {TITLE}")
172
+
173
+ with gr.Row():
174
+ with gr.Column():
175
+ annotation_id = gr.Number(label="Annotation ID")
176
+ start_button = gr.Button(START_TEXT)
177
+ with gr.Row():
178
+ prev_button = gr.Button(PREV_TEXT)
179
+ next_button = gr.Button(NEXT_TEXT)
180
+ category = gr.Text(label=CATEGORY_TEXT)
181
+ topic = gr.Text(label=TOPIC_TEXT)
182
+
183
+ image = gr.Image()
184
+
185
+ transformations = gr.Text(label=TRANSFORMATIONS_TEXT)
186
+
187
+ start_button.click(
188
+ start,
189
+ inputs=[annotation_id],
190
+ outputs=[
191
+ category,
192
+ topic,
193
+ image,
194
+ transformations,
195
+ ],
196
+ )
197
+ prev_button.click(
198
+ prev_sample,
199
+ inputs=[annotation_id],
200
+ outputs=[
201
+ annotation_id,
202
+ category,
203
+ topic,
204
+ image,
205
+ transformations,
206
+ ],
207
+ )
208
+ next_button.click(
209
+ next_sample,
210
+ inputs=[annotation_id],
211
+ outputs=[
212
+ annotation_id,
213
+ category,
214
+ topic,
215
+ image,
216
+ transformations,
217
+ ],
218
+ )
219
+
220
+ # Add a hidden load button
221
+ demo.load(
222
+ None,
223
+ None,
224
+ None,
225
+ js="() => { const button = Array.from(document.querySelectorAll('button')).find(btn => btn.textContent.trim() === 'Start'); if (button) {button.click();} }"
226
+ )
227
+
228
+ # demo.launch(server_name="0.0.0.0", share=True)
229
+ demo.launch(server_name="0.0.0.0")
230
+
231
+
232
+ if __name__ == "__main__":
233
+ main()
demo.jsonl ADDED
@@ -0,0 +1,71 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ {"id": "cac63849c6260e59", "youtube_id": "8RbXzNvvqB4", "ori": "coin", "split": "test", "duration": 87, "topic": "Install Air Conditioner", "category": "Furniture and Decoration", "annotation": [{"clip_id": "cac63849c6260e59_2_0", "segment": [76.0, 99.0], "label": "install window panel"}, {"clip_id": "cac63849c6260e59_2_1", "segment": [113.0, 131.0], "label": "connect air conditioners and windows"}], "frames": {"cac63849c6260e59_2_0": {"frames": 690, "imgs": 690}, "cac63849c6260e59_2_1": {"frames": 540, "imgs": 540}}}
2
+ {"id": "2fae2bafcd77707c", "youtube_id": "5mHafjBjTP8", "ori": "cross", "split": "test", "duration": 35, "topic": "Make Banana Ice Cream", "category": "Drink and Snack", "annotation": [{"clip_id": "2fae2bafcd77707c_4_0", "segment": [12.9, 24.13], "label": "cut banana"}, {"clip_id": "2fae2bafcd77707c_4_1", "segment": [36.44, 42.63], "label": "put bananas into blender"}, {"clip_id": "2fae2bafcd77707c_4_2", "segment": [42.88, 55.41], "label": "mix ingredients"}, {"clip_id": "2fae2bafcd77707c_4_3", "segment": [83.25, 91.22], "label": "mix ingredients"}], "frames": {"2fae2bafcd77707c_4_0": {"frames": 337, "imgs": 337}, "2fae2bafcd77707c_4_1": {"frames": 186, "imgs": 186}, "2fae2bafcd77707c_4_2": {"frames": 376, "imgs": 376}, "2fae2bafcd77707c_4_3": {"frames": 239, "imgs": 239}}}
3
+ {"id": "bee737dcc644579f", "youtube_id": "aDuGUiw2MQI", "ori": "coin", "split": "test", "duration": 3, "topic": "Refill A Stapler", "category": "Gadgets", "annotation": [{"clip_id": "bee737dcc644579f_3_0", "segment": [21.0, 23.0], "label": "pull open the stapler"}, {"clip_id": "bee737dcc644579f_3_1", "segment": [24.0, 25.0], "label": "insert the stapler pins"}, {"clip_id": "bee737dcc644579f_3_2", "segment": [26.0, 27.0], "label": "close up the stapler"}], "frames": {"bee737dcc644579f_3_0": {"frames": 60, "imgs": 60}, "bee737dcc644579f_3_1": {"frames": 30, "imgs": 30}, "bee737dcc644579f_3_2": {"frames": 30, "imgs": 30}}}
4
+ {"id": "148f1d5f5378b9b0", "youtube_id": "Pvpkqh-Li6w", "ori": "coin", "split": "test", "duration": 35, "topic": "Replace Blade Of A Saw", "category": "Electrical Appliance", "annotation": [{"clip_id": "148f1d5f5378b9b0_3_0", "segment": [41.0, 57.0], "label": "turn off the balde screw"}, {"clip_id": "148f1d5f5378b9b0_3_1", "segment": [67.0, 71.0], "label": "install the new blade"}, {"clip_id": "148f1d5f5378b9b0_3_2", "segment": [72.0, 78.0], "label": "tighten the blade screw"}], "frames": {"148f1d5f5378b9b0_3_0": {"frames": 480, "imgs": 480}, "148f1d5f5378b9b0_3_1": {"frames": 120, "imgs": 120}, "148f1d5f5378b9b0_3_2": {"frames": 180, "imgs": 180}}}
5
+ {"id": "733518211efa0b7c", "youtube_id": "LdV1MTN2awM", "ori": "coin", "split": "test", "duration": 52, "topic": "Load Grease Gun", "category": "Gadgets", "annotation": [{"clip_id": "733518211efa0b7c_8_0", "segment": [38.0, 48.0], "label": "screw gun head back"}, {"clip_id": "733518211efa0b7c_8_1", "segment": [66.0, 70.0], "label": "unscrew gun head"}, {"clip_id": "733518211efa0b7c_8_2", "segment": [72.0, 74.0], "label": "pull out a lock lever at bottom of gun"}, {"clip_id": "733518211efa0b7c_8_3", "segment": [79.0, 81.0], "label": "open the lid of new container"}, {"clip_id": "733518211efa0b7c_8_4", "segment": [85.0, 89.0], "label": "put in a new grease container"}, {"clip_id": "733518211efa0b7c_8_5", "segment": [90.0, 96.0], "label": "open the lid of new container"}, {"clip_id": "733518211efa0b7c_8_6", "segment": [100.0, 107.0], "label": "screw gun head back"}, {"clip_id": "733518211efa0b7c_8_7", "segment": [117.0, 139.0], "label": "try to press gun head, spray residual old grease"}], "frames": {"733518211efa0b7c_8_0": {"frames": 250, "imgs": 250}, "733518211efa0b7c_8_1": {"frames": 100, "imgs": 100}, "733518211efa0b7c_8_2": {"frames": 50, "imgs": 50}, "733518211efa0b7c_8_3": {"frames": 50, "imgs": 50}, "733518211efa0b7c_8_4": {"frames": 100, "imgs": 100}, "733518211efa0b7c_8_5": {"frames": 150, "imgs": 150}, "733518211efa0b7c_8_6": {"frames": 175, "imgs": 175}, "733518211efa0b7c_8_7": {"frames": 550, "imgs": 550}}}
6
+ {"id": "54639b3cd7a4f772", "youtube_id": "TR_B1-WjzII", "ori": "coin", "split": "test", "duration": 14, "topic": "Smash Garlic", "category": "Dish", "annotation": [{"clip_id": "54639b3cd7a4f772_3_0", "segment": [20.0, 36.5], "label": "smash the garlics with the knife face"}, {"clip_id": "54639b3cd7a4f772_3_1", "segment": [38.0, 45.0], "label": "peel off the garlics"}, {"clip_id": "54639b3cd7a4f772_3_2", "segment": [48.0, 83.5], "label": "cut up the garlics"}], "frames": {"54639b3cd7a4f772_3_0": {"frames": 396, "imgs": 396}, "54639b3cd7a4f772_3_1": {"frames": 168, "imgs": 168}, "54639b3cd7a4f772_3_2": {"frames": 852, "imgs": 852}}}
7
+ {"id": "913a7dcb34599e0a", "youtube_id": "eQ9PwuW42Iw", "ori": "coin", "split": "test", "duration": 26, "topic": "Make Slime With Glue", "category": "Science and Craft", "annotation": [{"clip_id": "913a7dcb34599e0a_8_0", "segment": [0.0, 13.0], "label": "rub and drag the materials"}, {"clip_id": "913a7dcb34599e0a_8_1", "segment": [28.0, 45.0], "label": "add different kinds of ingredients"}, {"clip_id": "913a7dcb34599e0a_8_2", "segment": [46.0, 51.0], "label": "mix the raw materials"}, {"clip_id": "913a7dcb34599e0a_8_3", "segment": [52.0, 54.0], "label": "add different kinds of ingredients"}, {"clip_id": "913a7dcb34599e0a_8_4", "segment": [55.0, 100.0], "label": "mix the raw materials"}, {"clip_id": "913a7dcb34599e0a_8_5", "segment": [101.0, 102.0], "label": "add different kinds of ingredients"}, {"clip_id": "913a7dcb34599e0a_8_6", "segment": [103.0, 120.0], "label": "mix the raw materials"}, {"clip_id": "913a7dcb34599e0a_8_7", "segment": [121.0, 156.0], "label": "rub and drag the materials"}], "frames": {"913a7dcb34599e0a_8_0": {"frames": 390, "imgs": 390}, "913a7dcb34599e0a_8_1": {"frames": 510, "imgs": 510}, "913a7dcb34599e0a_8_2": {"frames": 150, "imgs": 150}, "913a7dcb34599e0a_8_3": {"frames": 60, "imgs": 60}, "913a7dcb34599e0a_8_4": {"frames": 1349, "imgs": 1349}, "913a7dcb34599e0a_8_5": {"frames": 30, "imgs": 30}, "913a7dcb34599e0a_8_6": {"frames": 510, "imgs": 510}, "913a7dcb34599e0a_8_7": {"frames": 1049, "imgs": 1049}}}
8
+ {"id": "ecfca5e6c771dc25", "youtube_id": "XOSRtFvIMMg", "ori": "coin", "split": "test", "duration": 19, "topic": "Make Paper Easter Baskets", "category": "Leisure and Performance", "annotation": [{"clip_id": "ecfca5e6c771dc25_2_0", "segment": [50.5, 123.0], "label": "process (crop, fold) paper"}, {"clip_id": "ecfca5e6c771dc25_2_1", "segment": [133.0, 148.5], "label": "stick handle to paper basket"}], "frames": {"ecfca5e6c771dc25_2_0": {"frames": 2173, "imgs": 2173}, "ecfca5e6c771dc25_2_1": {"frames": 465, "imgs": 465}}}
9
+ {"id": "c055d150453009fa", "youtube_id": "mK_ZIlu74YQ", "ori": "coin", "split": "test", "duration": 29, "topic": "Change Bike Tires", "category": "Vehicle", "annotation": [{"clip_id": "c055d150453009fa_5_0", "segment": [32.0, 38.0], "label": "unload the wheel"}, {"clip_id": "c055d150453009fa_5_1", "segment": [40.0, 70.0], "label": "remove the tire"}, {"clip_id": "c055d150453009fa_5_2", "segment": [78.0, 86.0], "label": "load the tire"}, {"clip_id": "c055d150453009fa_5_3", "segment": [92.0, 136.0], "label": "load the inner tube"}, {"clip_id": "c055d150453009fa_5_4", "segment": [166.0, 174.0], "label": "load the wheel"}], "frames": {"c055d150453009fa_5_0": {"frames": 180, "imgs": 180}, "c055d150453009fa_5_1": {"frames": 900, "imgs": 900}, "c055d150453009fa_5_2": {"frames": 240, "imgs": 240}, "c055d150453009fa_5_3": {"frames": 1319, "imgs": 1319}, "c055d150453009fa_5_4": {"frames": 240, "imgs": 240}}}
10
+ {"id": "374c76bf220d64be", "youtube_id": "wcpS4-D4UMQ", "ori": "coin", "split": "test", "duration": 34, "topic": "Refill A Lighter", "category": "Gadgets", "annotation": [{"clip_id": "374c76bf220d64be_4_0", "segment": [27.0, 33.0], "label": "lighten the lighter to check"}, {"clip_id": "374c76bf220d64be_4_1", "segment": [98.0, 103.0], "label": "pump up the fuel"}, {"clip_id": "374c76bf220d64be_4_2", "segment": [115.0, 125.0], "label": "press the fuel nozzle"}, {"clip_id": "374c76bf220d64be_4_3", "segment": [135.0, 137.0], "label": "lighten the lighter to check"}], "frames": {"374c76bf220d64be_4_0": {"frames": 180, "imgs": 180}, "374c76bf220d64be_4_1": {"frames": 150, "imgs": 150}, "374c76bf220d64be_4_2": {"frames": 300, "imgs": 300}, "374c76bf220d64be_4_3": {"frames": 60, "imgs": 60}}}
11
+ {"id": "ff00f5d0df9be218", "youtube_id": "wvT8Abrvx6o", "ori": "cross", "split": "test", "duration": 105, "topic": "Make Irish Coffee", "category": "Drink and Snack", "annotation": [{"clip_id": "ff00f5d0df9be218_6_0", "segment": [12.0, 13.68], "label": "pour espresso"}, {"clip_id": "ff00f5d0df9be218_6_1", "segment": [14.77, 19.77], "label": "add sugar"}, {"clip_id": "ff00f5d0df9be218_6_2", "segment": [29.62, 36.62], "label": "pour alcohol"}, {"clip_id": "ff00f5d0df9be218_6_3", "segment": [43.85, 49.74], "label": "pour alcohol"}, {"clip_id": "ff00f5d0df9be218_6_4", "segment": [55.41, 69.72], "label": "stir mixture"}, {"clip_id": "ff00f5d0df9be218_6_5", "segment": [76.62, 103.62], "label": "add whipped cream"}], "frames": {"ff00f5d0df9be218_6_0": {"frames": 42, "imgs": 42}, "ff00f5d0df9be218_6_1": {"frames": 125, "imgs": 125}, "ff00f5d0df9be218_6_2": {"frames": 175, "imgs": 175}, "ff00f5d0df9be218_6_3": {"frames": 147, "imgs": 147}, "ff00f5d0df9be218_6_4": {"frames": 358, "imgs": 358}, "ff00f5d0df9be218_6_5": {"frames": 675, "imgs": 675}}}
12
+ {"id": "c9a9d3a99ed351d5", "youtube_id": "CF6MPokyTRQ", "ori": "coin", "split": "test", "duration": 33, "topic": "Make Hummus", "category": "Drink and Snack", "annotation": [{"clip_id": "c9a9d3a99ed351d5_4_0", "segment": [27.0, 69.0], "label": "add raw materials"}, {"clip_id": "c9a9d3a99ed351d5_4_1", "segment": [70.0, 82.0], "label": "mix raw materials"}, {"clip_id": "c9a9d3a99ed351d5_4_2", "segment": [83.0, 105.0], "label": "pour bean paste into plate"}, {"clip_id": "c9a9d3a99ed351d5_4_3", "segment": [106.0, 139.0], "label": "invert seasoning"}], "frames": {"c9a9d3a99ed351d5_4_0": {"frames": 1007, "imgs": 1007}, "c9a9d3a99ed351d5_4_1": {"frames": 288, "imgs": 288}, "c9a9d3a99ed351d5_4_2": {"frames": 528, "imgs": 528}, "c9a9d3a99ed351d5_4_3": {"frames": 792, "imgs": 792}}}
13
+ {"id": "e4c6d74807c27192", "youtube_id": "VHVV6uDF408", "ori": "coin", "split": "test", "duration": 59, "topic": "Wear Contact Lenses", "category": "Nursing and Care", "annotation": [{"clip_id": "e4c6d74807c27192_3_0", "segment": [75.0, 89.0], "label": "add some cleaner to clean and wet the lenses and take out the lenses"}, {"clip_id": "e4c6d74807c27192_3_1", "segment": [92.0, 97.0], "label": "wear the contact lenses"}, {"clip_id": "e4c6d74807c27192_3_2", "segment": [99.0, 106.0], "label": "wear the contact lenses"}], "frames": {"e4c6d74807c27192_3_0": {"frames": 410, "imgs": 410}, "e4c6d74807c27192_3_1": {"frames": 147, "imgs": 147}, "e4c6d74807c27192_3_2": {"frames": 205, "imgs": 205}}}
14
+ {"id": "017e51bff537023f", "youtube_id": "2e0RfH0b2No", "ori": "coin", "split": "test", "duration": 28, "topic": "Use Triple Beam Balance", "category": "Science and Craft", "annotation": [{"clip_id": "017e51bff537023f_3_0", "segment": [0.0, 19.0], "label": "correct the balance zero"}, {"clip_id": "017e51bff537023f_3_1", "segment": [20.0, 23.0], "label": "put the sample to be measured on the balance"}, {"clip_id": "017e51bff537023f_3_2", "segment": [24.0, 114.0], "label": "put the weight until the balance is balanced"}], "frames": {"017e51bff537023f_3_0": {"frames": 570, "imgs": 570}, "017e51bff537023f_3_1": {"frames": 90, "imgs": 90}, "017e51bff537023f_3_2": {"frames": 2700, "imgs": 2700}}}
15
+ {"id": "5709c1dfff5618b3", "youtube_id": "VEsxmmhJHQg", "ori": "coin", "split": "test", "duration": 22, "topic": "Install Ceiling Fan", "category": "Electrical Appliance", "annotation": [{"clip_id": "5709c1dfff5618b3_2_0", "segment": [59.0, 115.0], "label": "install fan frame"}, {"clip_id": "5709c1dfff5618b3_2_1", "segment": [127.0, 160.0], "label": "install fans and lights"}], "frames": {"5709c1dfff5618b3_2_0": {"frames": 1680, "imgs": 1680}, "5709c1dfff5618b3_2_1": {"frames": 990, "imgs": 990}}}
16
+ {"id": "32a63380d2f20629", "youtube_id": "vxiYOEhGzX0", "ori": "coin", "split": "test", "duration": 27, "topic": "Replace CD Drive With SSD", "category": "Gadgets", "annotation": [{"clip_id": "32a63380d2f20629_2_0", "segment": [23.0, 33.0], "label": "take out the laptop CD drive"}, {"clip_id": "32a63380d2f20629_2_1", "segment": [54.0, 63.0], "label": "insert the hard disk tray into the position of the CD drive"}], "frames": {"32a63380d2f20629_2_0": {"frames": 300, "imgs": 300}, "32a63380d2f20629_2_1": {"frames": 270, "imgs": 270}}}
17
+ {"id": "3d31c157e9ef3920", "youtube_id": "Cw2pblvrQqA", "ori": "coin", "split": "test", "duration": 227, "topic": "Make RJ45 Cable", "category": "Gadgets", "annotation": [{"clip_id": "3d31c157e9ef3920_5_0", "segment": [124.0, 156.0], "label": "strip the insulation"}, {"clip_id": "3d31c157e9ef3920_5_1", "segment": [158.0, 348.0], "label": "arrange the seperated wire"}, {"clip_id": "3d31c157e9ef3920_5_2", "segment": [350.0, 370.0], "label": "cut a certain length"}, {"clip_id": "3d31c157e9ef3920_5_3", "segment": [372.0, 392.0], "label": "insert it into the crystal head"}, {"clip_id": "3d31c157e9ef3920_5_4", "segment": [394.0, 408.0], "label": "fixe it with a crimping pliers"}], "frames": {"3d31c157e9ef3920_5_0": {"frames": 960, "imgs": 960}, "3d31c157e9ef3920_5_1": {"frames": 5700, "imgs": 5700}, "3d31c157e9ef3920_5_2": {"frames": 600, "imgs": 600}, "3d31c157e9ef3920_5_3": {"frames": 600, "imgs": 600}, "3d31c157e9ef3920_5_4": {"frames": 420, "imgs": 420}}}
18
+ {"id": "292d3bb739fdf8c1", "youtube_id": "6VEPqD08syw", "ori": "coin", "split": "test", "duration": 9, "topic": "Transplant", "category": "Pets and Fruit", "annotation": [{"clip_id": "292d3bb739fdf8c1_3_0", "segment": [66.0, 71.0], "label": "take out the plant"}, {"clip_id": "292d3bb739fdf8c1_3_1", "segment": [87.5, 92.0], "label": "put in the plant"}, {"clip_id": "292d3bb739fdf8c1_3_2", "segment": [92.5, 103.0], "label": "fill with some soil"}], "frames": {"292d3bb739fdf8c1_3_0": {"frames": 150, "imgs": 150}, "292d3bb739fdf8c1_3_1": {"frames": 135, "imgs": 135}, "292d3bb739fdf8c1_3_2": {"frames": 315, "imgs": 315}}}
19
+ {"id": "bcd34700b20a6971", "youtube_id": "9IZ42IXDpuc", "ori": "coin", "split": "test", "duration": 10, "topic": "Replace Battery On Key To Car", "category": "Gadgets", "annotation": [{"clip_id": "bcd34700b20a6971_4_0", "segment": [30.0, 41.5], "label": "open the car key cover"}, {"clip_id": "bcd34700b20a6971_4_1", "segment": [53.0, 63.0], "label": "take out the car key battery"}, {"clip_id": "bcd34700b20a6971_4_2", "segment": [84.0, 91.0], "label": "put in the battery"}, {"clip_id": "bcd34700b20a6971_4_3", "segment": [91.5, 103.5], "label": "close the car key cover"}], "frames": {"bcd34700b20a6971_4_0": {"frames": 345, "imgs": 345}, "bcd34700b20a6971_4_1": {"frames": 300, "imgs": 300}, "bcd34700b20a6971_4_2": {"frames": 210, "imgs": 210}, "bcd34700b20a6971_4_3": {"frames": 360, "imgs": 360}}}
20
+ {"id": "4c7b1835ba6510ab", "youtube_id": "IdagLW3lHMY", "ori": "coin", "split": "test", "duration": 26, "topic": "Rewrap Battery", "category": "Gadgets", "annotation": [{"clip_id": "4c7b1835ba6510ab_6_0", "segment": [125.0, 173.0], "label": "remove the old wrapper"}, {"clip_id": "4c7b1835ba6510ab_6_1", "segment": [224.0, 242.0], "label": "wrap with the new wrapper"}, {"clip_id": "4c7b1835ba6510ab_6_2", "segment": [262.0, 291.0], "label": "use the air pressure gun or hair drier to flatten the wrapper"}, {"clip_id": "4c7b1835ba6510ab_6_3", "segment": [308.0, 314.0], "label": "install the insulated shim"}, {"clip_id": "4c7b1835ba6510ab_6_4", "segment": [322.0, 327.0], "label": "install the insulated shim"}, {"clip_id": "4c7b1835ba6510ab_6_5", "segment": [334.0, 373.0], "label": "use the air pressure gun or hair drier to flatten the wrapper"}], "frames": {"4c7b1835ba6510ab_6_0": {"frames": 1439, "imgs": 1439}, "4c7b1835ba6510ab_6_1": {"frames": 540, "imgs": 540}, "4c7b1835ba6510ab_6_2": {"frames": 870, "imgs": 870}, "4c7b1835ba6510ab_6_3": {"frames": 180, "imgs": 180}, "4c7b1835ba6510ab_6_4": {"frames": 150, "imgs": 150}, "4c7b1835ba6510ab_6_5": {"frames": 1169, "imgs": 1169}}}
21
+ {"id": "f6ef4fb1b5518e47", "youtube_id": "SgTAz2GUvrs", "ori": "coin", "split": "test", "duration": 15, "topic": "Use Volumetric Pipette", "category": "Science and Craft", "annotation": [{"clip_id": "f6ef4fb1b5518e47_2_0", "segment": [140.0, 147.0], "label": "absorb liquid with dropper"}, {"clip_id": "f6ef4fb1b5518e47_2_1", "segment": [170.0, 183.0], "label": "release liquid"}], "frames": {"f6ef4fb1b5518e47_2_0": {"frames": 210, "imgs": 210}, "f6ef4fb1b5518e47_2_1": {"frames": 390, "imgs": 390}}}
22
+ {"id": "70297d3bd1c1e279", "youtube_id": "DRciVgAKV8Y", "ori": "coin", "split": "test", "duration": 44, "topic": "Put On Quilt Cover", "category": "Housework", "annotation": [{"clip_id": "70297d3bd1c1e279_4_0", "segment": [1.0, 23.0], "label": "put nicely and align the quilt and the cover"}, {"clip_id": "70297d3bd1c1e279_4_1", "segment": [27.0, 44.0], "label": "roll the quilt cover and the quilt together"}, {"clip_id": "70297d3bd1c1e279_4_2", "segment": [45.0, 73.0], "label": "take out the quilt cover from another side"}, {"clip_id": "70297d3bd1c1e279_4_3", "segment": [74.0, 107.0], "label": "put and arrange nicely"}], "frames": {"70297d3bd1c1e279_4_0": {"frames": 528, "imgs": 528}, "70297d3bd1c1e279_4_1": {"frames": 408, "imgs": 408}, "70297d3bd1c1e279_4_2": {"frames": 672, "imgs": 672}, "70297d3bd1c1e279_4_3": {"frames": 792, "imgs": 792}}}
23
+ {"id": "fbe5a330822ccc09", "youtube_id": "YlgzYZQfs10", "ori": "coin", "split": "test", "duration": 18, "topic": "Replace Graphics Card", "category": "Electrical Appliance", "annotation": [{"clip_id": "fbe5a330822ccc09_3_0", "segment": [11.0, 17.0], "label": "take out the shell"}, {"clip_id": "fbe5a330822ccc09_3_1", "segment": [65.0, 96.0], "label": "install the new graphics card"}, {"clip_id": "fbe5a330822ccc09_3_2", "segment": [118.0, 137.0], "label": "fit on the shell"}], "frames": {"fbe5a330822ccc09_3_0": {"frames": 144, "imgs": 144}, "fbe5a330822ccc09_3_1": {"frames": 744, "imgs": 744}, "fbe5a330822ccc09_3_2": {"frames": 456, "imgs": 456}}}
24
+ {"id": "9329a1e52c310fc5", "youtube_id": "7wndZNQpC_E", "ori": "coin", "split": "test", "duration": 24, "topic": "Cut Cantaloupe", "category": "Pets and Fruit", "annotation": [{"clip_id": "9329a1e52c310fc5_6_0", "segment": [0.0, 14.0], "label": "peel"}, {"clip_id": "9329a1e52c310fc5_6_1", "segment": [16.0, 19.0], "label": "cut in half"}, {"clip_id": "9329a1e52c310fc5_6_2", "segment": [20.0, 27.0], "label": "dig out the seeds with spoon"}, {"clip_id": "9329a1e52c310fc5_6_3", "segment": [32.0, 35.0], "label": "slice the pulp"}, {"clip_id": "9329a1e52c310fc5_6_4", "segment": [48.0, 57.0], "label": "dig out the seeds with spoon"}, {"clip_id": "9329a1e52c310fc5_6_5", "segment": [65.0, 69.0], "label": "slice the pulp"}], "frames": {"9329a1e52c310fc5_6_0": {"frames": 420, "imgs": 420}, "9329a1e52c310fc5_6_1": {"frames": 90, "imgs": 90}, "9329a1e52c310fc5_6_2": {"frames": 210, "imgs": 210}, "9329a1e52c310fc5_6_3": {"frames": 90, "imgs": 90}, "9329a1e52c310fc5_6_4": {"frames": 270, "imgs": 270}, "9329a1e52c310fc5_6_5": {"frames": 120, "imgs": 120}}}
25
+ {"id": "dcd71b1eeb756adc", "youtube_id": "6hbEjvA40b0", "ori": "coin", "split": "test", "duration": 17, "topic": "Wrap Zongzi", "category": "Dish", "annotation": [{"clip_id": "dcd71b1eeb756adc_4_0", "segment": [13.0, 18.0], "label": "cone the leaves"}, {"clip_id": "dcd71b1eeb756adc_4_1", "segment": [19.0, 42.0], "label": "add ingredients into cone"}, {"clip_id": "dcd71b1eeb756adc_4_2", "segment": [43.0, 45.0], "label": "fold the leaves"}, {"clip_id": "dcd71b1eeb756adc_4_3", "segment": [46.0, 68.0], "label": "tie the zongzi tightly"}], "frames": {"dcd71b1eeb756adc_4_0": {"frames": 125, "imgs": 125}, "dcd71b1eeb756adc_4_1": {"frames": 575, "imgs": 575}, "dcd71b1eeb756adc_4_2": {"frames": 50, "imgs": 50}, "dcd71b1eeb756adc_4_3": {"frames": 550, "imgs": 550}}}
26
+ {"id": "52112a3bbdaf2ecd", "youtube_id": "yYFw905OKIw", "ori": "cross", "split": "test", "duration": 24, "topic": "Grill Steak", "category": "Dish", "annotation": [{"clip_id": "52112a3bbdaf2ecd_6_0", "segment": [51.35, 90.35], "label": "season steak"}, {"clip_id": "52112a3bbdaf2ecd_6_1", "segment": [101.22, 104.22], "label": "put steak on grill"}, {"clip_id": "52112a3bbdaf2ecd_6_2", "segment": [113.46, 115.56], "label": "flip steak"}, {"clip_id": "52112a3bbdaf2ecd_6_3", "segment": [124.6, 126.2], "label": "check temperature"}, {"clip_id": "52112a3bbdaf2ecd_6_4", "segment": [126.29, 128.29], "label": "take steak from grill"}, {"clip_id": "52112a3bbdaf2ecd_6_5", "segment": [138.84, 159.77], "label": "cut steak"}], "frames": {"52112a3bbdaf2ecd_6_0": {"frames": 936, "imgs": 936}, "52112a3bbdaf2ecd_6_1": {"frames": 72, "imgs": 72}, "52112a3bbdaf2ecd_6_2": {"frames": 51, "imgs": 51}, "52112a3bbdaf2ecd_6_3": {"frames": 39, "imgs": 39}, "52112a3bbdaf2ecd_6_4": {"frames": 48, "imgs": 48}, "52112a3bbdaf2ecd_6_5": {"frames": 502, "imgs": 502}}}
27
+ {"id": "f5b3745a6a06c71d", "youtube_id": "owasqBFjvzI", "ori": "coin", "split": "test", "duration": 20, "topic": "Make Coffee", "category": "Drink and Snack", "annotation": [{"clip_id": "f5b3745a6a06c71d_4_0", "segment": [8.0, 9.0], "label": "grind the coffee beans"}, {"clip_id": "f5b3745a6a06c71d_4_1", "segment": [28.0, 33.0], "label": "brew the coffee beans"}, {"clip_id": "f5b3745a6a06c71d_4_2", "segment": [34.0, 103.0], "label": "filtrate the coffee beans"}, {"clip_id": "f5b3745a6a06c71d_4_3", "segment": [140.0, 146.0], "label": "brew the coffee beans"}], "frames": {"f5b3745a6a06c71d_4_0": {"frames": 25, "imgs": 25}, "f5b3745a6a06c71d_4_1": {"frames": 125, "imgs": 125}, "f5b3745a6a06c71d_4_2": {"frames": 1725, "imgs": 1725}, "f5b3745a6a06c71d_4_3": {"frames": 150, "imgs": 150}}}
28
+ {"id": "8990978b7c71d215", "youtube_id": "swuJL2F1nyc", "ori": "coin", "split": "test", "duration": 19, "topic": "Make Sugar Coated Haws", "category": "Drink and Snack", "annotation": [{"clip_id": "8990978b7c71d215_3_0", "segment": [113.0, 148.0], "label": "string the fruit together"}, {"clip_id": "8990978b7c71d215_3_1", "segment": [161.0, 180.0], "label": "melt the sugar"}, {"clip_id": "8990978b7c71d215_3_2", "segment": [189.0, 321.0], "label": "soak sugar gourd in sugar"}], "frames": {"8990978b7c71d215_3_0": {"frames": 1015, "imgs": 1015}, "8990978b7c71d215_3_1": {"frames": 551, "imgs": 551}, "8990978b7c71d215_3_2": {"frames": 3828, "imgs": 3828}}}
29
+ {"id": "b98b2c55f905de40", "youtube_id": "viJ3ctu0rSs", "ori": "coin", "split": "test", "duration": 11, "topic": "Replace Filter For Air Purifier", "category": "Electrical Appliance", "annotation": [{"clip_id": "b98b2c55f905de40_2_0", "segment": [120.0, 124.0], "label": "take out the shell"}, {"clip_id": "b98b2c55f905de40_2_1", "segment": [132.0, 147.0], "label": "fit on the shell"}], "frames": {"b98b2c55f905de40_2_0": {"frames": 120, "imgs": 120}, "b98b2c55f905de40_2_1": {"frames": 450, "imgs": 450}}}
30
+ {"id": "5e80aff79d2b7c49", "youtube_id": "bz-qPEDe0Js", "ori": "cross", "split": "test", "duration": 38, "topic": "Make French Toast", "category": "Dish", "annotation": [{"clip_id": "5e80aff79d2b7c49_11_0", "segment": [43.08, 50.73], "label": "pour milk"}, {"clip_id": "5e80aff79d2b7c49_11_1", "segment": [57.11, 61.41], "label": "whisk mixture"}, {"clip_id": "5e80aff79d2b7c49_11_2", "segment": [74.78, 79.88], "label": "dip bread in mixture"}, {"clip_id": "5e80aff79d2b7c49_11_3", "segment": [80.97, 83.57], "label": "put bread in pan"}, {"clip_id": "5e80aff79d2b7c49_11_4", "segment": [84.77, 90.07], "label": "dip bread in mixture"}, {"clip_id": "5e80aff79d2b7c49_11_5", "segment": [91.27, 93.47], "label": "put bread in pan"}, {"clip_id": "5e80aff79d2b7c49_11_6", "segment": [94.88, 104.67], "label": "dip bread in mixture"}, {"clip_id": "5e80aff79d2b7c49_11_7", "segment": [104.87, 106.57], "label": "put bread in pan"}, {"clip_id": "5e80aff79d2b7c49_11_8", "segment": [107.72, 122.02], "label": "dip bread in mixture"}, {"clip_id": "5e80aff79d2b7c49_11_9", "segment": [122.27, 125.27], "label": "put bread in pan"}, {"clip_id": "5e80aff79d2b7c49_11_10", "segment": [130.41, 152.45], "label": "flip bread"}], "frames": {"5e80aff79d2b7c49_11_0": {"frames": 230, "imgs": 230}, "5e80aff79d2b7c49_11_1": {"frames": 129, "imgs": 129}, "5e80aff79d2b7c49_11_2": {"frames": 153, "imgs": 153}, "5e80aff79d2b7c49_11_3": {"frames": 78, "imgs": 78}, "5e80aff79d2b7c49_11_4": {"frames": 159, "imgs": 159}, "5e80aff79d2b7c49_11_5": {"frames": 66, "imgs": 66}, "5e80aff79d2b7c49_11_6": {"frames": 294, "imgs": 294}, "5e80aff79d2b7c49_11_7": {"frames": 51, "imgs": 51}, "5e80aff79d2b7c49_11_8": {"frames": 429, "imgs": 429}, "5e80aff79d2b7c49_11_9": {"frames": 90, "imgs": 90}, "5e80aff79d2b7c49_11_10": {"frames": 661, "imgs": 661}}}
31
+ {"id": "07f0e2f3f60aa981", "youtube_id": "seMxKR1_t98", "ori": "coin", "split": "test", "duration": 16, "topic": "Assemble Office Chair", "category": "Furniture and Decoration", "annotation": [{"clip_id": "07f0e2f3f60aa981_4_0", "segment": [61.0, 81.0], "label": "install the wheels for the base"}, {"clip_id": "07f0e2f3f60aa981_4_1", "segment": [90.0, 180.0], "label": "assemble the cushion and the backrest"}, {"clip_id": "07f0e2f3f60aa981_4_2", "segment": [185.0, 192.0], "label": "connect the chair and the base"}, {"clip_id": "07f0e2f3f60aa981_4_3", "segment": [192.0, 208.0], "label": "assemble the cushion and the backrest"}], "frames": {"07f0e2f3f60aa981_4_0": {"frames": 500, "imgs": 500}, "07f0e2f3f60aa981_4_1": {"frames": 2250, "imgs": 2250}, "07f0e2f3f60aa981_4_2": {"frames": 175, "imgs": 175}, "07f0e2f3f60aa981_4_3": {"frames": 400, "imgs": 400}}}
32
+ {"id": "7ab865db5c273def", "youtube_id": "5XWJIhX_KTM", "ori": "coin", "split": "test", "duration": 18, "topic": "Replace A Wiper Head", "category": "Vehicle", "annotation": [{"clip_id": "7ab865db5c273def_4_0", "segment": [39.0, 60.0], "label": "take out the old rubber sleeve from the wiper head"}, {"clip_id": "7ab865db5c273def_4_1", "segment": [62.0, 67.0], "label": "take out the blade from the old rubber sleeve"}, {"clip_id": "7ab865db5c273def_4_2", "segment": [81.0, 120.0], "label": "put the balde into the new rubber sleeve"}, {"clip_id": "7ab865db5c273def_4_3", "segment": [121.0, 160.0], "label": "put the new rubber sleeve into the wiper head"}], "frames": {"7ab865db5c273def_4_0": {"frames": 630, "imgs": 630}, "7ab865db5c273def_4_1": {"frames": 150, "imgs": 150}, "7ab865db5c273def_4_2": {"frames": 1169, "imgs": 1169}, "7ab865db5c273def_4_3": {"frames": 1169, "imgs": 1169}}}
33
+ {"id": "33dfe152b07cd665", "youtube_id": "hpx3yvJXvEU", "ori": "coin", "split": "test", "duration": 21, "topic": "Make Paper Dice", "category": "Science and Craft", "annotation": [{"clip_id": "33dfe152b07cd665_5_0", "segment": [12.0, 16.5], "label": "measure and mark"}, {"clip_id": "33dfe152b07cd665_5_1", "segment": [24.0, 27.0], "label": "put paper together"}, {"clip_id": "33dfe152b07cd665_5_2", "segment": [27.5, 28.5], "label": "fold or bent paper"}, {"clip_id": "33dfe152b07cd665_5_3", "segment": [32.0, 34.0], "label": "put paper together"}, {"clip_id": "33dfe152b07cd665_5_4", "segment": [53.0, 62.0], "label": "paint on the paper"}], "frames": {"33dfe152b07cd665_5_0": {"frames": 135, "imgs": 135}, "33dfe152b07cd665_5_1": {"frames": 90, "imgs": 90}, "33dfe152b07cd665_5_2": {"frames": 30, "imgs": 30}, "33dfe152b07cd665_5_3": {"frames": 60, "imgs": 60}, "33dfe152b07cd665_5_4": {"frames": 270, "imgs": 270}}}
34
+ {"id": "a60e5e981bf217da", "youtube_id": "ci3maurDGcE", "ori": "coin", "split": "test", "duration": 9, "topic": "Sow", "category": "Pets and Fruit", "annotation": [{"clip_id": "a60e5e981bf217da_2_0", "segment": [8.0, 125.0], "label": "sow on the soil"}, {"clip_id": "a60e5e981bf217da_2_1", "segment": [126.0, 213.0], "label": "apply a cover on the soil"}], "frames": {"a60e5e981bf217da_2_0": {"frames": 3510, "imgs": 3510}, "a60e5e981bf217da_2_1": {"frames": 2610, "imgs": 2610}}}
35
+ {"id": "5abebc2d7bf8b7ca", "youtube_id": "4sniscrcPu8", "ori": "coin", "split": "test", "duration": 19, "topic": "Install Ceramic Tile", "category": "Furniture and Decoration", "annotation": [{"clip_id": "5abebc2d7bf8b7ca_5_0", "segment": [21.0, 33.0], "label": "prepare adhesive"}, {"clip_id": "5abebc2d7bf8b7ca_5_1", "segment": [74.0, 75.0], "label": "tile the wall"}, {"clip_id": "5abebc2d7bf8b7ca_5_2", "segment": [79.0, 111.0], "label": "wipe adhesive and bedding layer"}, {"clip_id": "5abebc2d7bf8b7ca_5_3", "segment": [113.0, 133.0], "label": "tile the wall"}, {"clip_id": "5abebc2d7bf8b7ca_5_4", "segment": [151.5, 154.0], "label": "tile the wall"}], "frames": {"5abebc2d7bf8b7ca_5_0": {"frames": 288, "imgs": 288}, "5abebc2d7bf8b7ca_5_1": {"frames": 24, "imgs": 24}, "5abebc2d7bf8b7ca_5_2": {"frames": 768, "imgs": 768}, "5abebc2d7bf8b7ca_5_3": {"frames": 480, "imgs": 480}, "5abebc2d7bf8b7ca_5_4": {"frames": 60, "imgs": 60}}}
36
+ {"id": "6f7c52a2146d5890", "youtube_id": "HjrPNouP340", "ori": "coin", "split": "test", "duration": 8, "topic": "Make Orange Juice", "category": "Drink and Snack", "annotation": [{"clip_id": "6f7c52a2146d5890_2_0", "segment": [55.0, 61.0], "label": "juice the oranges"}, {"clip_id": "6f7c52a2146d5890_2_1", "segment": [79.0, 91.0], "label": "pour the orange juice into the cup"}], "frames": {"6f7c52a2146d5890_2_0": {"frames": 180, "imgs": 180}, "6f7c52a2146d5890_2_1": {"frames": 360, "imgs": 360}}}
37
+ {"id": "8534289ef0bea304", "youtube_id": "4GrhL4PnkpU", "ori": "coin", "split": "test", "duration": 15, "topic": "Paste Screen Protector On Pad", "category": "Electrical Appliance", "annotation": [{"clip_id": "8534289ef0bea304_3_0", "segment": [52.5, 70.0], "label": "wipe screen"}, {"clip_id": "8534289ef0bea304_3_1", "segment": [73.0, 175.0], "label": "paste protector on the screen"}, {"clip_id": "8534289ef0bea304_3_2", "segment": [181.5, 184.0], "label": "remove the label"}], "frames": {"8534289ef0bea304_3_0": {"frames": 525, "imgs": 525}, "8534289ef0bea304_3_1": {"frames": 3060, "imgs": 3060}, "8534289ef0bea304_3_2": {"frames": 75, "imgs": 75}}}
38
+ {"id": "2de8c05fa49345cc", "youtube_id": "5OPRXoHzAg0", "ori": "coin", "split": "test", "duration": 12, "topic": "Arc Weld", "category": "Electrical Appliance", "annotation": [{"clip_id": "2de8c05fa49345cc_2_0", "segment": [113.0, 171.0], "label": "weld along the weld line"}, {"clip_id": "2de8c05fa49345cc_2_1", "segment": [172.0, 181.0], "label": "clean weld line with a hammer"}], "frames": {"2de8c05fa49345cc_2_0": {"frames": 1739, "imgs": 1739}, "2de8c05fa49345cc_2_1": {"frames": 270, "imgs": 270}}}
39
+ {"id": "de1f867bc6203886", "youtube_id": "NLTJYBGTlYQ", "ori": "coin", "split": "test", "duration": 44, "topic": "Make Chocolate", "category": "Drink and Snack", "annotation": [{"clip_id": "de1f867bc6203886_6_0", "segment": [28.0, 53.0], "label": "add raw materials"}, {"clip_id": "de1f867bc6203886_6_1", "segment": [54.0, 57.0], "label": "mix raw materials"}, {"clip_id": "de1f867bc6203886_6_2", "segment": [62.0, 107.0], "label": "put materials into mold"}, {"clip_id": "de1f867bc6203886_6_3", "segment": [114.0, 154.0], "label": "put materials into mold"}, {"clip_id": "de1f867bc6203886_6_4", "segment": [199.0, 203.0], "label": "put materials into mold"}, {"clip_id": "de1f867bc6203886_6_5", "segment": [207.0, 218.0], "label": "take out chocolate"}], "frames": {"de1f867bc6203886_6_0": {"frames": 750, "imgs": 750}, "de1f867bc6203886_6_1": {"frames": 90, "imgs": 90}, "de1f867bc6203886_6_2": {"frames": 1349, "imgs": 1349}, "de1f867bc6203886_6_3": {"frames": 1199, "imgs": 1199}, "de1f867bc6203886_6_4": {"frames": 120, "imgs": 120}, "de1f867bc6203886_6_5": {"frames": 330, "imgs": 330}}}
40
+ {"id": "34554e3912775ca4", "youtube_id": "1TIWI2yBfBg", "ori": "coin", "split": "test", "duration": 16, "topic": "Make Flower Crown", "category": "Science and Craft", "annotation": [{"clip_id": "34554e3912775ca4_4_0", "segment": [29.0, 52.0], "label": "prepare the frame"}, {"clip_id": "34554e3912775ca4_4_1", "segment": [53.0, 107.0], "label": "stick or bind flower to the frame"}, {"clip_id": "34554e3912775ca4_4_2", "segment": [108.0, 110.0], "label": "prepare the frame"}, {"clip_id": "34554e3912775ca4_4_3", "segment": [111.0, 153.0], "label": "stick or bind flower to the frame"}], "frames": {"34554e3912775ca4_4_0": {"frames": 690, "imgs": 690}, "34554e3912775ca4_4_1": {"frames": 1620, "imgs": 1620}, "34554e3912775ca4_4_2": {"frames": 60, "imgs": 60}, "34554e3912775ca4_4_3": {"frames": 1260, "imgs": 1260}}}
41
+ {"id": "cbb7e37e83be5328", "youtube_id": "NS0PkKUEj70", "ori": "coin", "split": "test", "duration": 100, "topic": "Make Pickles", "category": "Dish", "annotation": [{"clip_id": "cbb7e37e83be5328_5_0", "segment": [0.0, 2.0], "label": "put the ingredients into the can"}, {"clip_id": "cbb7e37e83be5328_5_1", "segment": [3.0, 5.0], "label": "pour the soup in"}, {"clip_id": "cbb7e37e83be5328_5_2", "segment": [6.0, 7.0], "label": "close cans"}, {"clip_id": "cbb7e37e83be5328_5_3", "segment": [35.0, 39.0], "label": "pour the soup in"}, {"clip_id": "cbb7e37e83be5328_5_4", "segment": [44.0, 45.0], "label": "close cans"}], "frames": {"cbb7e37e83be5328_5_0": {"frames": 48, "imgs": 48}, "cbb7e37e83be5328_5_1": {"frames": 48, "imgs": 48}, "cbb7e37e83be5328_5_2": {"frames": 24, "imgs": 24}, "cbb7e37e83be5328_5_3": {"frames": 96, "imgs": 96}, "cbb7e37e83be5328_5_4": {"frames": 24, "imgs": 24}}}
42
+ {"id": "cedbb9a454c607b7", "youtube_id": "-6gGYsBHF1U", "ori": "coin", "split": "test", "duration": 15, "topic": "Make Strawberry Smoothie", "category": "Drink and Snack", "annotation": [{"clip_id": "cedbb9a454c607b7_6_0", "segment": [36.0, 40.0], "label": "put strawberries and other fruits into the juicer"}, {"clip_id": "cedbb9a454c607b7_6_1", "segment": [41.0, 42.0], "label": "put yogurt, honey and other ingredients into the juicer"}, {"clip_id": "cedbb9a454c607b7_6_2", "segment": [44.0, 51.0], "label": "shake and juice"}, {"clip_id": "cedbb9a454c607b7_6_3", "segment": [56.0, 60.0], "label": "put yogurt, honey and other ingredients into the juicer"}, {"clip_id": "cedbb9a454c607b7_6_4", "segment": [62.0, 68.0], "label": "put yogurt, honey and other ingredients into the juicer"}, {"clip_id": "cedbb9a454c607b7_6_5", "segment": [70.0, 78.0], "label": "shake and juice"}], "frames": {"cedbb9a454c607b7_6_0": {"frames": 120, "imgs": 120}, "cedbb9a454c607b7_6_1": {"frames": 30, "imgs": 30}, "cedbb9a454c607b7_6_2": {"frames": 210, "imgs": 210}, "cedbb9a454c607b7_6_3": {"frames": 120, "imgs": 120}, "cedbb9a454c607b7_6_4": {"frames": 180, "imgs": 180}, "cedbb9a454c607b7_6_5": {"frames": 240, "imgs": 240}}}
43
+ {"id": "aaf8f91ccb27510b", "youtube_id": "Wxc6xEmLJqs", "ori": "cross", "split": "test", "duration": 21, "topic": "Make Pancakes", "category": "Dish", "annotation": [{"clip_id": "aaf8f91ccb27510b_5_0", "segment": [53.29, 56.34], "label": "pour milk"}, {"clip_id": "aaf8f91ccb27510b_5_1", "segment": [56.6, 80.72], "label": "whisk mixture"}, {"clip_id": "aaf8f91ccb27510b_5_2", "segment": [107.09, 112.76], "label": "pour mixture into pan"}, {"clip_id": "aaf8f91ccb27510b_5_3", "segment": [125.53, 130.53], "label": "flip pancake"}, {"clip_id": "aaf8f91ccb27510b_5_4", "segment": [145.6, 151.16], "label": "flip pancake"}], "frames": {"aaf8f91ccb27510b_5_0": {"frames": 92, "imgs": 92}, "aaf8f91ccb27510b_5_1": {"frames": 723, "imgs": 723}, "aaf8f91ccb27510b_5_2": {"frames": 170, "imgs": 170}, "aaf8f91ccb27510b_5_3": {"frames": 150, "imgs": 150}, "aaf8f91ccb27510b_5_4": {"frames": 167, "imgs": 167}}}
44
+ {"id": "e4a2ad8f896b9794", "youtube_id": "gnlUBK-cvfc", "ori": "coin", "split": "test", "duration": 1, "topic": "Make Burger", "category": "Dish", "annotation": [{"clip_id": "e4a2ad8f896b9794_3_0", "segment": [10.0, 15.0], "label": "knead the meat"}, {"clip_id": "e4a2ad8f896b9794_3_1", "segment": [25.5, 29.0], "label": "fry meat"}, {"clip_id": "e4a2ad8f896b9794_3_2", "segment": [45.0, 55.0], "label": "combine meat and bread to make burger"}], "frames": {"e4a2ad8f896b9794_3_0": {"frames": 120, "imgs": 120}, "e4a2ad8f896b9794_3_1": {"frames": 84, "imgs": 84}, "e4a2ad8f896b9794_3_2": {"frames": 240, "imgs": 240}}}
45
+ {"id": "37ee434e9872960f", "youtube_id": "t_uVDV6D8vQ", "ori": "coin", "split": "test", "duration": 12, "topic": "Replace Hard Disk", "category": "Electrical Appliance", "annotation": [{"clip_id": "37ee434e9872960f_4_0", "segment": [17.0, 35.0], "label": "open the laptop rear cover"}, {"clip_id": "37ee434e9872960f_4_1", "segment": [39.0, 90.0], "label": "remove the old hard disk"}, {"clip_id": "37ee434e9872960f_4_2", "segment": [100.0, 168.0], "label": "install the new hard disk"}, {"clip_id": "37ee434e9872960f_4_3", "segment": [170.0, 185.0], "label": "install the laptop rear cover"}], "frames": {"37ee434e9872960f_4_0": {"frames": 540, "imgs": 540}, "37ee434e9872960f_4_1": {"frames": 1529, "imgs": 1529}, "37ee434e9872960f_4_2": {"frames": 2038, "imgs": 2038}, "37ee434e9872960f_4_3": {"frames": 450, "imgs": 450}}}
46
+ {"id": "71784be01e03e7ab", "youtube_id": "sxvEQdr4cjA", "ori": "coin", "split": "test", "duration": 19, "topic": "Change Mobile Phone Battery", "category": "Gadgets", "annotation": [{"clip_id": "71784be01e03e7ab_4_0", "segment": [21.0, 29.0], "label": "pick up the back cover of the phone with the cymbal"}, {"clip_id": "71784be01e03e7ab_4_1", "segment": [30.0, 56.0], "label": "take down the old battery"}, {"clip_id": "71784be01e03e7ab_4_2", "segment": [57.0, 62.0], "label": "load a new battery"}, {"clip_id": "71784be01e03e7ab_4_3", "segment": [63.0, 64.0], "label": "restore the fixed battery components and the back cover"}], "frames": {"71784be01e03e7ab_4_0": {"frames": 192, "imgs": 192}, "71784be01e03e7ab_4_1": {"frames": 624, "imgs": 624}, "71784be01e03e7ab_4_2": {"frames": 120, "imgs": 120}, "71784be01e03e7ab_4_3": {"frames": 24, "imgs": 24}}}
47
+ {"id": "9952638c4c9a92d5", "youtube_id": "HJ7dZJ1Facc", "ori": "coin", "split": "test", "duration": 13, "topic": "Assemble Bed", "category": "Furniture and Decoration", "annotation": [{"clip_id": "9952638c4c9a92d5_3_0", "segment": [13.0, 18.0], "label": "place the bed board"}, {"clip_id": "9952638c4c9a92d5_3_1", "segment": [36.0, 41.0], "label": "place mattress on the bed"}, {"clip_id": "9952638c4c9a92d5_3_2", "segment": [66.0, 95.0], "label": "place mattress on the bed"}], "frames": {"9952638c4c9a92d5_3_0": {"frames": 125, "imgs": 125}, "9952638c4c9a92d5_3_1": {"frames": 125, "imgs": 125}, "9952638c4c9a92d5_3_2": {"frames": 725, "imgs": 725}}}
48
+ {"id": "bd9ecdf4ec0bd507", "youtube_id": "j8sDIbRAXlg", "ori": "coin", "split": "test", "duration": 52, "topic": "Use Neti Pot", "category": "Nursing and Care", "annotation": [{"clip_id": "bd9ecdf4ec0bd507_6_0", "segment": [10.5, 14.0], "label": "add water to Neti Pot"}, {"clip_id": "bd9ecdf4ec0bd507_6_1", "segment": [15.5, 16.5], "label": "add a small amount of salt to Neti Pot"}, {"clip_id": "bd9ecdf4ec0bd507_6_2", "segment": [17.0, 19.0], "label": "shake and stir"}, {"clip_id": "bd9ecdf4ec0bd507_6_3", "segment": [28.0, 50.5], "label": "fill a nostril with saline and do the same to the other nostril"}, {"clip_id": "bd9ecdf4ec0bd507_6_4", "segment": [54.5, 56.0], "label": "wipe nose"}, {"clip_id": "bd9ecdf4ec0bd507_6_5", "segment": [58.0, 61.0], "label": "fill a nostril with saline and do the same to the other nostril"}], "frames": {"bd9ecdf4ec0bd507_6_0": {"frames": 105, "imgs": 105}, "bd9ecdf4ec0bd507_6_1": {"frames": 30, "imgs": 30}, "bd9ecdf4ec0bd507_6_2": {"frames": 60, "imgs": 60}, "bd9ecdf4ec0bd507_6_3": {"frames": 675, "imgs": 675}, "bd9ecdf4ec0bd507_6_4": {"frames": 45, "imgs": 45}, "bd9ecdf4ec0bd507_6_5": {"frames": 90, "imgs": 90}}}
49
+ {"id": "08a2828cf7cdd021", "youtube_id": "MgnlldG7mgM", "ori": "coin", "split": "test", "duration": 9, "topic": "Assemble Cabinet", "category": "Furniture and Decoration", "annotation": [{"clip_id": "08a2828cf7cdd021_2_0", "segment": [16.0, 85.0], "label": "assemble the frame"}, {"clip_id": "08a2828cf7cdd021_2_1", "segment": [120.0, 147.0], "label": "install vertical boards"}], "frames": {"08a2828cf7cdd021_2_0": {"frames": 2070, "imgs": 2070}, "08a2828cf7cdd021_2_1": {"frames": 810, "imgs": 810}}}
50
+ {"id": "ea11f47ce744b7b3", "youtube_id": "W_FdvBjwsmQ", "ori": "cross", "split": "test", "duration": 15, "topic": "Jack Up a Car", "category": "Vehicle", "annotation": [{"clip_id": "ea11f47ce744b7b3_3_0", "segment": [94.01, 96.01], "label": "brake on"}, {"clip_id": "ea11f47ce744b7b3_3_1", "segment": [175.41, 193.11], "label": "raise jack"}, {"clip_id": "ea11f47ce744b7b3_3_2", "segment": [289.08, 300.08], "label": "raise jack"}], "frames": {"ea11f47ce744b7b3_3_0": {"frames": 60, "imgs": 60}, "ea11f47ce744b7b3_3_1": {"frames": 531, "imgs": 531}, "ea11f47ce744b7b3_3_2": {"frames": 330, "imgs": 330}}}
51
+ {"id": "2e5fa498cbae264b", "youtube_id": "IMto8gJvRek", "ori": "cross", "split": "test", "duration": 29, "topic": "Make Lemonade", "category": "Drink and Snack", "annotation": [{"clip_id": "2e5fa498cbae264b_6_0", "segment": [15.03, 21.73], "label": "squeeze lemon"}, {"clip_id": "2e5fa498cbae264b_6_1", "segment": [40.79, 67.09], "label": "cut lemon"}, {"clip_id": "2e5fa498cbae264b_6_2", "segment": [120.13, 142.33], "label": "squeeze lemon"}, {"clip_id": "2e5fa498cbae264b_6_3", "segment": [169.21, 172.21], "label": "pour lemon juice"}, {"clip_id": "2e5fa498cbae264b_6_4", "segment": [180.07, 182.57], "label": "add sugar"}, {"clip_id": "2e5fa498cbae264b_6_5", "segment": [184.76, 188.96], "label": "stir mixture"}], "frames": {"2e5fa498cbae264b_6_0": {"frames": 201, "imgs": 201}, "2e5fa498cbae264b_6_1": {"frames": 789, "imgs": 789}, "2e5fa498cbae264b_6_2": {"frames": 666, "imgs": 666}, "2e5fa498cbae264b_6_3": {"frames": 90, "imgs": 90}, "2e5fa498cbae264b_6_4": {"frames": 75, "imgs": 75}, "2e5fa498cbae264b_6_5": {"frames": 126, "imgs": 126}}}
52
+ {"id": "03de4c6c61ebf065", "youtube_id": "O6ralKDWUIg", "ori": "coin", "split": "test", "duration": 11, "topic": "Make Matcha Tea", "category": "Drink and Snack", "annotation": [{"clip_id": "03de4c6c61ebf065_2_0", "segment": [13.0, 17.0], "label": "add tea powder"}, {"clip_id": "03de4c6c61ebf065_2_1", "segment": [19.0, 48.0], "label": "brew tea and stir"}], "frames": {"03de4c6c61ebf065_2_0": {"frames": 120, "imgs": 120}, "03de4c6c61ebf065_2_1": {"frames": 870, "imgs": 870}}}
53
+ {"id": "70204e12f414cb00", "youtube_id": "u4E2cAhGdBA", "ori": "coin", "split": "test", "duration": 21, "topic": "Clean Toilet", "category": "Housework", "annotation": [{"clip_id": "70204e12f414cb00_5_0", "segment": [8.0, 10.0], "label": "flush and wash the interior"}, {"clip_id": "70204e12f414cb00_5_1", "segment": [19.0, 24.0], "label": "apply detergent to the intertior of the toilet"}, {"clip_id": "70204e12f414cb00_5_2", "segment": [36.0, 39.0], "label": "scrub the toilet interior"}, {"clip_id": "70204e12f414cb00_5_3", "segment": [41.0, 47.0], "label": "flush and wash the interior"}, {"clip_id": "70204e12f414cb00_5_4", "segment": [52.0, 53.0], "label": "flush and wash the interior"}], "frames": {"70204e12f414cb00_5_0": {"frames": 60, "imgs": 60}, "70204e12f414cb00_5_1": {"frames": 150, "imgs": 150}, "70204e12f414cb00_5_2": {"frames": 90, "imgs": 90}, "70204e12f414cb00_5_3": {"frames": 180, "imgs": 180}, "70204e12f414cb00_5_4": {"frames": 30, "imgs": 30}}}
54
+ {"id": "1eb3e48e5d3249dd", "youtube_id": "D1386ibq-PA", "ori": "coin", "split": "test", "duration": 20, "topic": "Pump Up Bicycle Tire", "category": "Vehicle", "annotation": [{"clip_id": "1eb3e48e5d3249dd_4_0", "segment": [59.0, 69.0], "label": "screw off the valve cap and open the valve"}, {"clip_id": "1eb3e48e5d3249dd_4_1", "segment": [70.0, 76.0], "label": "install the air nozzle"}, {"clip_id": "1eb3e48e5d3249dd_4_2", "segment": [77.0, 101.0], "label": "pump up to the tire"}, {"clip_id": "1eb3e48e5d3249dd_4_3", "segment": [102.0, 111.0], "label": "remove the air nozzle"}], "frames": {"1eb3e48e5d3249dd_4_0": {"frames": 240, "imgs": 240}, "1eb3e48e5d3249dd_4_1": {"frames": 144, "imgs": 144}, "1eb3e48e5d3249dd_4_2": {"frames": 576, "imgs": 576}, "1eb3e48e5d3249dd_4_3": {"frames": 216, "imgs": 216}}}
55
+ {"id": "1f8113e6fda95c74", "youtube_id": "Cvym6uVKOc4", "ori": "coin", "split": "test", "duration": 17, "topic": "Make Pizza", "category": "Dish", "annotation": [{"clip_id": "1f8113e6fda95c74_2_0", "segment": [28.0, 31.0], "label": "unroll the dough"}, {"clip_id": "1f8113e6fda95c74_2_1", "segment": [34.0, 51.0], "label": "add seasoning"}], "frames": {"1f8113e6fda95c74_2_0": {"frames": 90, "imgs": 90}, "1f8113e6fda95c74_2_1": {"frames": 510, "imgs": 510}}}
56
+ {"id": "2ace788b99ba0449", "youtube_id": "tJZs3a-ZeVU", "ori": "coin", "split": "test", "duration": 18, "topic": "Prepare Canvas", "category": "Leisure and Performance", "annotation": [{"clip_id": "2ace788b99ba0449_2_0", "segment": [35.0, 139.5], "label": "pour the gesso to the canvas"}, {"clip_id": "2ace788b99ba0449_2_1", "segment": [154.0, 171.0], "label": "brush the gesso evenly"}], "frames": {"2ace788b99ba0449_2_0": {"frames": 3132, "imgs": 3132}, "2ace788b99ba0449_2_1": {"frames": 510, "imgs": 510}}}
57
+ {"id": "73e68fa3a82810b2", "youtube_id": "7uXtlI6vH9g", "ori": "cross", "split": "test", "duration": 11, "topic": "Make Kerala Fish Curry", "category": "Dish", "annotation": [{"clip_id": "73e68fa3a82810b2_6_0", "segment": [134.63, 138.3], "label": "add onion"}, {"clip_id": "73e68fa3a82810b2_6_1", "segment": [145.41, 147.61], "label": "add curry leaves"}, {"clip_id": "73e68fa3a82810b2_6_2", "segment": [156.11, 159.02], "label": "pour water"}, {"clip_id": "73e68fa3a82810b2_6_3", "segment": [177.5, 187.87], "label": "stir mixture"}, {"clip_id": "73e68fa3a82810b2_6_4", "segment": [190.63, 192.12], "label": "pour water"}, {"clip_id": "73e68fa3a82810b2_6_5", "segment": [215.02, 216.39], "label": "add curry leaves"}], "frames": {"73e68fa3a82810b2_6_0": {"frames": 110, "imgs": 110}, "73e68fa3a82810b2_6_1": {"frames": 66, "imgs": 66}, "73e68fa3a82810b2_6_2": {"frames": 88, "imgs": 88}, "73e68fa3a82810b2_6_3": {"frames": 311, "imgs": 311}, "73e68fa3a82810b2_6_4": {"frames": 45, "imgs": 45}, "73e68fa3a82810b2_6_5": {"frames": 42, "imgs": 42}}}
58
+ {"id": "e2cf4cd2924ccec2", "youtube_id": "Fyy5t-tL0xA", "ori": "cross", "split": "test", "duration": 8, "topic": "Make French Strawberry Cake", "category": "Dish", "annotation": [{"clip_id": "e2cf4cd2924ccec2_10_0", "segment": [23.87, 26.45], "label": "pour egg"}, {"clip_id": "e2cf4cd2924ccec2_10_1", "segment": [26.77, 30.94], "label": "add sugar"}, {"clip_id": "e2cf4cd2924ccec2_10_2", "segment": [32.01, 35.04], "label": "add flour"}, {"clip_id": "e2cf4cd2924ccec2_10_3", "segment": [35.5, 37.3], "label": "add butter"}, {"clip_id": "e2cf4cd2924ccec2_10_4", "segment": [37.51, 46.19], "label": "whisk mixture"}, {"clip_id": "e2cf4cd2924ccec2_10_5", "segment": [51.15, 57.33], "label": "put dough into form"}, {"clip_id": "e2cf4cd2924ccec2_10_6", "segment": [73.53, 77.66], "label": "whisk mixture"}, {"clip_id": "e2cf4cd2924ccec2_10_7", "segment": [77.96, 84.07], "label": "spread creme upon cake"}, {"clip_id": "e2cf4cd2924ccec2_10_8", "segment": [86.73, 93.53], "label": "add strawberries to cake"}, {"clip_id": "e2cf4cd2924ccec2_10_9", "segment": [94.45, 100.31], "label": "add sugar"}], "frames": {"e2cf4cd2924ccec2_10_0": {"frames": 62, "imgs": 62}, "e2cf4cd2924ccec2_10_1": {"frames": 100, "imgs": 100}, "e2cf4cd2924ccec2_10_2": {"frames": 73, "imgs": 73}, "e2cf4cd2924ccec2_10_3": {"frames": 44, "imgs": 44}, "e2cf4cd2924ccec2_10_4": {"frames": 209, "imgs": 209}, "e2cf4cd2924ccec2_10_5": {"frames": 149, "imgs": 149}, "e2cf4cd2924ccec2_10_6": {"frames": 100, "imgs": 100}, "e2cf4cd2924ccec2_10_7": {"frames": 147, "imgs": 147}, "e2cf4cd2924ccec2_10_8": {"frames": 164, "imgs": 164}, "e2cf4cd2924ccec2_10_9": {"frames": 141, "imgs": 141}}}
59
+ {"id": "1391f0a39eb7d051", "youtube_id": "Bn4ZU9go8Pk", "ori": "coin", "split": "test", "duration": 16, "topic": "Resize Watch Band", "category": "Gadgets", "annotation": [{"clip_id": "1391f0a39eb7d051_5_0", "segment": [82.0, 88.0], "label": "aim at the pin"}, {"clip_id": "1391f0a39eb7d051_5_1", "segment": [90.0, 96.0], "label": "push the pin out"}, {"clip_id": "1391f0a39eb7d051_5_2", "segment": [101.0, 111.0], "label": "aim at the pin"}, {"clip_id": "1391f0a39eb7d051_5_3", "segment": [112.0, 116.0], "label": "put the pin in"}, {"clip_id": "1391f0a39eb7d051_5_4", "segment": [117.0, 130.0], "label": "push the pin in"}], "frames": {"1391f0a39eb7d051_5_0": {"frames": 150, "imgs": 150}, "1391f0a39eb7d051_5_1": {"frames": 150, "imgs": 150}, "1391f0a39eb7d051_5_2": {"frames": 250, "imgs": 250}, "1391f0a39eb7d051_5_3": {"frames": 100, "imgs": 100}, "1391f0a39eb7d051_5_4": {"frames": 325, "imgs": 325}}}
60
+ {"id": "f655f9fe813dd824", "youtube_id": "SkexDNBkoGc", "ori": "coin", "split": "test", "duration": 10, "topic": "Patch Bike Inner Tube", "category": "Vehicle", "annotation": [{"clip_id": "f655f9fe813dd824_3_0", "segment": [14.0, 23.0], "label": "apply glue"}, {"clip_id": "f655f9fe813dd824_3_1", "segment": [33.0, 46.0], "label": "paste patch"}, {"clip_id": "f655f9fe813dd824_3_2", "segment": [87.0, 100.0], "label": "apply glue"}], "frames": {"f655f9fe813dd824_3_0": {"frames": 217, "imgs": 217}, "f655f9fe813dd824_3_1": {"frames": 313, "imgs": 313}, "f655f9fe813dd824_3_2": {"frames": 313, "imgs": 313}}}
61
+ {"id": "d680bba02c524ac0", "youtube_id": "wSll69dh_P8", "ori": "coin", "split": "test", "duration": 183, "topic": "Cook Omelet", "category": "Dish", "annotation": [{"clip_id": "d680bba02c524ac0_3_0", "segment": [21.0, 25.0], "label": "pour the egg into the bowl"}, {"clip_id": "d680bba02c524ac0_3_1", "segment": [29.0, 32.0], "label": "put seasoning in the egg"}, {"clip_id": "d680bba02c524ac0_3_2", "segment": [33.0, 36.0], "label": "stir the egg"}], "frames": {"d680bba02c524ac0_3_0": {"frames": 120, "imgs": 120}, "d680bba02c524ac0_3_1": {"frames": 90, "imgs": 90}, "d680bba02c524ac0_3_2": {"frames": 90, "imgs": 90}}}
62
+ {"id": "e7ff0ce57acdbc70", "youtube_id": "NmS9XtpkX3w", "ori": "coin", "split": "test", "duration": 42, "topic": "Paste Car Sticker", "category": "Science and Craft", "annotation": [{"clip_id": "e7ff0ce57acdbc70_7_0", "segment": [0.0, 5.0], "label": "clean the window surface"}, {"clip_id": "e7ff0ce57acdbc70_7_1", "segment": [8.0, 34.0], "label": "put the sticker on the window"}, {"clip_id": "e7ff0ce57acdbc70_7_2", "segment": [36.0, 47.0], "label": "tear off the front of the sticker"}, {"clip_id": "e7ff0ce57acdbc70_7_3", "segment": [56.0, 73.0], "label": "press the sticker"}, {"clip_id": "e7ff0ce57acdbc70_7_4", "segment": [81.0, 89.0], "label": "tear off the front of the sticker"}, {"clip_id": "e7ff0ce57acdbc70_7_5", "segment": [90.0, 127.0], "label": "press the sticker"}, {"clip_id": "e7ff0ce57acdbc70_7_6", "segment": [129.0, 192.0], "label": "tear off the other side of the sticker"}], "frames": {"e7ff0ce57acdbc70_7_0": {"frames": 150, "imgs": 150}, "e7ff0ce57acdbc70_7_1": {"frames": 780, "imgs": 780}, "e7ff0ce57acdbc70_7_2": {"frames": 330, "imgs": 330}, "e7ff0ce57acdbc70_7_3": {"frames": 510, "imgs": 510}, "e7ff0ce57acdbc70_7_4": {"frames": 240, "imgs": 240}, "e7ff0ce57acdbc70_7_5": {"frames": 1110, "imgs": 1110}, "e7ff0ce57acdbc70_7_6": {"frames": 1890, "imgs": 1890}}}
63
+ {"id": "f9c19e973886c0b8", "youtube_id": "iaZhI3RwLZo", "ori": "coin", "split": "test", "duration": 15, "topic": "Remove Crayon From Walls", "category": "Housework", "annotation": [{"clip_id": "f9c19e973886c0b8_3_0", "segment": [11.0, 56.0], "label": "apply cleaning agent"}, {"clip_id": "f9c19e973886c0b8_3_1", "segment": [59.0, 98.0], "label": "wipe wall with detergent"}, {"clip_id": "f9c19e973886c0b8_3_2", "segment": [99.0, 105.0], "label": "clean wall with a clean cloth"}], "frames": {"f9c19e973886c0b8_3_0": {"frames": 1350, "imgs": 1350}, "f9c19e973886c0b8_3_1": {"frames": 1170, "imgs": 1170}, "f9c19e973886c0b8_3_2": {"frames": 180, "imgs": 180}}}
64
+ {"id": "781d9d089dd97b39", "youtube_id": "b27Ya0szHGU", "ori": "coin", "split": "test", "duration": 48, "topic": "Paste Car Sticker", "category": "Science and Craft", "annotation": [{"clip_id": "781d9d089dd97b39_7_0", "segment": [0.0, 22.0], "label": "put the sticker on the window"}, {"clip_id": "781d9d089dd97b39_7_1", "segment": [23.0, 35.0], "label": "tear off the front of the sticker"}, {"clip_id": "781d9d089dd97b39_7_2", "segment": [36.0, 41.0], "label": "press the sticker"}, {"clip_id": "781d9d089dd97b39_7_3", "segment": [42.0, 46.0], "label": "tear off the front of the sticker"}, {"clip_id": "781d9d089dd97b39_7_4", "segment": [47.0, 52.0], "label": "press the sticker"}, {"clip_id": "781d9d089dd97b39_7_5", "segment": [57.0, 64.0], "label": "press the sticker"}, {"clip_id": "781d9d089dd97b39_7_6", "segment": [65.0, 68.0], "label": "tear off the other side of the sticker"}], "frames": {"781d9d089dd97b39_7_0": {"frames": 660, "imgs": 660}, "781d9d089dd97b39_7_1": {"frames": 360, "imgs": 360}, "781d9d089dd97b39_7_2": {"frames": 150, "imgs": 150}, "781d9d089dd97b39_7_3": {"frames": 120, "imgs": 120}, "781d9d089dd97b39_7_4": {"frames": 150, "imgs": 150}, "781d9d089dd97b39_7_5": {"frames": 210, "imgs": 210}, "781d9d089dd97b39_7_6": {"frames": 90, "imgs": 90}}}
65
+ {"id": "5b4c27af896a6539", "youtube_id": "dNaltL3uPaY", "ori": "coin", "split": "test", "duration": 20, "topic": "Make Candle", "category": "Science and Craft", "annotation": [{"clip_id": "5b4c27af896a6539_5_0", "segment": [0.0, 9.0], "label": "melt the wax with water"}, {"clip_id": "5b4c27af896a6539_5_1", "segment": [12.0, 28.0], "label": "pour the wax into the vessel"}, {"clip_id": "5b4c27af896a6539_5_2", "segment": [85.0, 89.0], "label": "pour the wax into the vessel"}, {"clip_id": "5b4c27af896a6539_5_3", "segment": [90.0, 96.0], "label": "fix the candle wick"}, {"clip_id": "5b4c27af896a6539_5_4", "segment": [97.0, 106.0], "label": "wait for the candle until concretion"}], "frames": {"5b4c27af896a6539_5_0": {"frames": 225, "imgs": 225}, "5b4c27af896a6539_5_1": {"frames": 400, "imgs": 400}, "5b4c27af896a6539_5_2": {"frames": 100, "imgs": 100}, "5b4c27af896a6539_5_3": {"frames": 150, "imgs": 150}, "5b4c27af896a6539_5_4": {"frames": 225, "imgs": 225}}}
66
+ {"id": "107811ed26be4b12", "youtube_id": "864HtkjBVc4", "ori": "coin", "split": "test", "duration": 82, "topic": "Remove Scratches From Windshield", "category": "Vehicle", "annotation": [{"clip_id": "107811ed26be4b12_5_0", "segment": [68.0, 75.0], "label": "spray the cleaning agent on the car window"}, {"clip_id": "107811ed26be4b12_5_1", "segment": [76.0, 92.0], "label": "apply the cleaning agent with towel evenly"}, {"clip_id": "107811ed26be4b12_5_2", "segment": [93.0, 100.0], "label": "wipe off the cleaning agent"}, {"clip_id": "107811ed26be4b12_5_3", "segment": [101.0, 108.0], "label": "spray the cleaning agent on the car window"}, {"clip_id": "107811ed26be4b12_5_4", "segment": [114.0, 122.0], "label": "apply the cleaning agent with towel evenly"}], "frames": {"107811ed26be4b12_5_0": {"frames": 210, "imgs": 210}, "107811ed26be4b12_5_1": {"frames": 480, "imgs": 480}, "107811ed26be4b12_5_2": {"frames": 210, "imgs": 210}, "107811ed26be4b12_5_3": {"frames": 210, "imgs": 210}, "107811ed26be4b12_5_4": {"frames": 240, "imgs": 240}}}
67
+ {"id": "de69497fde83a943", "youtube_id": "0WXaTHEIoAc", "ori": "coin", "split": "test", "duration": 3, "topic": "Assemble Sofa", "category": "Furniture and Decoration", "annotation": [{"clip_id": "de69497fde83a943_4_0", "segment": [92.0, 106.0], "label": "install stand of the seat"}, {"clip_id": "de69497fde83a943_4_1", "segment": [107.0, 117.0], "label": "install armrest on sofa"}, {"clip_id": "de69497fde83a943_4_2", "segment": [118.0, 126.0], "label": "put every parts mentioned together"}, {"clip_id": "de69497fde83a943_4_3", "segment": [127.0, 130.0], "label": "place cushion and backrest"}], "frames": {"de69497fde83a943_4_0": {"frames": 336, "imgs": 336}, "de69497fde83a943_4_1": {"frames": 240, "imgs": 240}, "de69497fde83a943_4_2": {"frames": 192, "imgs": 192}, "de69497fde83a943_4_3": {"frames": 72, "imgs": 72}}}
68
+ {"id": "6c1e18229fbcba2b", "youtube_id": "aBmHmp4Vl6w", "ori": "coin", "split": "test", "duration": 10, "topic": "Make Lamb Kebab", "category": "Dish", "annotation": [{"clip_id": "6c1e18229fbcba2b_4_0", "segment": [4.0, 22.0], "label": "prepare meat"}, {"clip_id": "6c1e18229fbcba2b_4_1", "segment": [23.0, 38.0], "label": "mix and pickle"}, {"clip_id": "6c1e18229fbcba2b_4_2", "segment": [48.0, 102.0], "label": "string together"}, {"clip_id": "6c1e18229fbcba2b_4_3", "segment": [109.0, 142.0], "label": "roast ingredients"}], "frames": {"6c1e18229fbcba2b_4_0": {"frames": 540, "imgs": 540}, "6c1e18229fbcba2b_4_1": {"frames": 450, "imgs": 450}, "6c1e18229fbcba2b_4_2": {"frames": 1619, "imgs": 1619}, "6c1e18229fbcba2b_4_3": {"frames": 990, "imgs": 990}}}
69
+ {"id": "d1b394ce75aa8421", "youtube_id": "K7QyCMNDHAs", "ori": "coin", "split": "test", "duration": 19, "topic": "Use Epinephrine Auto-injector", "category": "Nursing and Care", "annotation": [{"clip_id": "d1b394ce75aa8421_3_0", "segment": [57.0, 58.0], "label": "unplug protection head"}, {"clip_id": "d1b394ce75aa8421_3_1", "segment": [62.0, 64.0], "label": "plunge into thigh"}, {"clip_id": "d1b394ce75aa8421_3_2", "segment": [64.5, 72.5], "label": "pull out after a period of time"}], "frames": {"d1b394ce75aa8421_3_0": {"frames": 24, "imgs": 24}, "d1b394ce75aa8421_3_1": {"frames": 48, "imgs": 48}, "d1b394ce75aa8421_3_2": {"frames": 192, "imgs": 192}}}
70
+ {"id": "3290dbf7dc72c164", "youtube_id": "UV7lhe_TX5s", "ori": "coin", "split": "test", "duration": 11, "topic": "Replace Battery On TV Control", "category": "Gadgets", "annotation": [{"clip_id": "3290dbf7dc72c164_3_0", "segment": [16.0, 21.5], "label": "open cover"}, {"clip_id": "3290dbf7dc72c164_3_1", "segment": [23.0, 29.0], "label": "put battery in"}, {"clip_id": "3290dbf7dc72c164_3_2", "segment": [29.5, 31.5], "label": "close cover"}], "frames": {"3290dbf7dc72c164_3_0": {"frames": 165, "imgs": 165}, "3290dbf7dc72c164_3_1": {"frames": 180, "imgs": 180}, "3290dbf7dc72c164_3_2": {"frames": 60, "imgs": 60}}}
71
+ {"id": "1ff4d5e766209674", "youtube_id": "bMCAQWuyr6Y", "ori": "coin", "split": "test", "duration": 12, "topic": "Use Tapping Gun", "category": "Gadgets", "annotation": [{"clip_id": "1ff4d5e766209674_3_0", "segment": [23.0, 25.0], "label": "remove the protecting cover of the gun head"}, {"clip_id": "1ff4d5e766209674_3_1", "segment": [26.0, 32.0], "label": "insert the glue needle"}, {"clip_id": "1ff4d5e766209674_3_2", "segment": [58.0, 62.0], "label": "hold the gun end and let the gun head aim at the tag brand"}], "frames": {"1ff4d5e766209674_3_0": {"frames": 50, "imgs": 50}, "1ff4d5e766209674_3_1": {"frames": 150, "imgs": 150}, "1ff4d5e766209674_3_2": {"frames": 100, "imgs": 100}}}
requirements.txt ADDED
@@ -0,0 +1,4 @@
 
 
 
 
 
1
+ jsonlines
2
+ gradio
3
+ matplotlib
4
+ Pillow
states/017e51bff537023f_4_0.jpg ADDED
states/017e51bff537023f_4_1.jpg ADDED
states/017e51bff537023f_4_2.jpg ADDED
states/017e51bff537023f_4_3.jpg ADDED
states/03de4c6c61ebf065_3_0.jpg ADDED
states/03de4c6c61ebf065_3_1.jpg ADDED
states/03de4c6c61ebf065_3_2.jpg ADDED
states/07f0e2f3f60aa981_5_0.jpg ADDED
states/07f0e2f3f60aa981_5_1.jpg ADDED
states/07f0e2f3f60aa981_5_2.jpg ADDED
states/07f0e2f3f60aa981_5_3.jpg ADDED
states/07f0e2f3f60aa981_5_4.jpg ADDED
states/08a2828cf7cdd021_3_0.jpg ADDED
states/08a2828cf7cdd021_3_1.jpg ADDED
states/08a2828cf7cdd021_3_2.jpg ADDED
states/107811ed26be4b12_6_0.jpg ADDED
states/107811ed26be4b12_6_1.jpg ADDED
states/107811ed26be4b12_6_2.jpg ADDED
states/107811ed26be4b12_6_3.jpg ADDED
states/107811ed26be4b12_6_4.jpg ADDED
states/107811ed26be4b12_6_5.jpg ADDED
states/1391f0a39eb7d051_6_0.jpg ADDED
states/1391f0a39eb7d051_6_1.jpg ADDED
states/1391f0a39eb7d051_6_2.jpg ADDED
states/1391f0a39eb7d051_6_3.jpg ADDED
states/1391f0a39eb7d051_6_4.jpg ADDED
states/1391f0a39eb7d051_6_5.jpg ADDED
states/148f1d5f5378b9b0_4_0.jpg ADDED
states/148f1d5f5378b9b0_4_1.jpg ADDED
states/148f1d5f5378b9b0_4_2.jpg ADDED
states/148f1d5f5378b9b0_4_3.jpg ADDED
states/1eb3e48e5d3249dd_5_0.jpg ADDED
states/1eb3e48e5d3249dd_5_1.jpg ADDED
states/1eb3e48e5d3249dd_5_2.jpg ADDED
states/1eb3e48e5d3249dd_5_3.jpg ADDED
states/1eb3e48e5d3249dd_5_4.jpg ADDED
states/1f8113e6fda95c74_3_0.jpg ADDED
states/1f8113e6fda95c74_3_1.jpg ADDED
states/1f8113e6fda95c74_3_2.jpg ADDED
states/1ff4d5e766209674_4_0.jpg ADDED
states/1ff4d5e766209674_4_1.jpg ADDED
states/1ff4d5e766209674_4_2.jpg ADDED
states/1ff4d5e766209674_4_3.jpg ADDED
states/292d3bb739fdf8c1_4_0.jpg ADDED
states/292d3bb739fdf8c1_4_1.jpg ADDED
states/292d3bb739fdf8c1_4_2.jpg ADDED
states/292d3bb739fdf8c1_4_3.jpg ADDED