Spaces:
Running
Running
Irpan
commited on
Commit
·
af1ab42
1
Parent(s):
ec626eb
video
Browse files
app.py
CHANGED
@@ -11,13 +11,17 @@ from view_transformer import ViewTransformer
|
|
11 |
from speed_and_distance_estimator import SpeedAndDistance_Estimator
|
12 |
|
13 |
def process_video(input_video):
|
|
|
14 |
# Read Video
|
15 |
video_frames = read_video(input_video.name) # use the uploaded file
|
16 |
-
|
17 |
# Initialize Tracker
|
18 |
tracker = Tracker('models/best.pt')
|
19 |
|
20 |
-
tracks = tracker.get_object_tracks(video_frames)
|
|
|
|
|
|
|
21 |
|
22 |
# Interpolate Ball Positions
|
23 |
tracks["ball"] = tracker.interpolate_ball_positions(tracks["ball"])
|
@@ -27,7 +31,10 @@ def process_video(input_video):
|
|
27 |
|
28 |
# Camera movement estimator
|
29 |
camera_movement_estimator = CameraMovementEstimator(video_frames[0])
|
30 |
-
camera_movement_per_frame = camera_movement_estimator.get_camera_movement(video_frames)
|
|
|
|
|
|
|
31 |
camera_movement_estimator.add_adjust_positions_to_tracks(tracks, camera_movement_per_frame)
|
32 |
|
33 |
# View Transformer
|
@@ -77,8 +84,8 @@ def process_video(input_video):
|
|
77 |
def create_gradio_interface():
|
78 |
# Input: video file, Output: video file
|
79 |
interface = gr.Interface(fn=process_video,
|
80 |
-
inputs=gr.Video(
|
81 |
-
outputs=gr.Video(
|
82 |
|
83 |
return interface
|
84 |
|
|
|
11 |
from speed_and_distance_estimator import SpeedAndDistance_Estimator
|
12 |
|
13 |
def process_video(input_video):
|
14 |
+
print(input_video)
|
15 |
# Read Video
|
16 |
video_frames = read_video(input_video.name) # use the uploaded file
|
17 |
+
|
18 |
# Initialize Tracker
|
19 |
tracker = Tracker('models/best.pt')
|
20 |
|
21 |
+
#tracks = tracker.get_object_tracks(video_frames)
|
22 |
+
tracks = tracker.get_object_tracks(video_frames,
|
23 |
+
read_from_stub=True,
|
24 |
+
stub_path='stubs/track_stub_121364_0_small.pkl')
|
25 |
|
26 |
# Interpolate Ball Positions
|
27 |
tracks["ball"] = tracker.interpolate_ball_positions(tracks["ball"])
|
|
|
31 |
|
32 |
# Camera movement estimator
|
33 |
camera_movement_estimator = CameraMovementEstimator(video_frames[0])
|
34 |
+
#camera_movement_per_frame = camera_movement_estimator.get_camera_movement(video_frames)
|
35 |
+
camera_movement_per_frame = camera_movement_estimator.get_camera_movement(video_frames,
|
36 |
+
read_from_stub=True,
|
37 |
+
stub_path='stubs/camera_movement_stub_121364_0_small.pkl')
|
38 |
camera_movement_estimator.add_adjust_positions_to_tracks(tracks, camera_movement_per_frame)
|
39 |
|
40 |
# View Transformer
|
|
|
84 |
def create_gradio_interface():
|
85 |
# Input: video file, Output: video file
|
86 |
interface = gr.Interface(fn=process_video,
|
87 |
+
inputs=gr.Video(label="Upload Video (mp4, avi, mov)"),
|
88 |
+
outputs=gr.Video(label="Processed Video"))
|
89 |
|
90 |
return interface
|
91 |
|