This repository shows how to work with the Panoptic Studio (Panoptic) data.
Follow these steps to set up a simple example:
git clone https://github.com/CMU-Perceptual-Computing-Lab/panoptic-toolbox
cd panoptic-toolbox
This bash script requires curl or wget.
./scripts/getData.sh sampleData
You can also download any other seqeunce through this script. Just use the the name of the target sequence instead of the "sampleData".
./scripts/getData.sh 160422_ultimatum
You can also specify the number of videos you want to donwload.
./scripts/getData.sh sampleData (VGA_Video_Number) (HD_Video_Number)
For example, the following command will download 240 vga videos and 10 videos.
./scripts/getData.sh sampleData 240 10
Note that we have sorted the VGA camera order so that you download uniformly distributed view.
This step requires ffmpeg.
./scripts/extractAll.sh sampleData
This will extract images, for example sampleData/vgaImgs/01_01/01_01_00000000.png
, and the corresponding 3D skeleton data, for example sampleData/vgaPose3d_stage1/body3DScene_00000000.json
.
extractAll.sh
is a simple script that combines the following set of commands (you shouldn't need to run these again):
cd sampleData
../scripts/vgaImgsExtractor.sh # PNG files from VGA video (25 fps)
../scripts/hdImgsExtractor.sh # PNG files from HD video (29.97 fps)
tar -xf vgaPose3d_stage1.tar # Extract skeletons at VGA framerate
tar -xf hdPose3d_stage1.tar # Extract skeletons for HD
cd ..
Python examples (require numpy, matplotlib):
cd python
jupyter notebook example.ipynb
The result should look like this.
Matlab example:
>>> cd matlab
>>> demo
Kinoptic Studio is a subsystem of Panoptic Studio, which is composed of 10 Kinect2 sensors.
Kinoptic Studio can be independently used from the Panoptic Studio.
See our PtCloudDB document for more details
Follow these steps to set up a simple example:
Assuming you want to donwload a sequence named "160422_haggling1"
./scripts/getData_kinoptic.sh 160422_haggling1
This script will download the following files.
- 160422_haggling1/kinect_shared_depth/ksynctables.json #sync table
- 160422_haggling1/kinect_shared_depth/KINECTNODE%d/depthdata.dat #depth files
- 160422_haggling1/kcalibration_160422_haggling1.json #multiple kinects calibration files
- 160422_haggling1/kinectVideos/kinect_50_%d.mp4 #rgb video files
cd 160422_haggling1
../scripts/kinectImgsExtractor.sh
matlab ./matlab/demo_kinoptic_gen_ptcloud.m
Note that you should set your "root_path" and "seqName" in this demo file.
matlab ./matlab/demo_kinoptic_projection.m
Similarly, note that you should set your "root_path" and "seqName" in this demo file.
You can download all sequences included in our 3D PointCloud DB ver.1 using the following script:
./scripts/getDB_ptCloud_ver1.sh