The OpenMonkeyStudio repository is a work in progress and will be updated on a regular basis. 2D and 3D label data along with the images used for training are available at https://z.umn.edu/OMS_data_link [3.8 GB]
The structure of the zip file is as follows:
+-- Batch7
| +-- camera.txt
| +-- coords_3D.mat
| +-- crop_para.mat
| +-- intrinsic.txt
+-- Batch9
+-- Batch9a
+-- Batch9b
+-- Batch10
+-- Batch11
+-- Data.mat
+-- image_label_visualizer.py
+-- Images
| +-- batch0_000000001_00000002.jpg
| +-- batch0_000000001_00000004.jpg
| +-- .
+-- Readme.pdf
+-- reprojection.py
The contents of the zip file are explained below:
-
Images are stored in the
Imagesfolder. The images have the following format:batch(batch#)_(frame#)_(cameraID).jpg, Eg.batch7_000003120_18064162.jpg -
2D annotations are stored in
Data.matfile
The file comprises of image filenames and image information. It also comprises of labels for 13 2D joints of the subject in the image.
T.name(194518x1): Image filenames
T.data(194518x30): Labels for the 2D pose in respective images. The data is stored in the following format:
Top-Left pointImage_shapenose positionhead positionneck positionR.Shoulder positionR.Hand positionL.Shoulder positionL.Hand positionHip positionR.Knee positionR.Foot positionL.Knee positionL.Foot positionTail
Example:0 0 Image_height Image_width y1 x1 y2 x2 ... y13 x13 -
3D information has been uploaded for the following batches:
7, 9, 9a, 9b, 10, 11. The folder for each batch comprises of the extrinsics and intrinsics of the cameras used during the capture of the respective batch. The folder also comprises of cropping parameters for the images in each batch, along with the 3D information for each frame.
The files available in each folder have the following format:
camera.txt:The file comprises of the rotation matrices and camera centers for each camera in the batch
NumCams 62
NumFrames 62
NumP 62
0 camID
C (1x3) … Camera center
R (3x3) … Rotation matrix
.
.Example:
NumCams 62
NumFrames 62
NumP 62
0 18064162
7.566247e-01 -3.652013e-02 -3.071504e+00
9.962194e-01 -7.379663e-02 -4.583673e-02
6.721757e-02 9.890431e-01 -1.314361e-01
5.503405e-02 1.278582e-01 9.902644e-01
0 18260132
1.887207e+00 -7.456747e-02 -3.053667e+00
9.922224e-01 -4.990314e-02 1.140367e-01
6.738378e-02 9.856155e-01 -1.549887e-01
-1.046620e-01 1.614675e-01 9.813125e-01
.
.intrinsic.txt:The file comprises of the intrinsic matrices and distortion parameters for each camera. The model used for calibration isRADIAL
0 camID
K (3x3) … Intrinsic parameters
D (1x2) … Distortion parameters
.
.Example:
0 18064162
7.873470e+02 0 640
0 7.873470e+02 512
0 0 1
-3.531380e-01 1.173270e-01
0 18260132
7.932990e+02 0 640
0 7.932990e+02 512
0 0 1
-3.480520e-01 1.167730e-01
.
.- 3D annotations are stored in
coords_3D.matfile:
The file comprises of 3D information for 13 joints of the subject in the particular frame
coords(nx4): First column gives information about the frame number. The next 3 columns provide information about the X, Y and Z coordinates (n = 13xn’wheren’is the no. of frames)
- Each row comprises of 3D information for each joint of each frame
- The format of each row is as follows:
Frame#XYZ, Eg.31203.63640.27171.8471 - The order for the joints is as follows:
Nose-Head-Neck-RShoulder-RHand-LShoulder-LHand-Hip-RKnee-RFoot-LKnee-LFoot-Tail
- The cropping parameters are stored in
crop_para.matfile:
The file comprises of cropping parameters for the images (that have 3D information available)
crop(nx6): The array stores information for frame#, cameraID, top-left position of the cropped image in the original image (x, y) and image size (Image_width Image_Height)
- The format of each row is as follows:
Frame#cameraIDxywh, Eg.312018064162789327381382
The zip file contains codes for visualization of labeled data
This code helps to visualize the 2D labels for images
python3 image_label_visualizer.py -i 10The above command will show the visualization for the 10th image (default is 0th image)
This code helps to visualize the 2D reprojections of the 3D coordinates for any chosen frame
python3 reprojection.py -b 7 -f 10The above command will show the visualization for the 10th frame in batch 7 (default is batch 7 frame 0)