gitextract_os6juupz/ ├── .doc_autogeneration.doxygen ├── .github/ │ ├── CI_deprecated/ │ │ ├── .travis.yml │ │ ├── Readme_Travis_badges_table_and_backup_instructions.md │ │ └── generate_gh_pages.sh │ ├── issue_template.md │ ├── media/ │ │ └── keypoints_hand.odt │ ├── root_index.html │ ├── stale.yml │ └── workflows/ │ └── main.yml ├── .gitignore ├── .gitmodules ├── 3rdparty/ │ ├── Versions.txt │ └── windows/ │ ├── getCaffe.bat │ ├── getCaffe3rdparty.bat │ ├── getFreeglut.bat │ ├── getOpenCV.bat │ ├── getSpinnaker.bat │ └── wget/ │ ├── COPYING │ ├── Version_wget-1.20.3-win64.txt │ ├── wget.exe.debug │ └── wget.html ├── CMakeLists.txt ├── LICENSE ├── README.md ├── appveyor.yml ├── cmake/ │ ├── Cuda.cmake │ ├── Modules/ │ │ ├── FindCaffe.cmake │ │ ├── FindCuDNN.cmake │ │ ├── FindGFlags.cmake │ │ ├── FindGlog.cmake │ │ ├── FindLIBIGL.cmake │ │ └── FindSpinnaker.cmake │ ├── OpenPose.vcxproj.user │ ├── OpenPoseConfig.cmake.in │ ├── OpenPose_CL.vcxproj.user │ ├── OpenPose_CPU.vcxproj.user │ ├── Utils.cmake │ └── cmake_uninstall.cmake.in ├── doc/ │ ├── 00_index.md │ ├── 01_demo.md │ ├── 02_output.md │ ├── 03_python_api.md │ ├── 04_cpp_api.md │ ├── 05_faq.md │ ├── 06_maximizing_openpose_speed.md │ ├── 07_major_released_features.md │ ├── 08_release_notes.md │ ├── 09_authors_and_contributors.md │ ├── 10_community_projects.md │ ├── GUI_help/ │ │ └── GUI_help.odt │ ├── README.md │ ├── advanced/ │ │ ├── 3d_reconstruction_module.md │ │ ├── Chessboard_in_PDF/ │ │ │ └── pattern.eps │ │ ├── calibration_module.md │ │ ├── demo_advanced.md │ │ ├── deployment.md │ │ ├── heatmap_output.md │ │ └── standalone_face_or_hand_keypoint_detector.md │ ├── installation/ │ │ ├── 0_index.md │ │ ├── 1_prerequisites.md │ │ ├── 2_additional_settings.md │ │ ├── README.md │ │ ├── deprecated/ │ │ │ └── installation_deprecated.md │ │ └── jetson_tx/ │ │ ├── installation_jetson_tx1.md │ │ ├── installation_jetson_tx2_jetpack3.1.md │ │ └── installation_jetson_tx2_jetpack3.3.md │ └── very_advanced/ │ └── library_structure/ │ ├── 0_index.md │ ├── 1_library_deep_overview.md │ ├── 2_library_extend_functionality.md │ ├── 3_library_add_new_module.md │ └── UML/ │ └── 1_0_0rc3/ │ └── UML.mdj ├── examples/ │ ├── CMakeLists.txt │ ├── calibration/ │ │ ├── CMakeLists.txt │ │ └── calibration.cpp │ ├── deprecated/ │ │ ├── CMakeLists.txt │ │ ├── README.md │ │ ├── tutorial_add_module/ │ │ │ ├── userDatum.hpp │ │ │ ├── userPostProcessing.hpp │ │ │ └── wUserPostProcessing.hpp │ │ ├── tutorial_add_module_custom_post_processing.cpp │ │ ├── tutorial_api_thread_1_user_processing_function.cpp │ │ └── tutorial_api_thread_2_user_input_processing_output_and_datum.cpp │ ├── openpose/ │ │ ├── CMakeLists.txt │ │ └── openpose.cpp │ ├── tests/ │ │ ├── CMakeLists.txt │ │ ├── README.md │ │ ├── clTest.cpp │ │ ├── handFromJsonTest.cpp │ │ ├── resizeTest.cpp │ │ └── wrapperHandFromJsonTest.hpp │ ├── tutorial_api_cpp/ │ │ ├── 01_body_from_image_default.cpp │ │ ├── 02_whole_body_from_image_default.cpp │ │ ├── 03_keypoints_from_image.cpp │ │ ├── 04_keypoints_from_images.cpp │ │ ├── 05_keypoints_from_images_multi_gpu.cpp │ │ ├── 06_face_from_image.cpp │ │ ├── 07_hand_from_image.cpp │ │ ├── 08_heatmaps_from_image.cpp │ │ ├── 09_keypoints_from_heatmaps.cpp │ │ ├── 10_asynchronous_custom_input.cpp │ │ ├── 11_asynchronous_custom_input_multi_camera.cpp │ │ ├── 12_asynchronous_custom_output.cpp │ │ ├── 13_asynchronous_custom_input_output_and_datum.cpp │ │ ├── 14_synchronous_custom_input.cpp │ │ ├── 15_synchronous_custom_preprocessing.cpp │ │ ├── 16_synchronous_custom_postprocessing.cpp │ │ ├── 17_synchronous_custom_output.cpp │ │ ├── 18_synchronous_custom_all_and_datum.cpp │ │ ├── CMakeLists.txt │ │ └── README.md │ ├── tutorial_api_python/ │ │ ├── 01_body_from_image.py │ │ ├── 02_whole_body_from_image.py │ │ ├── 04_keypoints_from_images.py │ │ ├── 05_keypoints_from_images_multi_gpu.py │ │ ├── 06_face_from_image.py │ │ ├── 07_hand_from_image.py │ │ ├── 08_heatmaps_from_image.py │ │ ├── 09_keypoints_from_heatmaps.py │ │ ├── 12_asynchronous_custom_output.py │ │ ├── CMakeLists.txt │ │ ├── README.md │ │ └── openpose_python.py │ └── user_code/ │ ├── CMakeLists.txt │ └── README.md ├── include/ │ ├── openpose/ │ │ ├── 3d/ │ │ │ ├── cameraParameterReader.hpp │ │ │ ├── headers.hpp │ │ │ ├── jointAngleEstimation.hpp │ │ │ ├── poseTriangulation.hpp │ │ │ ├── wJointAngleEstimation.hpp │ │ │ └── wPoseTriangulation.hpp │ │ ├── calibration/ │ │ │ ├── cameraParameterEstimation.hpp │ │ │ └── headers.hpp │ │ ├── core/ │ │ │ ├── array.hpp │ │ │ ├── arrayCpuGpu.hpp │ │ │ ├── common.hpp │ │ │ ├── cvMatToOpInput.hpp │ │ │ ├── cvMatToOpOutput.hpp │ │ │ ├── datum.hpp │ │ │ ├── enumClasses.hpp │ │ │ ├── gpuRenderer.hpp │ │ │ ├── headers.hpp │ │ │ ├── keepTopNPeople.hpp │ │ │ ├── keypointScaler.hpp │ │ │ ├── macros.hpp │ │ │ ├── matrix.hpp │ │ │ ├── opOutputToCvMat.hpp │ │ │ ├── point.hpp │ │ │ ├── rectangle.hpp │ │ │ ├── renderer.hpp │ │ │ ├── scaleAndSizeExtractor.hpp │ │ │ ├── string.hpp │ │ │ ├── verbosePrinter.hpp │ │ │ ├── wCvMatToOpInput.hpp │ │ │ ├── wCvMatToOpOutput.hpp │ │ │ ├── wKeepTopNPeople.hpp │ │ │ ├── wKeypointScaler.hpp │ │ │ ├── wOpOutputToCvMat.hpp │ │ │ ├── wScaleAndSizeExtractor.hpp │ │ │ └── wVerbosePrinter.hpp │ │ ├── face/ │ │ │ ├── faceCpuRenderer.hpp │ │ │ ├── faceDetector.hpp │ │ │ ├── faceDetectorOpenCV.hpp │ │ │ ├── faceExtractorCaffe.hpp │ │ │ ├── faceExtractorNet.hpp │ │ │ ├── faceGpuRenderer.hpp │ │ │ ├── faceParameters.hpp │ │ │ ├── faceRenderer.hpp │ │ │ ├── headers.hpp │ │ │ ├── renderFace.hpp │ │ │ ├── wFaceDetector.hpp │ │ │ ├── wFaceDetectorOpenCV.hpp │ │ │ ├── wFaceExtractorNet.hpp │ │ │ └── wFaceRenderer.hpp │ │ ├── filestream/ │ │ │ ├── bvhSaver.hpp │ │ │ ├── cocoJsonSaver.hpp │ │ │ ├── enumClasses.hpp │ │ │ ├── fileSaver.hpp │ │ │ ├── fileStream.hpp │ │ │ ├── headers.hpp │ │ │ ├── heatMapSaver.hpp │ │ │ ├── imageSaver.hpp │ │ │ ├── jsonOfstream.hpp │ │ │ ├── keypointSaver.hpp │ │ │ ├── peopleJsonSaver.hpp │ │ │ ├── udpSender.hpp │ │ │ ├── videoSaver.hpp │ │ │ ├── wBvhSaver.hpp │ │ │ ├── wCocoJsonSaver.hpp │ │ │ ├── wFaceSaver.hpp │ │ │ ├── wHandSaver.hpp │ │ │ ├── wHeatMapSaver.hpp │ │ │ ├── wImageSaver.hpp │ │ │ ├── wPeopleJsonSaver.hpp │ │ │ ├── wPoseSaver.hpp │ │ │ ├── wUdpSender.hpp │ │ │ ├── wVideoSaver.hpp │ │ │ └── wVideoSaver3D.hpp │ │ ├── flags.hpp │ │ ├── gpu/ │ │ │ ├── cuda.hpp │ │ │ ├── enumClasses.hpp │ │ │ ├── gpu.hpp │ │ │ └── headers.hpp │ │ ├── gui/ │ │ │ ├── enumClasses.hpp │ │ │ ├── frameDisplayer.hpp │ │ │ ├── gui.hpp │ │ │ ├── gui3D.hpp │ │ │ ├── guiAdam.hpp │ │ │ ├── guiInfoAdder.hpp │ │ │ ├── headers.hpp │ │ │ ├── wGui.hpp │ │ │ ├── wGui3D.hpp │ │ │ ├── wGuiAdam.hpp │ │ │ └── wGuiInfoAdder.hpp │ │ ├── hand/ │ │ │ ├── handCpuRenderer.hpp │ │ │ ├── handDetector.hpp │ │ │ ├── handDetectorFromTxt.hpp │ │ │ ├── handExtractorCaffe.hpp │ │ │ ├── handExtractorNet.hpp │ │ │ ├── handGpuRenderer.hpp │ │ │ ├── handParameters.hpp │ │ │ ├── handRenderer.hpp │ │ │ ├── headers.hpp │ │ │ ├── renderHand.hpp │ │ │ ├── wHandDetector.hpp │ │ │ ├── wHandDetectorFromTxt.hpp │ │ │ ├── wHandDetectorTracking.hpp │ │ │ ├── wHandDetectorUpdate.hpp │ │ │ ├── wHandExtractorNet.hpp │ │ │ └── wHandRenderer.hpp │ │ ├── headers.hpp │ │ ├── net/ │ │ │ ├── bodyPartConnectorBase.hpp │ │ │ ├── bodyPartConnectorCaffe.hpp │ │ │ ├── headers.hpp │ │ │ ├── maximumBase.hpp │ │ │ ├── maximumCaffe.hpp │ │ │ ├── net.hpp │ │ │ ├── netCaffe.hpp │ │ │ ├── netOpenCv.hpp │ │ │ ├── nmsBase.hpp │ │ │ ├── nmsCaffe.hpp │ │ │ ├── resizeAndMergeBase.hpp │ │ │ └── resizeAndMergeCaffe.hpp │ │ ├── pose/ │ │ │ ├── enumClasses.hpp │ │ │ ├── headers.hpp │ │ │ ├── poseCpuRenderer.hpp │ │ │ ├── poseExtractor.hpp │ │ │ ├── poseExtractorCaffe.hpp │ │ │ ├── poseExtractorNet.hpp │ │ │ ├── poseGpuRenderer.hpp │ │ │ ├── poseParameters.hpp │ │ │ ├── poseParametersRender.hpp │ │ │ ├── poseRenderer.hpp │ │ │ ├── renderPose.hpp │ │ │ ├── wPoseExtractor.hpp │ │ │ ├── wPoseExtractorNet.hpp │ │ │ └── wPoseRenderer.hpp │ │ ├── producer/ │ │ │ ├── datumProducer.hpp │ │ │ ├── enumClasses.hpp │ │ │ ├── flirReader.hpp │ │ │ ├── headers.hpp │ │ │ ├── imageDirectoryReader.hpp │ │ │ ├── ipCameraReader.hpp │ │ │ ├── producer.hpp │ │ │ ├── spinnakerWrapper.hpp │ │ │ ├── videoCaptureReader.hpp │ │ │ ├── videoReader.hpp │ │ │ ├── wDatumProducer.hpp │ │ │ └── webcamReader.hpp │ │ ├── thread/ │ │ │ ├── enumClasses.hpp │ │ │ ├── headers.hpp │ │ │ ├── priorityQueue.hpp │ │ │ ├── queue.hpp │ │ │ ├── queueBase.hpp │ │ │ ├── subThread.hpp │ │ │ ├── subThreadNoQueue.hpp │ │ │ ├── subThreadQueueIn.hpp │ │ │ ├── subThreadQueueInOut.hpp │ │ │ ├── subThreadQueueOut.hpp │ │ │ ├── thread.hpp │ │ │ ├── threadManager.hpp │ │ │ ├── wFpsMax.hpp │ │ │ ├── wIdGenerator.hpp │ │ │ ├── wQueueAssembler.hpp │ │ │ ├── wQueueOrderer.hpp │ │ │ ├── worker.hpp │ │ │ ├── workerConsumer.hpp │ │ │ └── workerProducer.hpp │ │ ├── tracking/ │ │ │ ├── headers.hpp │ │ │ ├── personIdExtractor.hpp │ │ │ ├── personTracker.hpp │ │ │ └── wPersonIdExtractor.hpp │ │ ├── unity/ │ │ │ ├── headers.hpp │ │ │ └── unityBinding.hpp │ │ ├── utilities/ │ │ │ ├── check.hpp │ │ │ ├── enumClasses.hpp │ │ │ ├── errorAndLog.hpp │ │ │ ├── fastMath.hpp │ │ │ ├── fileSystem.hpp │ │ │ ├── flagsToOpenPose.hpp │ │ │ ├── headers.hpp │ │ │ ├── keypoint.hpp │ │ │ ├── openCv.hpp │ │ │ ├── pointerContainer.hpp │ │ │ ├── profiler.hpp │ │ │ ├── standard.hpp │ │ │ └── string.hpp │ │ └── wrapper/ │ │ ├── enumClasses.hpp │ │ ├── headers.hpp │ │ ├── wrapper.hpp │ │ ├── wrapperAuxiliary.hpp │ │ ├── wrapperStructExtra.hpp │ │ ├── wrapperStructFace.hpp │ │ ├── wrapperStructGui.hpp │ │ ├── wrapperStructHand.hpp │ │ ├── wrapperStructInput.hpp │ │ ├── wrapperStructOutput.hpp │ │ └── wrapperStructPose.hpp │ └── openpose_private/ │ ├── 3d/ │ │ └── poseTriangulationPrivate.hpp │ ├── calibration/ │ │ └── gridPatternFunctions.hpp │ ├── gpu/ │ │ ├── cl2.hpp │ │ ├── cuda.hu │ │ └── opencl.hcl │ ├── tracking/ │ │ └── pyramidalLK.hpp │ └── utilities/ │ ├── avx.hpp │ ├── openCvMultiversionHeaders.hpp │ ├── openCvPrivate.hpp │ └── render.hu ├── models/ │ ├── cameraParameters/ │ │ └── flir/ │ │ └── 17012332.xml.example │ ├── face/ │ │ └── pose_deploy.prototxt │ ├── getModels.bat │ ├── getModels.sh │ ├── hand/ │ │ └── pose_deploy.prototxt │ └── pose/ │ ├── body_25/ │ │ └── pose_deploy.prototxt │ ├── coco/ │ │ └── pose_deploy_linevec.prototxt │ └── mpi/ │ ├── pose_deploy_linevec.prototxt │ └── pose_deploy_linevec_faster_4_stages.prototxt ├── python/ │ ├── CMakeLists.txt │ └── openpose/ │ ├── CMakeLists.txt │ ├── __init__.py │ └── openpose_python.cpp ├── scripts/ │ ├── CI/ │ │ ├── configure.sh │ │ ├── configure_cmake.sh │ │ ├── configure_make.sh │ │ ├── defaults.sh │ │ ├── install_deps_osx.sh │ │ ├── install_deps_ubuntu.sh │ │ ├── run_make.sh │ │ └── run_tests.sh │ ├── osx/ │ │ ├── install_brew.sh │ │ ├── install_deps.sh │ │ └── mac_opencl_patch.txt │ ├── tests/ │ │ ├── drawProtoTxt.sh │ │ ├── hand_accuracy_test.sh │ │ ├── pose_accuracy_all_val.sh │ │ ├── pose_accuracy_car_val.sh │ │ ├── pose_accuracy_coco_test_dev.sh │ │ ├── pose_accuracy_coco_val.sh │ │ ├── pose_time_Caffe_layers.sh │ │ ├── pose_time_visual_GUI.sh │ │ └── speed_test.sh │ ├── ubuntu/ │ │ ├── Makefile.config.Ubuntu16_cuda8_JetsonTX2 │ │ ├── Makefile.config.Ubuntu16_cuda9_JetsonTX2_JetPack33 │ │ ├── Makefile.example │ │ ├── install_caffe_and_openpose_JetsonTX2_JetPack3.1.sh │ │ ├── install_caffe_and_openpose_JetsonTX2_JetPack3.3.sh │ │ ├── install_cuda.sh │ │ ├── install_cudnn_up_to_Ubuntu16.sh │ │ ├── install_deps.sh │ │ ├── install_openpose_JetsonTX2_JetPack3.1.sh │ │ └── install_openpose_JetsonTX2_JetPack3.3.sh │ └── ubuntu_deprecated/ │ ├── Makefile.config.Ubuntu14_cuda7.example │ ├── Makefile.config.Ubuntu14_cuda8.example │ ├── Makefile.config.Ubuntu16_cuda10.example │ ├── Makefile.config.Ubuntu16_cuda7.example │ ├── Makefile.config.Ubuntu16_cuda8.example │ ├── Makefile.config.Ubuntu16_cuda9.example │ ├── copy_makefile_files.sh │ ├── install_caffe_and_openpose_if_cuda8.sh │ └── install_openpose_if_cuda8.sh └── src/ ├── CMakeLists.txt └── openpose/ ├── 3d/ │ ├── CMakeLists.txt │ ├── cameraParameterReader.cpp │ ├── defineTemplates.cpp │ ├── jointAngleEstimation.cpp │ ├── poseTriangulation.cpp │ └── poseTriangulationPrivate.cpp ├── CMakeLists.txt ├── calibration/ │ ├── CMakeLists.txt │ ├── cameraParameterEstimation.cpp │ └── gridPatternFunctions.cpp ├── core/ │ ├── CMakeLists.txt │ ├── array.cpp │ ├── arrayCpuGpu.cpp │ ├── cvMatToOpInput.cpp │ ├── cvMatToOpOutput.cpp │ ├── datum.cpp │ ├── defineTemplates.cpp │ ├── gpuRenderer.cpp │ ├── keepTopNPeople.cpp │ ├── keypointScaler.cpp │ ├── matrix.cpp │ ├── opOutputToCvMat.cpp │ ├── point.cpp │ ├── rectangle.cpp │ ├── renderer.cpp │ ├── scaleAndSizeExtractor.cpp │ ├── string.cpp │ └── verbosePrinter.cpp ├── face/ │ ├── CMakeLists.txt │ ├── defineTemplates.cpp │ ├── faceCpuRenderer.cpp │ ├── faceDetector.cpp │ ├── faceDetectorOpenCV.cpp │ ├── faceExtractorCaffe.cpp │ ├── faceExtractorNet.cpp │ ├── faceGpuRenderer.cpp │ ├── faceRenderer.cpp │ ├── renderFace.cpp │ └── renderFace.cu ├── filestream/ │ ├── CMakeLists.txt │ ├── bvhSaver.cpp │ ├── cocoJsonSaver.cpp │ ├── defineTemplates.cpp │ ├── fileSaver.cpp │ ├── fileStream.cpp │ ├── heatMapSaver.cpp │ ├── imageSaver.cpp │ ├── jsonOfstream.cpp │ ├── keypointSaver.cpp │ ├── peopleJsonSaver.cpp │ ├── udpSender.cpp │ └── videoSaver.cpp ├── gpu/ │ ├── CMakeLists.txt │ ├── cuda.cpp │ ├── cuda.cu │ ├── gpu.cpp │ └── opencl.cpp ├── gui/ │ ├── CMakeLists.txt │ ├── defineTemplates.cpp │ ├── frameDisplayer.cpp │ ├── gui.cpp │ ├── gui3D.cpp │ ├── guiAdam.cpp │ └── guiInfoAdder.cpp ├── hand/ │ ├── CMakeLists.txt │ ├── defineTemplates.cpp │ ├── handCpuRenderer.cpp │ ├── handDetector.cpp │ ├── handDetectorFromTxt.cpp │ ├── handExtractorCaffe.cpp │ ├── handExtractorNet.cpp │ ├── handGpuRenderer.cpp │ ├── handRenderer.cpp │ ├── renderHand.cpp │ └── renderHand.cu ├── net/ │ ├── CMakeLists.txt │ ├── bodyPartConnectorBase.cpp │ ├── bodyPartConnectorBase.cu │ ├── bodyPartConnectorBaseCL.cpp │ ├── bodyPartConnectorCaffe.cpp │ ├── maximumBase.cpp │ ├── maximumBase.cu │ ├── maximumCaffe.cpp │ ├── netCaffe.cpp │ ├── netOpenCv.cpp │ ├── nmsBase.cpp │ ├── nmsBase.cu │ ├── nmsBaseCL.cpp │ ├── nmsCaffe.cpp │ ├── resizeAndMergeBase.cpp │ ├── resizeAndMergeBase.cu │ ├── resizeAndMergeBaseCL.cpp │ └── resizeAndMergeCaffe.cpp ├── pose/ │ ├── CMakeLists.txt │ ├── defineTemplates.cpp │ ├── poseCpuRenderer.cpp │ ├── poseExtractor.cpp │ ├── poseExtractorCaffe.cpp │ ├── poseExtractorNet.cpp │ ├── poseGpuRenderer.cpp │ ├── poseParameters.cpp │ ├── poseParametersRender.cpp │ ├── poseRenderer.cpp │ ├── renderPose.cpp │ └── renderPose.cu ├── producer/ │ ├── CMakeLists.txt │ ├── datumProducer.cpp │ ├── defineTemplates.cpp │ ├── flirReader.cpp │ ├── imageDirectoryReader.cpp │ ├── ipCameraReader.cpp │ ├── producer.cpp │ ├── spinnakerWrapper.cpp │ ├── videoCaptureReader.cpp │ ├── videoReader.cpp │ └── webcamReader.cpp ├── thread/ │ ├── CMakeLists.txt │ └── defineTemplates.cpp ├── tracking/ │ ├── CMakeLists.txt │ ├── defineTemplates.cpp │ ├── personIdExtractor.cpp │ ├── personTracker.cpp │ ├── pyramidalLK.cpp │ └── pyramidalLK.cu ├── unity/ │ ├── CMakeLists.txt │ └── unityBinding.cpp ├── utilities/ │ ├── CMakeLists.txt │ ├── errorAndLog.cpp │ ├── fileSystem.cpp │ ├── flagsToOpenPose.cpp │ ├── keypoint.cpp │ ├── openCv.cpp │ ├── openCvPrivate.cpp │ ├── profiler.cpp │ └── string.cpp └── wrapper/ ├── CMakeLists.txt ├── defineTemplates.cpp ├── wrapperAuxiliary.cpp ├── wrapperStructExtra.cpp ├── wrapperStructFace.cpp ├── wrapperStructGui.cpp ├── wrapperStructHand.cpp ├── wrapperStructInput.cpp ├── wrapperStructOutput.cpp └── wrapperStructPose.cpp