BIG DATA CUP 2027
Data and Documentation
The dataset combines 3D goalie pose with puck position and velocity, synchronized frame by frame. SPL's supplied documentation describes 81 shots from one goalie (P0001), recorded August 6, 2026, at 60 Hz.
Data and Supporting Materials
The full dataset release is forthcoming in SPL-Open-Data. The file below is one sample shot, not the full dataset.- Download sample shot JSON
- Download SPL's original README
data/2026-08-06/P0001/HK_GL_P0001_S0001.json. Participant IDs remain consistent across sessions; shot IDs increase chronologically within a session.
Coordinate System and Units
Positions use[x, y, z] in feet, with the origin at center ice. Positive x points toward the goal used in this session, whose goal line is at x = 89 feet. Positive y is upward in the diagram; positive z is above the ice, with z = 0 at the ice surface. Velocity components use feet per second.

Combined Shot Data Dictionary
| Field | Definition |
|---|---|
metadata.session_date |
Session date (YYYY-MM-DD). |
metadata.participant_id |
Consistent goalie identifier across sessions. |
metadata.shot_number |
Chronological shot identifier within the session. |
metadata.duration__s |
Shot duration in seconds. |
metadata.goalie_sampling_rate__hz / metadata.puck_sampling_rate__hz |
Nominal sampling rates; both are 60 Hz. |
tracking |
Chronological array of synchronized frames. |
tracking[].frame |
Shot-local frame index, starting at zero. |
tracking[].time |
Elapsed time since the first shot frame, in milliseconds. |
tracking[].data.puck |
[x, y, z] puck position in feet; null when not detected. |
tracking[].data.puck_velocity |
[vx, vy, vz] puck velocity in feet per second; null when unavailable. |
tracking[].data.goalie |
19 named keypoints, each with [x, y, z] coordinates in feet; null when unavailable. |
Goalie Keypoints
NOSE, LEFT_EYE, RIGHT_EYE, RIGHT_EAR, LEFT_EAR, LEFT_SHOULDER, RIGHT_SHOULDER, LEFT_ELBOW, RIGHT_ELBOW, LEFT_WRIST, RIGHT_WRIST, LEFT_HIP, RIGHT_HIP, LEFT_KNEE, RIGHT_KNEE, LEFT_ANKLE, RIGHT_ANKLE, MID_HIP, NECK.
MID_HIP is the midpoint of the hips. The remaining names identify the corresponding body landmarks. See the original README for the full marker table.
Sample Frame
The following is the metadata and first frame from the supplied sample. Download the JSON above for the complete shot.{
"metadata": {
"session_date": "2026-08-06",
"participant_id": "P0001",
"shot_number": "S0001",
"duration__s": 7.333,
"goalie_sampling_rate__hz": 60,
"puck_sampling_rate__hz": 60
},
"tracking": [
{
"frame": 0,
"time": 0,
"data": {
"puck": [
91.768,
-27.53,
0.054
],
"puck_velocity": [
-20.647,
4.145,
0.695
],
"goalie": {
"NOSE": [
87.573,
-3.167,
4.402
],
"LEFT_EYE": [
87.662,
-3.205,
4.558
],
"RIGHT_EYE": [
87.552,
-3.049,
4.577
],
"RIGHT_EAR": [
87.462,
-2.715,
4.593
],
"LEFT_EAR": [
87.524,
-2.687,
4.647
],
"LEFT_SHOULDER": [
88.379,
-2.862,
3.879
],
"RIGHT_SHOULDER": [
86.992,
-2.523,
4.157
],
"LEFT_ELBOW": [
88.426,
-3.011,
2.781
],
"RIGHT_ELBOW": [
86.079,
-2.308,
3.123
],
"LEFT_WRIST": [
88.345,
-3.451,
2.378
],
"RIGHT_WRIST": [
86.29,
-2.881,
2.283
],
"LEFT_HIP": [
87.848,
-2.422,
2.343
],
"RIGHT_HIP": [
87.254,
-1.443,
2.579
],
"LEFT_KNEE": [
87.402,
-2.749,
1.302
],
"RIGHT_KNEE": [
86.408,
-2.062,
1.333
],
"LEFT_ANKLE": [
88.47,
-2.859,
0.297
],
"RIGHT_ANKLE": [
85.937,
-1.068,
0.432
],
"MID_HIP": [
87.551,
-1.932,
2.461
],
"NECK": [
87.685,
-2.692,
4.018
]
}
}
}
]
}
Processing, Alignment, and Missing Values
According to SPL's README, goalie keypoints were smoothed using a robust Savitzky–Golay filter (third-order polynomial, 11-frame window). Each goalie frame is matched to the closest puck measurement within 8 milliseconds; puck values are not interpolated. Anull value means an observation is unavailable; it is different from [0, 0, 0]. Puck detections can be absent when the puck is occluded or outside the camera view. Preserve the supplied observations and document any interpolation, filtering, or reconstruction you perform.
Orientation Video
This short video shows shot S0011 reconstructed from tracking data alongside overhead, bench-wall, and stands-wall camera views. It provides context for the tracking; it is not a release of the full session videos. Open or download the orientation videoShot Animation
SPL plans to include animation code with its repository release. The original README describes
animate_shot() and camera options. That script is not included in this sample download.
Data Use
Consult the SPL repository for applicable data-use and attribution terms accompanying the release.

