EMDB Dataset Structure

August 22, 2023 · View on GitHub

After unzipping the downloaded files, please arrange their contents as follows:

EMDB_ROOT
├── P0
├── P1
├── ...
├── P9

Each participant's folder looks like this:

EMDB_ROOT
├── PX
    ├── sequence1
        ├── images
        ├── {PX}_{sequence1}_data.pkl
        ├── {PX}_{sequence1}_video.mp4
    ├── sequence2
    ├── ...
    ├── sequenceN

The images subfolder contains the raw images as single files in named in the format {%5d}.jpg from 0. The video file shows a side-by-side view of the original RGB images and the EMDB reference overlaid on top. The contents of the pickle file are described in the following.

*_data.pkl

The pickle file contains a dictionary with the following keys:

KeyTypeDescription
genderstringEither "female", "male", or "neutral".
namestringThe name of this sequence in the format {subject_id}_{sequence_id}.
emdb1boolWhether this sequence is part of EMDB 1 as mentioned in the paper. We evaluated state-of-the-art RGB-based baselines on EMDB 1.
emdb2boolWhether this sequence is part of EMDB 2 as mentioned in the paper. We evaluated GLAMR's global trajectories on EMDB 2.
n_framesintLength of this sequence.
good_frames_masknp.ndarrayOf shape (n_frames, ) indicating which frames are considered valid (True) and which aren't. The invalid frames are hand-selected instances where the person is out-of-view or occluded entirely.
cameradictCamera information (see below).
smpldictSMPL parameters (see below).
kp2dnp.ndarrayOf shape (n_frames, 24, 2) containing the SMPL joints projected into the camera.
bboxesdictBounding box data (see below).

camera

KeyTypeDescription
intrinsicsnp.ndarrayOf shape (3, 3) containing the camera intrinsics.
extrinsicsnp.ndarrayOf shape (n_frames, 4, 4) containing the camera extrinsics.
widthintThe width of the image.
heightintThe height of the image.

smpl

KeyTypeDescription
poses_rootnp.ndarrayOf shape (n_frames, 3) containing the SMPL root orientation.
poses_bodynp.ndarrayOf shape (n_frames, 69) containing the SMPL pose parameters.
transnp.ndarrayOf shape (n_frames, 3) containing the SMPL root translation.
betasnp.ndarrayOf shape (10, ) containing the SMPL shape parameters.

bboxes

KeyTypeDescription
bboxesnp.ndarrayOf shape (n_frames, 4) containing the 2D bounding boxes in the format (x_min, y_min, x_max, y_max).
invalid_idxsnp.ndarrayIndexes of invalid bounding boxes. A bounding box at frame i is invalid if good_frames_mask[i] == False or if x_max - x_min <= 0 or y_max - y_min <= 0.