พื้นที่เก็บข้อมูลนี้มีกล่องเครื่องมือสำหรับดาวน์โหลด ประมวลผล และแสดงภาพข้อมูล Panoptic Studio (Panoptic)
14 พฤษภาคม 2024: เราได้สร้างเซิร์ฟเวอร์มิเรอร์ที่ SNU คุณยังคงสามารถใช้เซิร์ฟเวอร์ CMU เดิมได้ และหากเซิร์ฟเวอร์ CMU ไม่ตอบสนอง คุณสามารถใช้ตำแหน่งข้อมูล SNU ได้โดยการเพิ่มตัวเลือก --snu-endpoint
ในสคริปต์ getData.sh
และ getData_kinoptic
ทำตามขั้นตอนเหล่านี้เพื่อตั้งค่าตัวอย่างง่ายๆ:
git clone https://github.com/CMU-Perceptual-Computing-Lab/panoptic-toolbox cd panoptic-toolbox
หากต้องการดาวน์โหลดชุดข้อมูลที่ชื่อ "171204_pose1_sample" ในตัวอย่างนี้ ให้เรียกใช้สคริปต์ต่อไปนี้
./scripts/getData.sh 171204_pose1_sample
สคริปต์ทุบตีนี้ต้องใช้ curl หรือ wget
สคริปต์นี้จะสร้างโฟลเดอร์ "./171204_pose1_sample" และดาวน์โหลดไฟล์ต่อไปนี้
171204_pose1_sample/hdVideos/hd_00_XX.mp4 #ไฟล์วิดีโอ HD ที่ซิงโครไนซ์ (31 ครั้ง)
171204_pose1_sample/vgaVideos/KINECTNODE%d/vga_XX_XX.mp4 #ไฟล์วิดีโอ VGA ที่ซิงโครไนซ์ (เข้าชม 480 ครั้ง)
171204_pose1_sample/calibration_171204_pose1_sample.json #ไฟล์การสอบเทียบ
171204_pose1_sample/hdPose3d_stage1_coco19.tar #ข้อมูลจุดสำคัญของร่างกาย 3D (คำจำกัดความจุดสำคัญ coco19)
171204_pose1_sample/hdFace3d.tar #ข้อมูลจุดสำคัญของใบหน้า 3D
171204_pose1_sample/hdHand3d.tar #ข้อมูลจุดสำคัญของมือ 3 มิติ
โปรดทราบว่าตัวอย่างตัวอย่างนี้ในปัจจุบันไม่มีวิดีโอ VGA
คุณยังสามารถดาวน์โหลดลำดับอื่น ๆ ผ่านทางสคริปต์นี้ได้ เพียงใช้ชื่อของลำดับเป้าหมาย: แทน "171204_pose1panopticHD" ตัวอย่าง
./scripts/getData.sh 171204_pose1
สำหรับเวอร์ชันเต็มของลำดับ 171204_pose1: คุณยังสามารถระบุจำนวน videopanopticHDnt ที่จะดาวน์โหลดได้
./scripts/getData.sh (sequenceName) (VGA_Video_Number) (HD_Video_Number)
ตัวอย่างเช่น คำสั่งต่อไปนี้จะดาวน์โหลดวิดีโอ vga 240 รายการและวิดีโอ 10 รายการ
./scripts/getData.sh 171204_pose1_sample 240 10
โปรดทราบว่าเราได้เรียงลำดับกล้อง VGA เพื่อให้คุณดาวน์โหลดมุมมองที่กระจายสม่ำเสมอ
คุณสามารถดูรายการลำดับที่มีอยู่ในปัจจุบันได้จากลิงก์ต่อไปนี้:
รายการลำดับที่เผยแพร่ (ver1.2)
การดาวน์โหลดทั้งหมด (รวมถึงวิดีโอ) อาจใช้เวลานาน แต่การดาวน์โหลดไฟล์จุดสำคัญ 3 มิติ (ร่างกาย + ใบหน้า + มือ ขึ้นอยู่กับความพร้อม) ควรจะ "ค่อนข้างรวดเร็ว"
คุณสามารถใช้สคริปต์ต่อไปนี้เพื่อดาวน์โหลดลำดับที่มีอยู่ในปัจจุบัน (เวอร์ชั่น 1.2):
./scripts/getDB_panopticHD_ver1_2.sh
การตั้งค่าเริ่มต้นไม่ได้ดาวน์โหลดวิดีโอใดๆ อย่าลังเลที่จะเปลี่ยน "vgaVideoNum" และ "hdVideoNum" ในสคริปต์เป็นหมายเลขอื่นหากคุณต้องการดาวน์โหลดวิดีโอด้วย
คุณสามารถดูวิดีโอตัวอย่างและข้อมูลอื่นๆ ของแต่ละลำดับได้ในเว็บไซต์ของเรา: ชุดข้อมูลการเรียกดู
ตรวจสอบมุมมอง 3 มิติในแต่ละลำดับ: หน้าที่คุณสามารถสร้างภาพโครงกระดูก 3 มิติในเว็บเบราว์เซอร์ของคุณ ตัวอย่างเช่น: http://domedb.perception.cs.cmu.edu/panopticHDpose1.html
ขั้นตอนนี้ต้องใช้ ffmpeg
./scripts/extractAll.sh 171204_pose1_sample
การดำเนินการนี้จะแยกรูปภาพ เช่น 171204_pose1_sample/hdImgs/00_00/00_00_00000000.jpg
และข้อมูลโครงกระดูก 3 มิติที่เกี่ยวข้อง เช่น 171204_pose1_sample/hdPose3d_stage1_coco19/body3DScene_00000000.json
extractAll.sh
เป็นสคริปต์ง่ายๆ ที่รวมชุดคำสั่งต่อไปนี้ (คุณไม่จำเป็นต้องเรียกใช้คำสั่งเหล่านี้อีก):
ซีดี 171204_pose1_sample ../scripts/vgaImgsExtractor.sh # ไฟล์ PNG จากวิดีโอ VGA (25 fps)../scripts/hdImgsExtractor.sh # ไฟล์ PNG จากวิดีโอ HD (29.97 fps)tar -xf vgaPose3d_stage1.tar # แยกโครงกระดูกที่ VGA frameratetar -xf hdPose3d_stage1.tar # แยกโครงกระดูกสำหรับ HDcd ..
รหัสนี้ต้องใช้ numpy, matplotlib
การแสดงภาพจุดสำคัญ 3 มิติ (ร่างกาย ใบหน้า มือ):
cd python jupyter notebook demo_3Dkeypoints_3dview.ipynb
ผลลัพธ์ควรมีลักษณะเช่นนี้
การฉายจุดสำคัญ 3 มิติ (ร่างกาย ใบหน้า มือ) บนมุมมอง HD ที่เลือก:
cd python jupyter notebook demo_3Dkeypoints_reprojection_hd.ipynb
ผลลัพธ์ควรมีลักษณะเช่นนี้
รหัสนี้ต้องใช้ numpy, matplotlib
การแสดงภาพจุดสำคัญ 3 มิติ (ร่างกาย ใบหน้า มือ):
cd python jupyter notebook demo_3Dkeypoints_3dview.ipynb
ผลลัพธ์ควรมีลักษณะเช่นนี้
การฉายจุดสำคัญ 3 มิติ (ร่างกาย ใบหน้า มือ) ในมุมมอง HD ที่เลือก:
cd python jupyter notebook demo_3Dkeypoints_reprojection_hd.ipynb
ผลลัพธ์ควรมีลักษณะเช่นนี้
รหัสนี้ต้องใช้ pyopengl
การแสดงภาพจุดสำคัญ 3 มิติ (ร่างกาย ใบหน้า มือ):
python glViewer.py
หมายเหตุ: รหัส Matlab ล้าสมัย และไม่รองรับเอาต์พุตจุดสำคัญ 3D (ตัว coco19, ใบหน้า, มือ) โปรดดูรหัสนี้เพื่อใช้อ้างอิงเท่านั้น เราจะอัปเดตสิ่งนี้ในภายหลัง
ตัวอย่าง Matlab (ล้าสมัย):
>>> ซีดี Matlab >>> สาธิต
เราสร้างโครงกระดูก 3 มิติของผู้คนขึ้นมาใหม่โดยใช้วิธีการของ Joo และคณะ 2018.
ผลลัพธ์ของแต่ละเฟรมจะถูกเขียนเป็นไฟล์ json ตัวอย่างเช่น,
{ "version": 0.7, "univTime" :53541.542, "fpsType" :"hd_29_97", "bodies" : [ { "id": 0, "joints19": [-19.4528, -146.612, 1.46159, 0.724274, -40.4564, -163.091, -0.521563, 0.575897, -14.9749, -91.0176, 4.24329, 0.361725, -19.2473, -146.679, -16.1136, 0.643555, -14.7958, -118.804, -20.6738, 0.619599, -22.611, -93.8793, -17.7834, 0.557953, -12.3267, -91.5465, -6.55368, 0.353241, -12.6556, -47.0963, -4.83599, 0.455566, -10.8069, -8.31645, -4.20936, 0.501312, -20.2358, -147.348, 19.1843, 0.628022, -13.1145, -120.269, 28.0371, 0.63559, -20.1037, -94.3607, 30.0809, 0.625916, -17.623, -90.4888, 15.0403, 0.327759, -17.3973, -46.9311, 15.9659, 0.419586, -13.1719, -7.60601, 13.4749, 0.519653, -38.7164, -166.851, -3.25917, 0.46228, -28.7043, -167.333, -7.15903, 0.523224, -39.0433, -166.677, 2.55916, 0.395965, -30.0718, -167.264, 8.18371, 0.510041] } ] }
ที่นี่แต่ละเรื่องมีค่าดังต่อไปนี้
id : ดัชนีหัวเรื่องที่ไม่ซ้ำกันภายในลำดับ:. โครงกระดูกที่มีรหัสเดียวกันข้ามเวลาแสดงถึงโครงกระดูกที่เคลื่อนไหวได้ชั่วคราว (รายบุคคล) อย่างไรก็ตาม บุคคลเดียวกันอาจมีหลาย ID ข้อ ต่อ 19 : 19 ตำแหน่งร่วม 3 มิติ ซึ่งจัดรูปแบบเป็น [x1,y1,z1,c1,x2,y2,z2,c2,...] โดยที่คะแนนความเชื่อมั่น c ispanopticHDjoint แต่ละค่า
โครงกระดูก 3 มิติมีลำดับจุดสำคัญดังต่อไปนี้:
0: Neck 1: Nose 2: BodyCenter (center of hips) 3: lShoulder 4: lElbow 5: lWrist, 6: lHip 7: lKnee 8: lAnkle 9: rShoulder 10: rElbow 11: rWrist 12: rHip 13: rKnee 14: rAnkle 15: lEye 16: lEar 17: rEye 18: rEar
โปรดทราบว่าสิ่งนี้แตกต่างจากลำดับเอาต์พุตของ OpenPose แม้ว่าวิธีการของเราจะอิงตามนั้นก็ตาม
โปรดทราบว่าเราเคยใช้รูปแบบเก่า (ชื่อ mpi15 ตามที่อธิบายไว้ในเอกสารเก่าของเรา) แต่เราไม่ได้ใช้รูปแบบนี้อีกต่อไป
Kinoptic Studio เป็นระบบย่อยของ Panoptic Studio ซึ่งประกอบด้วยเซ็นเซอร์ Kinect2 จำนวน 10 ตัว โปรดดู: README_kinoptic
คุณสามารถดาวน์โหลดลำดับทั้งหมดที่รวมอยู่ใน 3D PointCloud DB เวอร์ชัน 1 ของเราได้โดยใช้สคริปต์ต่อไปนี้:
./scripts/getDB_ptCloud_ver1.sh
เราได้เปิดเผยข้อมูลที่ประมวลผลแล้วสำหรับลำดับการทะเลาะวิวาท โปรดดูพื้นที่เก็บข้อมูลการประมวลผลสัญญาณโซเชียล
ชุดข้อมูล Panoptic Studio มีให้ใช้งานฟรีโดยมีวัตถุประสงค์ที่ไม่ใช่เชิงพาณิชย์และการวิจัยเท่านั้น
โดยการใช้ชุดข้อมูล แสดงว่าคุณตกลงที่จะอ้างอิงเอกสารต่อไปนี้อย่างน้อยหนึ่งบทความ
@inproceedings{Joo_2015_ICCV, author = {Joo, Hanbyul and Liu, Hao and Tan, Lei and Gui, Lin and Nabbe, Bart and Matthews, Iain and Kanade, Takeo and Nobuhara, Shohei and Sheikh, Yaser}, title = {Panoptic Studio: A Massively Multiview System for Social Motion Capture}, booktitle = {ICCV}, year = {2015} } @inproceedings{Joo_2017_TPAMI, title={Panoptic Studio: A Massively Multiview System for Social Interaction Capture}, author={Joo, Hanbyul and Simon, Tomas and Li, Xulong and Liu, Hao and Tan, Lei and Gui, Lin and Banerjee, Sean and Godisart, Timothy Scott and Nabbe, Bart and Matthews, Iain and Kanade, Takeo and Nobuhara, Shohei and Sheikh, Yaser}, journal={IEEE Transactions on Pattern Analysis and Machine Intelligence}, year={2017} } @inproceedings{Simon_2017_CVPR, title={Hand Keypoint Detection in Single Images using Multiview Bootstrapping}, author={Simon, Tomas and Joo, Hanbyul and Sheikh, Yaser}, journal={CVPR}, year={2017} } @inproceedings{joo2019ssp, title={Towards Social Artificial Intelligence: Nonverbal Social Signal Prediction in A Triadic Interaction}, author={Joo, Hanbyul and Simon, Tomas and Cikara, Mina and Sheikh, Yaser}, booktitle={CVPR}, year={2019} }