提交 40cdcea6 编写于 作者: G gineshidalgo99

Added user asynchronous output example

上级 b4efd0e5
...@@ -34,6 +34,7 @@ You might select multiple topics, delete the rest: ...@@ -34,6 +34,7 @@ You might select multiple topics, delete the rest:
### Your system configuration ### Your system configuration
**Installation mode**: CMake or sh script or manual Makefile installation.
**Operating system** (`lsb_release -a` in Ubuntu): **Operating system** (`lsb_release -a` in Ubuntu):
**CUDA version** (`cat /usr/local/cuda/version.txt` in most cases): **CUDA version** (`cat /usr/local/cuda/version.txt` in most cases):
**cuDNN version**: **cuDNN version**:
......
...@@ -161,21 +161,21 @@ Please cite these papers in your publications if it helps your research (the fac ...@@ -161,21 +161,21 @@ Please cite these papers in your publications if it helps your research (the fac
booktitle = {CVPR}, booktitle = {CVPR},
title = {Realtime Multi-Person 2D Pose Estimation using Part Affinity Fields}, title = {Realtime Multi-Person 2D Pose Estimation using Part Affinity Fields},
year = {2017} year = {2017}
} }
@inproceedings{simon2017hand, @inproceedings{simon2017hand,
author = {Tomas Simon and Hanbyul Joo and Iain Matthews and Yaser Sheikh}, author = {Tomas Simon and Hanbyul Joo and Iain Matthews and Yaser Sheikh},
booktitle = {CVPR}, booktitle = {CVPR},
title = {Hand Keypoint Detection in Single Images using Multiview Bootstrapping}, title = {Hand Keypoint Detection in Single Images using Multiview Bootstrapping},
year = {2017} year = {2017}
} }
@inproceedings{wei2016cpm, @inproceedings{wei2016cpm,
author = {Shih-En Wei and Varun Ramakrishna and Takeo Kanade and Yaser Sheikh}, author = {Shih-En Wei and Varun Ramakrishna and Takeo Kanade and Yaser Sheikh},
booktitle = {CVPR}, booktitle = {CVPR},
title = {Convolutional pose machines}, title = {Convolutional pose machines},
year = {2016} year = {2016}
} }
......
...@@ -131,6 +131,7 @@ Each flag is divided into flag name, default value, and description. ...@@ -131,6 +131,7 @@ Each flag is divided into flag name, default value, and description.
- DEFINE_bool(frame_flip, false, "Flip/mirror each frame (e.g. for real time webcam demonstrations)."); - DEFINE_bool(frame_flip, false, "Flip/mirror each frame (e.g. for real time webcam demonstrations).");
- DEFINE_int32(frame_rotate, 0, "Rotate each frame, 4 possible values: 0, 90, 180, 270."); - DEFINE_int32(frame_rotate, 0, "Rotate each frame, 4 possible values: 0, 90, 180, 270.");
- DEFINE_bool(frames_repeat, false, "Repeat frames when finished."); - DEFINE_bool(frames_repeat, false, "Repeat frames when finished.");
- DEFINE_bool(process_real_time, false, "Enable to keep the original source frame rate (e.g. for video). If the processing time is too long, it will skip frames. If it is too fast, it will slow it down.");
3. OpenPose 3. OpenPose
- DEFINE_string(model_folder, "models/", "Folder path (absolute or relative) where the models (pose, face, ...) are located."); - DEFINE_string(model_folder, "models/", "Folder path (absolute or relative) where the models (pose, face, ...) are located.");
...@@ -183,7 +184,6 @@ Each flag is divided into flag name, default value, and description. ...@@ -183,7 +184,6 @@ Each flag is divided into flag name, default value, and description.
11. Display 11. Display
- DEFINE_bool(fullscreen, false, "Run in full-screen mode (press f during runtime to toggle)."); - DEFINE_bool(fullscreen, false, "Run in full-screen mode (press f during runtime to toggle).");
- DEFINE_bool(process_real_time, false, "Enable to keep the original source frame rate (e.g. for video). If the processing time is too long, it will skip frames. If it is too fast, it will slow it down.");
- DEFINE_bool(no_gui_verbose, false, "Do not write text on output images on GUI (e.g. number of current frame and people). It does not affect the pose rendering."); - DEFINE_bool(no_gui_verbose, false, "Do not write text on output images on GUI (e.g. number of current frame and people). It does not affect the pose rendering.");
- DEFINE_bool(no_display, false, "Do not open a display window. Useful if there is no X server and/or to slightly speed up the processing if visual output is not required."); - DEFINE_bool(no_display, false, "Do not open a display window. Useful if there is no X server and/or to slightly speed up the processing if visual output is not required.");
12. Result Saving 12. Result Saving
......
...@@ -116,3 +116,4 @@ OpenPose Library - Release Notes ...@@ -116,3 +116,4 @@ OpenPose Library - Release Notes
## Current version (future OpenPose 1.1.1) ## Current version (future OpenPose 1.1.1)
1. Main improvements: 1. Main improvements:
1. COCO JSON file outputs 0 as score for non-detected keypoints. 1. COCO JSON file outputs 0 as score for non-detected keypoints.
2. Added example for OpenPose for user asynchronous output and cleaned all `tutorial_wrapper/` examples.
...@@ -4,7 +4,7 @@ ...@@ -4,7 +4,7 @@
// 1. Read folder of images / video / webcam (`producer` module) // 1. Read folder of images / video / webcam (`producer` module)
// 2. Extract and render body keypoint / heatmap / PAF of that image (`pose` module) // 2. Extract and render body keypoint / heatmap / PAF of that image (`pose` module)
// 3. Extract and render face keypoint / heatmap / PAF of that image (`face` module) // 3. Extract and render face keypoint / heatmap / PAF of that image (`face` module)
// 4. Save the results on disc (`filestream` module) // 4. Save the results on disk (`filestream` module)
// 5. Display the rendered pose (`gui` module) // 5. Display the rendered pose (`gui` module)
// Everything in a multi-thread scenario (`thread` module) // Everything in a multi-thread scenario (`thread` module)
// Points 2 to 5 are included in the `wrapper` module // Points 2 to 5 are included in the `wrapper` module
...@@ -21,21 +21,8 @@ ...@@ -21,21 +21,8 @@
// Other 3rdparty dependencies // Other 3rdparty dependencies
#include <gflags/gflags.h> // DEFINE_bool, DEFINE_int32, DEFINE_int64, DEFINE_uint64, DEFINE_double, DEFINE_string #include <gflags/gflags.h> // DEFINE_bool, DEFINE_int32, DEFINE_int64, DEFINE_uint64, DEFINE_double, DEFINE_string
#include <glog/logging.h> // google::InitGoogleLogging #include <glog/logging.h> // google::InitGoogleLogging
// OpenPose dependencies // OpenPose dependencies
// Option a) Importing all modules
#include <openpose/headers.hpp> #include <openpose/headers.hpp>
// Option b) Manually importing the desired modules. Recommended if you only intend to use a few modules.
// #include <openpose/core/headers.hpp>
// #include <openpose/experimental/headers.hpp>
// #include <openpose/face/headers.hpp>
// #include <openpose/filestream/headers.hpp>
// #include <openpose/gui/headers.hpp>
// #include <openpose/pose/headers.hpp>
// #include <openpose/producer/headers.hpp>
// #include <openpose/thread/headers.hpp>
// #include <openpose/utilities/headers.hpp>
// #include <openpose/wrapper/headers.hpp>
// See all the available parameter options withe the `--help` flag. E.g. `./build/examples/openpose/openpose.bin --help`. // See all the available parameter options withe the `--help` flag. E.g. `./build/examples/openpose/openpose.bin --help`.
// Note: This command will show you flags for other unnecessary 3rdparty files. Check only the flags for the OpenPose // Note: This command will show you flags for other unnecessary 3rdparty files. Check only the flags for the OpenPose
...@@ -60,6 +47,8 @@ DEFINE_uint64(frame_last, -1, "Finish on desired frame ...@@ -60,6 +47,8 @@ DEFINE_uint64(frame_last, -1, "Finish on desired frame
DEFINE_bool(frame_flip, false, "Flip/mirror each frame (e.g. for real time webcam demonstrations)."); DEFINE_bool(frame_flip, false, "Flip/mirror each frame (e.g. for real time webcam demonstrations).");
DEFINE_int32(frame_rotate, 0, "Rotate each frame, 4 possible values: 0, 90, 180, 270."); DEFINE_int32(frame_rotate, 0, "Rotate each frame, 4 possible values: 0, 90, 180, 270.");
DEFINE_bool(frames_repeat, false, "Repeat frames when finished."); DEFINE_bool(frames_repeat, false, "Repeat frames when finished.");
DEFINE_bool(process_real_time, false, "Enable to keep the original source frame rate (e.g. for video). If the processing time is"
" too long, it will skip frames. If it is too fast, it will slow it down.");
// OpenPose // OpenPose
DEFINE_string(model_folder, "models/", "Folder path (absolute or relative) where the models (pose, face, ...) are located."); DEFINE_string(model_folder, "models/", "Folder path (absolute or relative) where the models (pose, face, ...) are located.");
DEFINE_string(resolution, "1280x720", "The image resolution (display and output). Use \"-1x-1\" to force the program to use the" DEFINE_string(resolution, "1280x720", "The image resolution (display and output). Use \"-1x-1\" to force the program to use the"
...@@ -149,8 +138,6 @@ DEFINE_double(hand_alpha_pose, 0.6, "Analogous to `alpha_pos ...@@ -149,8 +138,6 @@ DEFINE_double(hand_alpha_pose, 0.6, "Analogous to `alpha_pos
DEFINE_double(hand_alpha_heatmap, 0.7, "Analogous to `alpha_heatmap` but applied to hand."); DEFINE_double(hand_alpha_heatmap, 0.7, "Analogous to `alpha_heatmap` but applied to hand.");
// Display // Display
DEFINE_bool(fullscreen, false, "Run in full-screen mode (press f during runtime to toggle)."); DEFINE_bool(fullscreen, false, "Run in full-screen mode (press f during runtime to toggle).");
DEFINE_bool(process_real_time, false, "Enable to keep the original source frame rate (e.g. for video). If the processing time is"
" too long, it will skip frames. If it is too fast, it will slow it down.");
DEFINE_bool(no_gui_verbose, false, "Do not write text on output images on GUI (e.g. number of current frame and people). It" DEFINE_bool(no_gui_verbose, false, "Do not write text on output images on GUI (e.g. number of current frame and people). It"
" does not affect the pose rendering."); " does not affect the pose rendering.");
DEFINE_bool(no_display, false, "Do not open a display window. Useful if there is no X server and/or to slightly speed up" DEFINE_bool(no_display, false, "Do not open a display window. Useful if there is no X server and/or to slightly speed up"
......
...@@ -17,7 +17,7 @@ clear && clear ...@@ -17,7 +17,7 @@ clear && clear
# Parameters # Parameters
IMAGE_FOLDER=/home/gines/devel/images/val2014/ IMAGE_FOLDER=/home/gines/devel/images/val2014/
JSON_FOLDER=../evaluation/coco/results/openpose/ JSON_FOLDER=../evaluation/coco_val_jsons/
OP_BIN=./build/examples/openpose/openpose.bin OP_BIN=./build/examples/openpose/openpose.bin
# 1 scale # 1 scale
......
...@@ -34,13 +34,13 @@ DEFINE_string(video, "", "Use a video file instea ...@@ -34,13 +34,13 @@ DEFINE_string(video, "", "Use a video file instea
" example video."); " example video.");
DEFINE_string(image_dir, "", "Process a directory of images. Use `examples/media/` for our default example folder with 20" DEFINE_string(image_dir, "", "Process a directory of images. Use `examples/media/` for our default example folder with 20"
" images. Read all standard formats (jpg, png, bmp, etc.)."); " images. Read all standard formats (jpg, png, bmp, etc.).");
DEFINE_bool(process_real_time, false, "Enable to keep the original source frame rate (e.g. for video). If the processing time is"
" too long, it will skip frames. If it is too fast, it will slow it down.");
// OpenPose // OpenPose
DEFINE_string(resolution, "1280x720", "The image resolution (display and output). Use \"-1x-1\" to force the program to use the" DEFINE_string(resolution, "1280x720", "The image resolution (display and output). Use \"-1x-1\" to force the program to use the"
" default images resolution."); " default images resolution.");
// Consumer // Consumer
DEFINE_bool(fullscreen, false, "Run in full-screen mode (press f during runtime to toggle)."); DEFINE_bool(fullscreen, false, "Run in full-screen mode (press f during runtime to toggle).");
DEFINE_bool(process_real_time, false, "Enable to keep the original source frame rate (e.g. for video). If the processing time is"
" too long, it will skip frames. If it is too fast, it will slow it down.");
int openPoseTutorialThread1() int openPoseTutorialThread1()
{ {
......
...@@ -35,13 +35,13 @@ DEFINE_string(video, "", "Use a video file instea ...@@ -35,13 +35,13 @@ DEFINE_string(video, "", "Use a video file instea
" example video."); " example video.");
DEFINE_string(image_dir, "", "Process a directory of images. Use `examples/media/` for our default example folder with 20" DEFINE_string(image_dir, "", "Process a directory of images. Use `examples/media/` for our default example folder with 20"
" images. Read all standard formats (jpg, png, bmp, etc.)."); " images. Read all standard formats (jpg, png, bmp, etc.).");
DEFINE_bool(process_real_time, false, "Enable to keep the original source frame rate (e.g. for video). If the processing time is"
" too long, it will skip frames. If it is too fast, it will slow it down.");
// OpenPose // OpenPose
DEFINE_string(resolution, "1280x720", "The image resolution (display and output). Use \"-1x-1\" to force the program to use the" DEFINE_string(resolution, "1280x720", "The image resolution (display and output). Use \"-1x-1\" to force the program to use the"
" default images resolution."); " default images resolution.");
// Consumer // Consumer
DEFINE_bool(fullscreen, false, "Run in full-screen mode (press f during runtime to toggle)."); DEFINE_bool(fullscreen, false, "Run in full-screen mode (press f during runtime to toggle).");
DEFINE_bool(process_real_time, false, "Enable to keep the original source frame rate (e.g. for video). If the processing time is"
" too long, it will skip frames. If it is too fast, it will slow it down.");
// This class can be implemented either as a template or as a simple class given // This class can be implemented either as a template or as a simple class given
// that the user usually knows which kind of data he will move between the queues, // that the user usually knows which kind of data he will move between the queues,
......
// ------------------------- OpenPose Library Tutorial - Thread - Example 2 - Synchronous ------------------------- // ------------------------- OpenPose Library Tutorial - Thread - Example 2 - Synchronous -------------------------
// Synchronous mode: ideal for performance. The user can add his own frames producer / post-processor / consumer to the OpenPose wrapper or use the default ones. // Synchronous mode: ideal for performance. The user can add his own frames producer / post-processor / consumer to the OpenPose wrapper or use the
// default ones.
// This example shows the user how to use the OpenPose wrapper class: // This example shows the user how to use the OpenPose wrapper class:
// 1. Extract and render keypoint / heatmap / PAF of that image // 1. User reads images
// 2. Save the results on disc // 2. Extract and render keypoint / heatmap / PAF of that image
// 3. Display the rendered pose // 3. Save the results on disk
// 4. User displays the rendered pose
// Everything in a multi-thread scenario // Everything in a multi-thread scenario
// In addition to the previous OpenPose modules, we also need to use: // In addition to the previous OpenPose modules, we also need to use:
// 1. `core` module: // 1. `core` module:
...@@ -15,27 +17,12 @@ ...@@ -15,27 +17,12 @@
// C++ std library dependencies // C++ std library dependencies
#include <chrono> // `std::chrono::` functions and classes, e.g. std::chrono::milliseconds #include <chrono> // `std::chrono::` functions and classes, e.g. std::chrono::milliseconds
#include <string>
#include <thread> // std::this_thread #include <thread> // std::this_thread
#include <vector>
// Other 3rdparty dependencies // Other 3rdparty dependencies
#include <gflags/gflags.h> // DEFINE_bool, DEFINE_int32, DEFINE_int64, DEFINE_uint64, DEFINE_double, DEFINE_string #include <gflags/gflags.h> // DEFINE_bool, DEFINE_int32, DEFINE_int64, DEFINE_uint64, DEFINE_double, DEFINE_string
#include <glog/logging.h> // google::InitGoogleLogging #include <glog/logging.h> // google::InitGoogleLogging
// OpenPose dependencies // OpenPose dependencies
// Option a) Importing all modules
#include <openpose/headers.hpp> #include <openpose/headers.hpp>
// Option b) Manually importing the desired modules. Recommended if you only intend to use a few modules.
// #include <openpose/core/headers.hpp>
// #include <openpose/experimental/headers.hpp>
// #include <openpose/face/headers.hpp>
// #include <openpose/filestream/headers.hpp>
// #include <openpose/gui/headers.hpp>
// #include <openpose/pose/headers.hpp>
// #include <openpose/producer/headers.hpp>
// #include <openpose/thread/headers.hpp>
// #include <openpose/utilities/headers.hpp>
// #include <openpose/wrapper/headers.hpp>
// See all the available parameter options withe the `--help` flag. E.g. `./build/examples/openpose/openpose.bin --help`. // See all the available parameter options withe the `--help` flag. E.g. `./build/examples/openpose/openpose.bin --help`.
// Note: This command will show you flags for other unnecessary 3rdparty files. Check only the flags for the OpenPose // Note: This command will show you flags for other unnecessary 3rdparty files. Check only the flags for the OpenPose
...@@ -303,7 +290,10 @@ public: ...@@ -303,7 +290,10 @@ public:
// Display rendered output image // Display rendered output image
cv::imshow("User worker GUI", datumsPtr->at(0).cvOutputData); cv::imshow("User worker GUI", datumsPtr->at(0).cvOutputData);
cv::waitKey(1); // It displays the image and sleeps at least 1 ms (it usually sleeps ~5-10 msec to display the image) // Display image and sleeps at least 1 ms (it usually sleeps ~5-10 msec to display the image)
const char key = cv::waitKey(1);
if (key == 27)
this->stop();
} }
} }
catch (const std::exception& e) catch (const std::exception& e)
...@@ -364,6 +354,7 @@ int openPoseTutorialWrapper2() ...@@ -364,6 +354,7 @@ int openPoseTutorialWrapper2()
const auto workerOutputOnNewThread = true; const auto workerOutputOnNewThread = true;
opWrapper.setWorkerOutput(wUserOutput, workerOutputOnNewThread); opWrapper.setWorkerOutput(wUserOutput, workerOutputOnNewThread);
// Configure OpenPose // Configure OpenPose
op::log("Configuring OpenPose wrapper.", op::Priority::Low, __LINE__, __FUNCTION__, __FILE__);
const op::WrapperStructPose wrapperStructPose{netInputSize, outputSize, keypointScale, FLAGS_num_gpu, const op::WrapperStructPose wrapperStructPose{netInputSize, outputSize, keypointScale, FLAGS_num_gpu,
FLAGS_num_gpu_start, FLAGS_scale_number, (float)FLAGS_scale_gap, FLAGS_num_gpu_start, FLAGS_scale_number, (float)FLAGS_scale_gap,
op::flagsToRenderMode(FLAGS_render_pose), poseModel, op::flagsToRenderMode(FLAGS_render_pose), poseModel,
......
// ------------------------- OpenPose Library Tutorial - Thread - Example 1 - Asynchronous ------------------------- // ------------------------- OpenPose Library Tutorial - Thread - Example 1 - Asynchronous -------------------------
// Asynchronous mode: ideal for fast prototyping when performance is not an issue. The user emplaces/pushes and pops frames from the OpenPose wrapper when he desires to. // Asynchronous mode: ideal for fast prototyping when performance is not an issue. The user emplaces/pushes and pops frames from the OpenPose wrapper
// when he desires to.
// This example shows the user how to use the OpenPose wrapper class: // This example shows the user how to use the OpenPose wrapper class:
// 1. Extract and render keypoint / heatmap / PAF of that image // 1. User reads images
// 2. Save the results on disc // 2. Extract and render keypoint / heatmap / PAF of that image
// 3. Display the rendered pose // 3. Save the results on disk
// 4. User displays the rendered pose
// Everything in a multi-thread scenario // Everything in a multi-thread scenario
// In addition to the previous OpenPose modules, we also need to use: // In addition to the previous OpenPose modules, we also need to use:
// 1. `core` module: // 1. `core` module:
...@@ -15,27 +17,12 @@ ...@@ -15,27 +17,12 @@
// C++ std library dependencies // C++ std library dependencies
#include <chrono> // `std::chrono::` functions and classes, e.g. std::chrono::milliseconds #include <chrono> // `std::chrono::` functions and classes, e.g. std::chrono::milliseconds
#include <string>
#include <thread> // std::this_thread #include <thread> // std::this_thread
#include <vector>
// Other 3rdparty dependencies // Other 3rdparty dependencies
#include <gflags/gflags.h> // DEFINE_bool, DEFINE_int32, DEFINE_int64, DEFINE_uint64, DEFINE_double, DEFINE_string #include <gflags/gflags.h> // DEFINE_bool, DEFINE_int32, DEFINE_int64, DEFINE_uint64, DEFINE_double, DEFINE_string
#include <glog/logging.h> // google::InitGoogleLogging #include <glog/logging.h> // google::InitGoogleLogging
// OpenPose dependencies // OpenPose dependencies
// Option a) Importing all modules
#include <openpose/headers.hpp> #include <openpose/headers.hpp>
// Option b) Manually importing the desired modules. Recommended if you only intend to use a few modules.
// #include <openpose/core/headers.hpp>
// #include <openpose/experimental/headers.hpp>
// #include <openpose/face/headers.hpp>
// #include <openpose/filestream/headers.hpp>
// #include <openpose/gui/headers.hpp>
// #include <openpose/pose/headers.hpp>
// #include <openpose/producer/headers.hpp>
// #include <openpose/thread/headers.hpp>
// #include <openpose/utilities/headers.hpp>
// #include <openpose/wrapper/headers.hpp>
// See all the available parameter options withe the `--help` flag. E.g. `./build/examples/openpose/openpose.bin --help`. // See all the available parameter options withe the `--help` flag. E.g. `./build/examples/openpose/openpose.bin --help`.
// Note: This command will show you flags for other unnecessary 3rdparty files. Check only the flags for the OpenPose // Note: This command will show you flags for other unnecessary 3rdparty files. Check only the flags for the OpenPose
...@@ -230,20 +217,23 @@ private: ...@@ -230,20 +217,23 @@ private:
class UserOutputClass class UserOutputClass
{ {
public: public:
void display(const std::shared_ptr<std::vector<UserDatum>>& datumsPtr) bool display(const std::shared_ptr<std::vector<UserDatum>>& datumsPtr)
{ {
// User's displaying/saving/other processing here // User's displaying/saving/other processing here
// datum.cvOutputData: rendered frame with pose or heatmaps // datum.cvOutputData: rendered frame with pose or heatmaps
// datum.poseKeypoints: Array<float> with the estimated pose // datum.poseKeypoints: Array<float> with the estimated pose
char key = ' ';
if (datumsPtr != nullptr && !datumsPtr->empty()) if (datumsPtr != nullptr && !datumsPtr->empty())
{ {
cv::imshow("User worker GUI", datumsPtr->at(0).cvOutputData); cv::imshow("User worker GUI", datumsPtr->at(0).cvOutputData);
cv::waitKey(1); // It displays the image and sleeps at least 1 ms (it usually sleeps ~5-10 msec to display the image) // Display image and sleeps at least 1 ms (it usually sleeps ~5-10 msec to display the image)
key = cv::waitKey(1);
} }
else else
op::log("Nullptr or empty datumsPtr found.", op::Priority::High, __LINE__, __FUNCTION__, __FILE__); op::log("Nullptr or empty datumsPtr found.", op::Priority::High, __LINE__, __FUNCTION__, __FILE__);
return (key == 27);
} }
void printKeypoitns(const std::shared_ptr<std::vector<UserDatum>>& datumsPtr) void printKeypoints(const std::shared_ptr<std::vector<UserDatum>>& datumsPtr)
{ {
// Example: How to use the pose keypoints // Example: How to use the pose keypoints
if (datumsPtr != nullptr && !datumsPtr->empty()) if (datumsPtr != nullptr && !datumsPtr->empty())
...@@ -259,9 +249,7 @@ public: ...@@ -259,9 +249,7 @@ public:
{ {
std::string valueToPrint; std::string valueToPrint;
for (auto xyscore = 0 ; xyscore < poseKeypoints.getSize(2) ; xyscore++) for (auto xyscore = 0 ; xyscore < poseKeypoints.getSize(2) ; xyscore++)
{
valueToPrint += std::to_string( poseKeypoints[{person, bodyPart, xyscore}] ) + " "; valueToPrint += std::to_string( poseKeypoints[{person, bodyPart, xyscore}] ) + " ";
}
op::log(valueToPrint); op::log(valueToPrint);
} }
} }
...@@ -331,6 +319,7 @@ int openPoseTutorialWrapper1() ...@@ -331,6 +319,7 @@ int openPoseTutorialWrapper1()
FLAGS_write_coco_json, FLAGS_write_images, FLAGS_write_images_format, FLAGS_write_video, FLAGS_write_coco_json, FLAGS_write_images, FLAGS_write_images_format, FLAGS_write_video,
FLAGS_write_heatmaps, FLAGS_write_heatmaps_format}; FLAGS_write_heatmaps, FLAGS_write_heatmaps_format};
// Configure wrapper // Configure wrapper
op::log("Configuring OpenPose wrapper.", op::Priority::Low, __LINE__, __FUNCTION__, __FILE__);
opWrapper.configure(wrapperStructPose, wrapperStructFace, wrapperStructHand, op::WrapperStructInput{}, wrapperStructOutput); opWrapper.configure(wrapperStructPose, wrapperStructFace, wrapperStructHand, op::WrapperStructInput{}, wrapperStructOutput);
// Set to single-thread running (e.g. for debugging purposes) // Set to single-thread running (e.g. for debugging purposes)
// opWrapper.disableMultiThreading(); // opWrapper.disableMultiThreading();
...@@ -341,7 +330,8 @@ int openPoseTutorialWrapper1() ...@@ -341,7 +330,8 @@ int openPoseTutorialWrapper1()
// User processing // User processing
UserInputClass userInputClass(FLAGS_image_dir); UserInputClass userInputClass(FLAGS_image_dir);
UserOutputClass userOutputClass; UserOutputClass userOutputClass;
while (!userInputClass.isFinished()) bool userWantsToExit = false;
while (!userWantsToExit && !userInputClass.isFinished())
{ {
// Push frame // Push frame
auto datumToProcess = userInputClass.createDatum(); auto datumToProcess = userInputClass.createDatum();
...@@ -352,8 +342,8 @@ int openPoseTutorialWrapper1() ...@@ -352,8 +342,8 @@ int openPoseTutorialWrapper1()
std::shared_ptr<std::vector<UserDatum>> datumProcessed; std::shared_ptr<std::vector<UserDatum>> datumProcessed;
if (successfullyEmplaced && opWrapper.waitAndPop(datumProcessed)) if (successfullyEmplaced && opWrapper.waitAndPop(datumProcessed))
{ {
userOutputClass.display(datumProcessed); userWantsToExit = userOutputClass.display(datumProcessed);
userOutputClass.printKeypoitns(datumProcessed); userOutputClass.printKeypoints(datumProcessed);
} }
else else
op::log("Processed datum could not be emplaced.", op::Priority::High, __LINE__, __FUNCTION__, __FILE__); op::log("Processed datum could not be emplaced.", op::Priority::High, __LINE__, __FUNCTION__, __FILE__);
......
set(EXAMPLE_FILES set(EXAMPLE_FILES
1_user_asynchronous.cpp 1_user_asynchronous_output.cpp
2_user_synchronous.cpp) 2_user_synchronous.cpp
3_user_asynchronous.cpp)
foreach(EXAMPLE_FILE ${EXAMPLE_FILES}) foreach(EXAMPLE_FILE ${EXAMPLE_FILES})
......
...@@ -10,11 +10,6 @@ Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "OpenPoseDemo", "OpenPoseDem ...@@ -10,11 +10,6 @@ Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "OpenPoseDemo", "OpenPoseDem
{1848F100-6EC5-4F60-9748-062590ADFE5C} = {1848F100-6EC5-4F60-9748-062590ADFE5C} {1848F100-6EC5-4F60-9748-062590ADFE5C} = {1848F100-6EC5-4F60-9748-062590ADFE5C}
EndProjectSection EndProjectSection
EndProject EndProject
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "1_user_asynchronous", "TutorialWrapper\1_user_asynchronous.vcxproj", "{1A72B535-7E9E-4B48-9D54-B90D6FC52616}"
ProjectSection(ProjectDependencies) = postProject
{1848F100-6EC5-4F60-9748-062590ADFE5C} = {1848F100-6EC5-4F60-9748-062590ADFE5C}
EndProjectSection
EndProject
Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "OpenPose library", "OpenPose library", "{A2660049-67B9-4C4A-9E54-3BB659BCF9C0}" Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "OpenPose library", "OpenPose library", "{A2660049-67B9-4C4A-9E54-3BB659BCF9C0}"
EndProject EndProject
Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Examples", "Examples", "{322A32B5-4A4E-40B7-9CAA-62573A12BE5E}" Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Examples", "Examples", "{322A32B5-4A4E-40B7-9CAA-62573A12BE5E}"
...@@ -23,6 +18,11 @@ Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Tutorial", "Tutorial", "{48 ...@@ -23,6 +18,11 @@ Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Tutorial", "Tutorial", "{48
EndProject EndProject
Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Wrapper", "Wrapper", "{BA0F9599-8099-4A7A-99A3-ACFC7C35639C}" Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Wrapper", "Wrapper", "{BA0F9599-8099-4A7A-99A3-ACFC7C35639C}"
EndProject EndProject
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "1_user_asynchronous_output", "TutorialWrapper\1_user_asynchronous_output.vcxproj", "{1A72B535-7E9E-4B48-9D54-B90D6FC52616}"
ProjectSection(ProjectDependencies) = postProject
{1848F100-6EC5-4F60-9748-062590ADFE5C} = {1848F100-6EC5-4F60-9748-062590ADFE5C}
EndProjectSection
EndProject
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "2_user_synchronous", "TutorialWrapper\2_user_synchronous.vcxproj", "{A00A4BDB-C7BC-4DFC-85C4-991FAB45B22A}" Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "2_user_synchronous", "TutorialWrapper\2_user_synchronous.vcxproj", "{A00A4BDB-C7BC-4DFC-85C4-991FAB45B22A}"
ProjectSection(ProjectDependencies) = postProject ProjectSection(ProjectDependencies) = postProject
{1848F100-6EC5-4F60-9748-062590ADFE5C} = {1848F100-6EC5-4F60-9748-062590ADFE5C} {1848F100-6EC5-4F60-9748-062590ADFE5C} = {1848F100-6EC5-4F60-9748-062590ADFE5C}
...@@ -69,6 +69,11 @@ Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "OpenPose3DReconstruction", ...@@ -69,6 +69,11 @@ Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "OpenPose3DReconstruction",
{1848F100-6EC5-4F60-9748-062590ADFE5C} = {1848F100-6EC5-4F60-9748-062590ADFE5C} {1848F100-6EC5-4F60-9748-062590ADFE5C} = {1848F100-6EC5-4F60-9748-062590ADFE5C}
EndProjectSection EndProjectSection
EndProject EndProject
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "3_user_asynchronous", "TutorialWrapper\3_user_asynchronous.vcxproj", "{6669F592-6798-4F29-853A-A8C42205DE4A}"
ProjectSection(ProjectDependencies) = postProject
{1848F100-6EC5-4F60-9748-062590ADFE5C} = {1848F100-6EC5-4F60-9748-062590ADFE5C}
EndProjectSection
EndProject
Global Global
GlobalSection(SolutionConfigurationPlatforms) = preSolution GlobalSection(SolutionConfigurationPlatforms) = preSolution
Debug|x64 = Debug|x64 Debug|x64 = Debug|x64
...@@ -77,71 +82,76 @@ Global ...@@ -77,71 +82,76 @@ Global
Release|x86 = Release|x86 Release|x86 = Release|x86
EndGlobalSection EndGlobalSection
GlobalSection(ProjectConfigurationPlatforms) = postSolution GlobalSection(ProjectConfigurationPlatforms) = postSolution
{1848F100-6EC5-4F60-9748-062590ADFE5C}.Debug|x64.ActiveCfg = Debug|x64 {1848F100-6EC5-4F60-9748-062590ADFE5C}.Debug|x64.ActiveCfg = Release|x64
{1848F100-6EC5-4F60-9748-062590ADFE5C}.Debug|x64.Build.0 = Debug|x64 {1848F100-6EC5-4F60-9748-062590ADFE5C}.Debug|x64.Build.0 = Release|x64
{1848F100-6EC5-4F60-9748-062590ADFE5C}.Debug|x86.ActiveCfg = Debug|x64 {1848F100-6EC5-4F60-9748-062590ADFE5C}.Debug|x86.ActiveCfg = Debug|x64
{1848F100-6EC5-4F60-9748-062590ADFE5C}.Release|x64.ActiveCfg = Release|x64 {1848F100-6EC5-4F60-9748-062590ADFE5C}.Release|x64.ActiveCfg = Release|x64
{1848F100-6EC5-4F60-9748-062590ADFE5C}.Release|x64.Build.0 = Release|x64 {1848F100-6EC5-4F60-9748-062590ADFE5C}.Release|x64.Build.0 = Release|x64
{1848F100-6EC5-4F60-9748-062590ADFE5C}.Release|x86.ActiveCfg = Release|x64 {1848F100-6EC5-4F60-9748-062590ADFE5C}.Release|x86.ActiveCfg = Release|x64
{DF3983B6-A052-478D-9C59-B353C5F95991}.Debug|x64.ActiveCfg = Debug|x64 {DF3983B6-A052-478D-9C59-B353C5F95991}.Debug|x64.ActiveCfg = Release|x64
{DF3983B6-A052-478D-9C59-B353C5F95991}.Debug|x64.Build.0 = Debug|x64 {DF3983B6-A052-478D-9C59-B353C5F95991}.Debug|x64.Build.0 = Release|x64
{DF3983B6-A052-478D-9C59-B353C5F95991}.Debug|x86.ActiveCfg = Debug|x64 {DF3983B6-A052-478D-9C59-B353C5F95991}.Debug|x86.ActiveCfg = Debug|x64
{DF3983B6-A052-478D-9C59-B353C5F95991}.Release|x64.ActiveCfg = Release|x64 {DF3983B6-A052-478D-9C59-B353C5F95991}.Release|x64.ActiveCfg = Release|x64
{DF3983B6-A052-478D-9C59-B353C5F95991}.Release|x64.Build.0 = Release|x64 {DF3983B6-A052-478D-9C59-B353C5F95991}.Release|x64.Build.0 = Release|x64
{DF3983B6-A052-478D-9C59-B353C5F95991}.Release|x86.ActiveCfg = Release|x64 {DF3983B6-A052-478D-9C59-B353C5F95991}.Release|x86.ActiveCfg = Release|x64
{1A72B535-7E9E-4B48-9D54-B90D6FC52616}.Debug|x64.ActiveCfg = Debug|x64 {1A72B535-7E9E-4B48-9D54-B90D6FC52616}.Debug|x64.ActiveCfg = Release|x64
{1A72B535-7E9E-4B48-9D54-B90D6FC52616}.Debug|x64.Build.0 = Debug|x64 {1A72B535-7E9E-4B48-9D54-B90D6FC52616}.Debug|x64.Build.0 = Release|x64
{1A72B535-7E9E-4B48-9D54-B90D6FC52616}.Debug|x86.ActiveCfg = Debug|x64 {1A72B535-7E9E-4B48-9D54-B90D6FC52616}.Debug|x86.ActiveCfg = Debug|x64
{1A72B535-7E9E-4B48-9D54-B90D6FC52616}.Release|x64.ActiveCfg = Release|x64 {1A72B535-7E9E-4B48-9D54-B90D6FC52616}.Release|x64.ActiveCfg = Release|x64
{1A72B535-7E9E-4B48-9D54-B90D6FC52616}.Release|x64.Build.0 = Release|x64 {1A72B535-7E9E-4B48-9D54-B90D6FC52616}.Release|x64.Build.0 = Release|x64
{1A72B535-7E9E-4B48-9D54-B90D6FC52616}.Release|x86.ActiveCfg = Release|x64 {1A72B535-7E9E-4B48-9D54-B90D6FC52616}.Release|x86.ActiveCfg = Release|x64
{A00A4BDB-C7BC-4DFC-85C4-991FAB45B22A}.Debug|x64.ActiveCfg = Debug|x64 {A00A4BDB-C7BC-4DFC-85C4-991FAB45B22A}.Debug|x64.ActiveCfg = Release|x64
{A00A4BDB-C7BC-4DFC-85C4-991FAB45B22A}.Debug|x64.Build.0 = Debug|x64 {A00A4BDB-C7BC-4DFC-85C4-991FAB45B22A}.Debug|x64.Build.0 = Release|x64
{A00A4BDB-C7BC-4DFC-85C4-991FAB45B22A}.Debug|x86.ActiveCfg = Debug|x64 {A00A4BDB-C7BC-4DFC-85C4-991FAB45B22A}.Debug|x86.ActiveCfg = Debug|x64
{A00A4BDB-C7BC-4DFC-85C4-991FAB45B22A}.Release|x64.ActiveCfg = Release|x64 {A00A4BDB-C7BC-4DFC-85C4-991FAB45B22A}.Release|x64.ActiveCfg = Release|x64
{A00A4BDB-C7BC-4DFC-85C4-991FAB45B22A}.Release|x64.Build.0 = Release|x64 {A00A4BDB-C7BC-4DFC-85C4-991FAB45B22A}.Release|x64.Build.0 = Release|x64
{A00A4BDB-C7BC-4DFC-85C4-991FAB45B22A}.Release|x86.ActiveCfg = Release|x64 {A00A4BDB-C7BC-4DFC-85C4-991FAB45B22A}.Release|x86.ActiveCfg = Release|x64
{D28D2569-F7D3-4049-8B49-AF7150943F1F}.Debug|x64.ActiveCfg = Debug|x64 {D28D2569-F7D3-4049-8B49-AF7150943F1F}.Debug|x64.ActiveCfg = Release|x64
{D28D2569-F7D3-4049-8B49-AF7150943F1F}.Debug|x64.Build.0 = Debug|x64 {D28D2569-F7D3-4049-8B49-AF7150943F1F}.Debug|x64.Build.0 = Release|x64
{D28D2569-F7D3-4049-8B49-AF7150943F1F}.Debug|x86.ActiveCfg = Debug|x64 {D28D2569-F7D3-4049-8B49-AF7150943F1F}.Debug|x86.ActiveCfg = Debug|x64
{D28D2569-F7D3-4049-8B49-AF7150943F1F}.Release|x64.ActiveCfg = Release|x64 {D28D2569-F7D3-4049-8B49-AF7150943F1F}.Release|x64.ActiveCfg = Release|x64
{D28D2569-F7D3-4049-8B49-AF7150943F1F}.Release|x64.Build.0 = Release|x64 {D28D2569-F7D3-4049-8B49-AF7150943F1F}.Release|x64.Build.0 = Release|x64
{D28D2569-F7D3-4049-8B49-AF7150943F1F}.Release|x86.ActiveCfg = Release|x64 {D28D2569-F7D3-4049-8B49-AF7150943F1F}.Release|x86.ActiveCfg = Release|x64
{D27AEA08-2345-457A-B1E2-BFA8E3C77222}.Debug|x64.ActiveCfg = Debug|x64 {D27AEA08-2345-457A-B1E2-BFA8E3C77222}.Debug|x64.ActiveCfg = Release|x64
{D27AEA08-2345-457A-B1E2-BFA8E3C77222}.Debug|x64.Build.0 = Debug|x64 {D27AEA08-2345-457A-B1E2-BFA8E3C77222}.Debug|x64.Build.0 = Release|x64
{D27AEA08-2345-457A-B1E2-BFA8E3C77222}.Debug|x86.ActiveCfg = Debug|x64 {D27AEA08-2345-457A-B1E2-BFA8E3C77222}.Debug|x86.ActiveCfg = Debug|x64
{D27AEA08-2345-457A-B1E2-BFA8E3C77222}.Release|x64.ActiveCfg = Release|x64 {D27AEA08-2345-457A-B1E2-BFA8E3C77222}.Release|x64.ActiveCfg = Release|x64
{D27AEA08-2345-457A-B1E2-BFA8E3C77222}.Release|x64.Build.0 = Release|x64 {D27AEA08-2345-457A-B1E2-BFA8E3C77222}.Release|x64.Build.0 = Release|x64
{D27AEA08-2345-457A-B1E2-BFA8E3C77222}.Release|x86.ActiveCfg = Release|x64 {D27AEA08-2345-457A-B1E2-BFA8E3C77222}.Release|x86.ActiveCfg = Release|x64
{44F26037-115D-41E7-97DE-C754844CC5B0}.Debug|x64.ActiveCfg = Debug|x64 {44F26037-115D-41E7-97DE-C754844CC5B0}.Debug|x64.ActiveCfg = Release|x64
{44F26037-115D-41E7-97DE-C754844CC5B0}.Debug|x64.Build.0 = Debug|x64 {44F26037-115D-41E7-97DE-C754844CC5B0}.Debug|x64.Build.0 = Release|x64
{44F26037-115D-41E7-97DE-C754844CC5B0}.Debug|x86.ActiveCfg = Debug|x64 {44F26037-115D-41E7-97DE-C754844CC5B0}.Debug|x86.ActiveCfg = Debug|x64
{44F26037-115D-41E7-97DE-C754844CC5B0}.Release|x64.ActiveCfg = Release|x64 {44F26037-115D-41E7-97DE-C754844CC5B0}.Release|x64.ActiveCfg = Release|x64
{44F26037-115D-41E7-97DE-C754844CC5B0}.Release|x64.Build.0 = Release|x64 {44F26037-115D-41E7-97DE-C754844CC5B0}.Release|x64.Build.0 = Release|x64
{44F26037-115D-41E7-97DE-C754844CC5B0}.Release|x86.ActiveCfg = Release|x64 {44F26037-115D-41E7-97DE-C754844CC5B0}.Release|x86.ActiveCfg = Release|x64
{4A271F39-C60B-4827-9A64-E0EEDD15D082}.Debug|x64.ActiveCfg = Debug|x64 {4A271F39-C60B-4827-9A64-E0EEDD15D082}.Debug|x64.ActiveCfg = Release|x64
{4A271F39-C60B-4827-9A64-E0EEDD15D082}.Debug|x64.Build.0 = Debug|x64 {4A271F39-C60B-4827-9A64-E0EEDD15D082}.Debug|x64.Build.0 = Release|x64
{4A271F39-C60B-4827-9A64-E0EEDD15D082}.Debug|x86.ActiveCfg = Debug|x64 {4A271F39-C60B-4827-9A64-E0EEDD15D082}.Debug|x86.ActiveCfg = Debug|x64
{4A271F39-C60B-4827-9A64-E0EEDD15D082}.Release|x64.ActiveCfg = Release|x64 {4A271F39-C60B-4827-9A64-E0EEDD15D082}.Release|x64.ActiveCfg = Release|x64
{4A271F39-C60B-4827-9A64-E0EEDD15D082}.Release|x64.Build.0 = Release|x64 {4A271F39-C60B-4827-9A64-E0EEDD15D082}.Release|x64.Build.0 = Release|x64
{4A271F39-C60B-4827-9A64-E0EEDD15D082}.Release|x86.ActiveCfg = Release|x64 {4A271F39-C60B-4827-9A64-E0EEDD15D082}.Release|x86.ActiveCfg = Release|x64
{DA43DA92-141D-4B91-80CE-8A2C5B377683}.Debug|x64.ActiveCfg = Debug|x64 {DA43DA92-141D-4B91-80CE-8A2C5B377683}.Debug|x64.ActiveCfg = Release|x64
{DA43DA92-141D-4B91-80CE-8A2C5B377683}.Debug|x64.Build.0 = Debug|x64 {DA43DA92-141D-4B91-80CE-8A2C5B377683}.Debug|x64.Build.0 = Release|x64
{DA43DA92-141D-4B91-80CE-8A2C5B377683}.Debug|x86.ActiveCfg = Debug|x64 {DA43DA92-141D-4B91-80CE-8A2C5B377683}.Debug|x86.ActiveCfg = Debug|x64
{DA43DA92-141D-4B91-80CE-8A2C5B377683}.Release|x64.ActiveCfg = Release|x64 {DA43DA92-141D-4B91-80CE-8A2C5B377683}.Release|x64.ActiveCfg = Release|x64
{DA43DA92-141D-4B91-80CE-8A2C5B377683}.Release|x64.Build.0 = Release|x64 {DA43DA92-141D-4B91-80CE-8A2C5B377683}.Release|x64.Build.0 = Release|x64
{DA43DA92-141D-4B91-80CE-8A2C5B377683}.Release|x86.ActiveCfg = Release|x64 {DA43DA92-141D-4B91-80CE-8A2C5B377683}.Release|x86.ActiveCfg = Release|x64
{D1E5B5FC-A447-4BCC-8024-C6B6B8061A7D}.Debug|x64.ActiveCfg = Debug|x64 {D1E5B5FC-A447-4BCC-8024-C6B6B8061A7D}.Debug|x64.ActiveCfg = Release|x64
{D1E5B5FC-A447-4BCC-8024-C6B6B8061A7D}.Debug|x64.Build.0 = Debug|x64 {D1E5B5FC-A447-4BCC-8024-C6B6B8061A7D}.Debug|x64.Build.0 = Release|x64
{D1E5B5FC-A447-4BCC-8024-C6B6B8061A7D}.Debug|x86.ActiveCfg = Debug|x64 {D1E5B5FC-A447-4BCC-8024-C6B6B8061A7D}.Debug|x86.ActiveCfg = Debug|x64
{D1E5B5FC-A447-4BCC-8024-C6B6B8061A7D}.Release|x64.ActiveCfg = Release|x64 {D1E5B5FC-A447-4BCC-8024-C6B6B8061A7D}.Release|x64.ActiveCfg = Release|x64
{D1E5B5FC-A447-4BCC-8024-C6B6B8061A7D}.Release|x64.Build.0 = Release|x64 {D1E5B5FC-A447-4BCC-8024-C6B6B8061A7D}.Release|x64.Build.0 = Release|x64
{D1E5B5FC-A447-4BCC-8024-C6B6B8061A7D}.Release|x86.ActiveCfg = Release|x64 {D1E5B5FC-A447-4BCC-8024-C6B6B8061A7D}.Release|x86.ActiveCfg = Release|x64
{F31BEEF2-37B0-4B0F-85D3-AD427C56AD72}.Debug|x64.ActiveCfg = Debug|x64 {F31BEEF2-37B0-4B0F-85D3-AD427C56AD72}.Debug|x64.ActiveCfg = Release|x64
{F31BEEF2-37B0-4B0F-85D3-AD427C56AD72}.Debug|x64.Build.0 = Debug|x64
{F31BEEF2-37B0-4B0F-85D3-AD427C56AD72}.Debug|x86.ActiveCfg = Debug|x64 {F31BEEF2-37B0-4B0F-85D3-AD427C56AD72}.Debug|x86.ActiveCfg = Debug|x64
{F31BEEF2-37B0-4B0F-85D3-AD427C56AD72}.Release|x64.ActiveCfg = Release|x64 {F31BEEF2-37B0-4B0F-85D3-AD427C56AD72}.Release|x64.ActiveCfg = Release|x64
{F31BEEF2-37B0-4B0F-85D3-AD427C56AD72}.Release|x86.ActiveCfg = Release|x64 {F31BEEF2-37B0-4B0F-85D3-AD427C56AD72}.Release|x86.ActiveCfg = Release|x64
{6669F592-6798-4F29-853A-A8C42205DE4A}.Debug|x64.ActiveCfg = Release|x64
{6669F592-6798-4F29-853A-A8C42205DE4A}.Debug|x64.Build.0 = Release|x64
{6669F592-6798-4F29-853A-A8C42205DE4A}.Debug|x86.ActiveCfg = Debug|x64
{6669F592-6798-4F29-853A-A8C42205DE4A}.Release|x64.ActiveCfg = Release|x64
{6669F592-6798-4F29-853A-A8C42205DE4A}.Release|x64.Build.0 = Release|x64
{6669F592-6798-4F29-853A-A8C42205DE4A}.Release|x86.ActiveCfg = Release|x64
EndGlobalSection EndGlobalSection
GlobalSection(SolutionProperties) = preSolution GlobalSection(SolutionProperties) = preSolution
HideSolutionNode = FALSE HideSolutionNode = FALSE
...@@ -149,9 +159,9 @@ Global ...@@ -149,9 +159,9 @@ Global
GlobalSection(NestedProjects) = preSolution GlobalSection(NestedProjects) = preSolution
{1848F100-6EC5-4F60-9748-062590ADFE5C} = {A2660049-67B9-4C4A-9E54-3BB659BCF9C0} {1848F100-6EC5-4F60-9748-062590ADFE5C} = {A2660049-67B9-4C4A-9E54-3BB659BCF9C0}
{DF3983B6-A052-478D-9C59-B353C5F95991} = {322A32B5-4A4E-40B7-9CAA-62573A12BE5E} {DF3983B6-A052-478D-9C59-B353C5F95991} = {322A32B5-4A4E-40B7-9CAA-62573A12BE5E}
{1A72B535-7E9E-4B48-9D54-B90D6FC52616} = {BA0F9599-8099-4A7A-99A3-ACFC7C35639C}
{48ECEE85-ED06-42A5-8068-CBDD92BB6EF4} = {322A32B5-4A4E-40B7-9CAA-62573A12BE5E} {48ECEE85-ED06-42A5-8068-CBDD92BB6EF4} = {322A32B5-4A4E-40B7-9CAA-62573A12BE5E}
{BA0F9599-8099-4A7A-99A3-ACFC7C35639C} = {48ECEE85-ED06-42A5-8068-CBDD92BB6EF4} {BA0F9599-8099-4A7A-99A3-ACFC7C35639C} = {48ECEE85-ED06-42A5-8068-CBDD92BB6EF4}
{1A72B535-7E9E-4B48-9D54-B90D6FC52616} = {BA0F9599-8099-4A7A-99A3-ACFC7C35639C}
{A00A4BDB-C7BC-4DFC-85C4-991FAB45B22A} = {BA0F9599-8099-4A7A-99A3-ACFC7C35639C} {A00A4BDB-C7BC-4DFC-85C4-991FAB45B22A} = {BA0F9599-8099-4A7A-99A3-ACFC7C35639C}
{40194B19-A61E-4B91-89CD-A858AC5953A6} = {48ECEE85-ED06-42A5-8068-CBDD92BB6EF4} {40194B19-A61E-4B91-89CD-A858AC5953A6} = {48ECEE85-ED06-42A5-8068-CBDD92BB6EF4}
{8F1B1B9F-0117-48CD-B9F6-06E1930640C3} = {48ECEE85-ED06-42A5-8068-CBDD92BB6EF4} {8F1B1B9F-0117-48CD-B9F6-06E1930640C3} = {48ECEE85-ED06-42A5-8068-CBDD92BB6EF4}
...@@ -163,5 +173,6 @@ Global ...@@ -163,5 +173,6 @@ Global
{D1E5B5FC-A447-4BCC-8024-C6B6B8061A7D} = {40194B19-A61E-4B91-89CD-A858AC5953A6} {D1E5B5FC-A447-4BCC-8024-C6B6B8061A7D} = {40194B19-A61E-4B91-89CD-A858AC5953A6}
{CB5A0F6C-6DD3-4789-9E6F-9B9B51AE4F10} = {48ECEE85-ED06-42A5-8068-CBDD92BB6EF4} {CB5A0F6C-6DD3-4789-9E6F-9B9B51AE4F10} = {48ECEE85-ED06-42A5-8068-CBDD92BB6EF4}
{F31BEEF2-37B0-4B0F-85D3-AD427C56AD72} = {CB5A0F6C-6DD3-4789-9E6F-9B9B51AE4F10} {F31BEEF2-37B0-4B0F-85D3-AD427C56AD72} = {CB5A0F6C-6DD3-4789-9E6F-9B9B51AE4F10}
{6669F592-6798-4F29-853A-A8C42205DE4A} = {BA0F9599-8099-4A7A-99A3-ACFC7C35639C}
EndGlobalSection EndGlobalSection
EndGlobal EndGlobal
<?xml version="1.0" encoding="utf-8"?> <?xml version="1.0" encoding="utf-8"?>
<Project DefaultTargets="Build" ToolsVersion="14.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003"> <Project DefaultTargets="Build" ToolsVersion="14.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<ItemGroup Label="ProjectConfigurations"> <ItemGroup Label="ProjectConfigurations">
<ProjectConfiguration Include="Debug|x64"> <ProjectConfiguration Include="Debug|x64">
<Configuration>Debug</Configuration> <Configuration>Debug</Configuration>
<Platform>x64</Platform> <Platform>x64</Platform>
</ProjectConfiguration> </ProjectConfiguration>
<ProjectConfiguration Include="Release|x64"> <ProjectConfiguration Include="Release|x64">
<Configuration>Release</Configuration> <Configuration>Release</Configuration>
<Platform>x64</Platform> <Platform>x64</Platform>
</ProjectConfiguration> </ProjectConfiguration>
</ItemGroup> </ItemGroup>
<ItemGroup> <ItemGroup>
<ClCompile Include="..\..\examples\tutorial_wrapper\1_user_asynchronous.cpp" /> <ClCompile Include="..\..\examples\tutorial_wrapper\1_user_asynchronous_output.cpp" />
</ItemGroup> </ItemGroup>
<PropertyGroup Label="Globals"> <PropertyGroup Label="Globals">
<ProjectGuid>{1A72B535-7E9E-4B48-9D54-B90D6FC52616}</ProjectGuid> <ProjectGuid>{1A72B535-7E9E-4B48-9D54-B90D6FC52616}</ProjectGuid>
<RootNamespace>1_user_asynchronous</RootNamespace> <RootNamespace>1_user_asynchronous</RootNamespace>
<WindowsTargetPlatformVersion>8.1</WindowsTargetPlatformVersion> <WindowsTargetPlatformVersion>8.1</WindowsTargetPlatformVersion>
</PropertyGroup> </PropertyGroup>
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" /> <Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="Configuration"> <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="Configuration">
<ConfigurationType>Application</ConfigurationType> <ConfigurationType>Application</ConfigurationType>
<UseDebugLibraries>true</UseDebugLibraries> <UseDebugLibraries>true</UseDebugLibraries>
<PlatformToolset>v140</PlatformToolset> <PlatformToolset>v140</PlatformToolset>
<CharacterSet>MultiByte</CharacterSet> <CharacterSet>MultiByte</CharacterSet>
</PropertyGroup> </PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="Configuration"> <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="Configuration">
<ConfigurationType>Application</ConfigurationType> <ConfigurationType>Application</ConfigurationType>
<UseDebugLibraries>false</UseDebugLibraries> <UseDebugLibraries>false</UseDebugLibraries>
<PlatformToolset>v140</PlatformToolset> <PlatformToolset>v140</PlatformToolset>
<WholeProgramOptimization>true</WholeProgramOptimization> <WholeProgramOptimization>true</WholeProgramOptimization>
<CharacterSet>MultiByte</CharacterSet> <CharacterSet>MultiByte</CharacterSet>
</PropertyGroup> </PropertyGroup>
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" /> <Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
<ImportGroup Label="ExtensionSettings"> <ImportGroup Label="ExtensionSettings">
</ImportGroup> </ImportGroup>
<ImportGroup Label="Shared"> <ImportGroup Label="Shared">
</ImportGroup> </ImportGroup>
<ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='Debug|x64'"> <ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" /> <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
</ImportGroup> </ImportGroup>
<ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='Release|x64'"> <ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" /> <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
</ImportGroup> </ImportGroup>
<PropertyGroup Label="UserMacros" /> <PropertyGroup Label="UserMacros" />
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'"> <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
<LibraryPath>$(VC_LibraryPath_x64);$(WindowsSDK_LibraryPath_x64);$(NETFXKitsDir)Lib\um\x64</LibraryPath> <LibraryPath>$(VC_LibraryPath_x64);$(WindowsSDK_LibraryPath_x64);$(NETFXKitsDir)Lib\um\x64</LibraryPath>
<ExecutablePath>$(VC_ExecutablePath_x64);$(WindowsSDK_ExecutablePath);$(VS_ExecutablePath);$(MSBuild_ExecutablePath);$(FxCopDir);$(PATH);</ExecutablePath> <ExecutablePath>$(VC_ExecutablePath_x64);$(WindowsSDK_ExecutablePath);$(VS_ExecutablePath);$(MSBuild_ExecutablePath);$(FxCopDir);$(PATH);</ExecutablePath>
<ReferencePath>$(VC_ReferencesPath_x64);</ReferencePath> <ReferencePath>$(VC_ReferencesPath_x64);</ReferencePath>
<IntDir>$(ProjectName)\$(Platform)\$(Configuration)\</IntDir> <IntDir>$(ProjectName)\$(Platform)\$(Configuration)\</IntDir>
<LinkIncremental>false</LinkIncremental> <LinkIncremental>false</LinkIncremental>
</PropertyGroup> </PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'"> <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
<LibraryPath>$(VC_LibraryPath_x64);$(WindowsSDK_LibraryPath_x64);$(NETFXKitsDir)Lib\um\x64</LibraryPath> <LibraryPath>$(VC_LibraryPath_x64);$(WindowsSDK_LibraryPath_x64);$(NETFXKitsDir)Lib\um\x64</LibraryPath>
<IntDir>$(ProjectName)\$(Platform)\$(Configuration)\</IntDir> <IntDir>$(ProjectName)\$(Platform)\$(Configuration)\</IntDir>
</PropertyGroup> </PropertyGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'"> <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
<ClCompile> <ClCompile>
<WarningLevel>EnableAllWarnings</WarningLevel> <WarningLevel>EnableAllWarnings</WarningLevel>
<Optimization>Disabled</Optimization> <Optimization>Disabled</Optimization>
<SDLCheck>true</SDLCheck> <SDLCheck>true</SDLCheck>
<MultiProcessorCompilation>true</MultiProcessorCompilation> <MultiProcessorCompilation>true</MultiProcessorCompilation>
<PreprocessorDefinitions>_CRT_SECURE_NO_WARNINGS;BOOST_ALL_NO_LIB;CAFFE_VERSION=1.0.0;CMAKE_WINDOWS_BUILD;GLOG_NO_ABBREVIATED_SEVERITIES;GOOGLE_GLOG_DLL_DECL=__declspec(dllimport);GOOGLE_GLOG_DLL_DECL_FOR_UNITTESTS=__declspec(dllimport);H5_BUILT_AS_DYNAMIC_LIB=1;USE_CAFFE;USE_CUDNN;USE_OPENCV;USE_LEVELDB;USE_LMDB;CMAKE_INTDIR="Debug"</PreprocessorDefinitions> <PreprocessorDefinitions>_CRT_SECURE_NO_WARNINGS;BOOST_ALL_NO_LIB;CAFFE_VERSION=1.0.0;CMAKE_WINDOWS_BUILD;GLOG_NO_ABBREVIATED_SEVERITIES;GOOGLE_GLOG_DLL_DECL=__declspec(dllimport);GOOGLE_GLOG_DLL_DECL_FOR_UNITTESTS=__declspec(dllimport);H5_BUILT_AS_DYNAMIC_LIB=1;USE_CAFFE;USE_CUDNN;USE_OPENCV;USE_LEVELDB;USE_LMDB;CMAKE_INTDIR="Debug"</PreprocessorDefinitions>
<ObjectFileName>$(IntDir)\obj\relDir\relDir\%(RelativeDir)\%(Filename)%(Extension).obj</ObjectFileName> <ObjectFileName>$(IntDir)\obj\relDir\relDir\%(RelativeDir)\%(Filename)%(Extension).obj</ObjectFileName>
</ClCompile> </ClCompile>
</ItemDefinitionGroup> </ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'"> <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
<ClCompile> <ClCompile>
<WarningLevel>Level4</WarningLevel> <WarningLevel>Level4</WarningLevel>
<Optimization>Full</Optimization> <Optimization>Full</Optimization>
<FunctionLevelLinking>true</FunctionLevelLinking> <FunctionLevelLinking>true</FunctionLevelLinking>
<IntrinsicFunctions>true</IntrinsicFunctions> <IntrinsicFunctions>true</IntrinsicFunctions>
<SDLCheck>true</SDLCheck> <SDLCheck>true</SDLCheck>
<AdditionalIncludeDirectories>..\..\include;..\..\3rdparty\windows\opencv\include;..\..\3rdparty\windows\caffe\include;..\..\3rdparty\windows\caffe\include2;..\..\3rdparty\windows\caffe3rdparty\include;..\..\3rdparty\windows\caffe3rdparty\include\boost-1_61;$(CUDA_PATH_V8_0)\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> <AdditionalIncludeDirectories>..\..\include;..\..\3rdparty\windows\opencv\include;..\..\3rdparty\windows\caffe\include;..\..\3rdparty\windows\caffe\include2;..\..\3rdparty\windows\caffe3rdparty\include;..\..\3rdparty\windows\caffe3rdparty\include\boost-1_61;$(CUDA_PATH_V8_0)\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
<PreprocessorDefinitions>_CRT_SECURE_NO_WARNINGS;BOOST_ALL_NO_LIB;CAFFE_VERSION=1.0.0;CMAKE_WINDOWS_BUILD;GLOG_NO_ABBREVIATED_SEVERITIES;GOOGLE_GLOG_DLL_DECL=__declspec(dllimport);GOOGLE_GLOG_DLL_DECL_FOR_UNITTESTS=__declspec(dllimport);H5_BUILT_AS_DYNAMIC_LIB=1;USE_CAFFE;USE_CUDNN;USE_OPENCV;USE_LEVELDB;USE_LMDB;CMAKE_INTDIR="Release";NDEBUG</PreprocessorDefinitions> <PreprocessorDefinitions>_CRT_SECURE_NO_WARNINGS;BOOST_ALL_NO_LIB;CAFFE_VERSION=1.0.0;CMAKE_WINDOWS_BUILD;GLOG_NO_ABBREVIATED_SEVERITIES;GOOGLE_GLOG_DLL_DECL=__declspec(dllimport);GOOGLE_GLOG_DLL_DECL_FOR_UNITTESTS=__declspec(dllimport);H5_BUILT_AS_DYNAMIC_LIB=1;USE_CAFFE;USE_CUDNN;USE_OPENCV;USE_LEVELDB;USE_LMDB;CMAKE_INTDIR="Release";NDEBUG</PreprocessorDefinitions>
<ObjectFileName>$(IntDir)\obj\relDir\relDir\%(RelativeDir)\%(Filename)%(Extension).obj</ObjectFileName> <ObjectFileName>$(IntDir)\obj\relDir\relDir\%(RelativeDir)\%(Filename)%(Extension).obj</ObjectFileName>
<MultiProcessorCompilation>true</MultiProcessorCompilation> <MultiProcessorCompilation>true</MultiProcessorCompilation>
<FavorSizeOrSpeed>Speed</FavorSizeOrSpeed> <FavorSizeOrSpeed>Speed</FavorSizeOrSpeed>
<DebugInformationFormat>OldStyle</DebugInformationFormat> <DebugInformationFormat>OldStyle</DebugInformationFormat>
</ClCompile> </ClCompile>
<Link> <Link>
<EnableCOMDATFolding>true</EnableCOMDATFolding> <EnableCOMDATFolding>true</EnableCOMDATFolding>
<OptimizeReferences>true</OptimizeReferences> <OptimizeReferences>true</OptimizeReferences>
<AdditionalLibraryDirectories>$(CUDA_PATH_V8_0)\lib\x64\;</AdditionalLibraryDirectories> <AdditionalLibraryDirectories>$(CUDA_PATH_V8_0)\lib\x64\;</AdditionalLibraryDirectories>
<AdditionalDependencies>..\..\3rdparty\windows\caffe\lib\caffe.lib;..\..\3rdparty\windows\caffe\lib\caffeproto.lib;..\..\3rdparty\windows\caffe3rdparty\lib\boost_filesystem-vc140-mt-1_61.lib;..\..\3rdparty\windows\caffe3rdparty\lib\boost_system-vc140-mt-1_61.lib;..\..\3rdparty\windows\caffe3rdparty\lib\caffehdf5.lib;..\..\3rdparty\windows\caffe3rdparty\lib\caffehdf5_hl.lib;..\..\3rdparty\windows\caffe3rdparty\lib\caffezlib.lib;..\..\3rdparty\windows\caffe3rdparty\lib\gflags.lib;..\..\3rdparty\windows\caffe3rdparty\lib\glog.lib;..\..\3rdparty\windows\caffe3rdparty\lib\leveldb.lib;..\..\3rdparty\windows\caffe3rdparty\lib\libopenblas.dll.a;..\..\3rdparty\windows\caffe3rdparty\lib\libprotobuf.lib;..\..\3rdparty\windows\caffe3rdparty\lib\lmdb.lib;..\..\3rdparty\windows\caffe3rdparty\lib\snappy.lib;..\..\3rdparty\windows\opencv\x64\vc14\lib\opencv_world310.lib;cublas.lib;cublas_device.lib;cudart.lib;cudnn.lib;curand.lib;ntdll.lib;shlwapi.lib;..\x64\Release\OpenPose.lib;%(AdditionalDependencies)</AdditionalDependencies> <AdditionalDependencies>..\..\3rdparty\windows\caffe\lib\caffe.lib;..\..\3rdparty\windows\caffe\lib\caffeproto.lib;..\..\3rdparty\windows\caffe3rdparty\lib\boost_filesystem-vc140-mt-1_61.lib;..\..\3rdparty\windows\caffe3rdparty\lib\boost_system-vc140-mt-1_61.lib;..\..\3rdparty\windows\caffe3rdparty\lib\caffehdf5.lib;..\..\3rdparty\windows\caffe3rdparty\lib\caffehdf5_hl.lib;..\..\3rdparty\windows\caffe3rdparty\lib\caffezlib.lib;..\..\3rdparty\windows\caffe3rdparty\lib\gflags.lib;..\..\3rdparty\windows\caffe3rdparty\lib\glog.lib;..\..\3rdparty\windows\caffe3rdparty\lib\leveldb.lib;..\..\3rdparty\windows\caffe3rdparty\lib\libopenblas.dll.a;..\..\3rdparty\windows\caffe3rdparty\lib\libprotobuf.lib;..\..\3rdparty\windows\caffe3rdparty\lib\lmdb.lib;..\..\3rdparty\windows\caffe3rdparty\lib\snappy.lib;..\..\3rdparty\windows\opencv\x64\vc14\lib\opencv_world310.lib;cublas.lib;cublas_device.lib;cudart.lib;cudnn.lib;curand.lib;ntdll.lib;shlwapi.lib;..\x64\Release\OpenPose.lib;%(AdditionalDependencies)</AdditionalDependencies>
</Link> </Link>
</ItemDefinitionGroup> </ItemDefinitionGroup>
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" /> <Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
<ImportGroup Label="ExtensionTargets"> <ImportGroup Label="ExtensionTargets">
</ImportGroup> </ImportGroup>
</Project> </Project>
\ No newline at end of file
<?xml version="1.0" encoding="utf-8"?> <?xml version="1.0" encoding="utf-8"?>
<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003"> <Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<ItemGroup> <ItemGroup>
<Filter Include="Source Files"> <Filter Include="Source Files">
<UniqueIdentifier>{4FC737F1-C7A5-4376-A066-2A32D752A2FF}</UniqueIdentifier> <UniqueIdentifier>{4FC737F1-C7A5-4376-A066-2A32D752A2FF}</UniqueIdentifier>
<Extensions>cpp;c;cc;cxx;def;odl;idl;hpj;bat;asm;asmx</Extensions> <Extensions>cpp;c;cc;cxx;def;odl;idl;hpj;bat;asm;asmx</Extensions>
</Filter> </Filter>
<Filter Include="Header Files"> <Filter Include="Header Files">
<UniqueIdentifier>{93995380-89BD-4b04-88EB-625FBE52EBFB}</UniqueIdentifier> <UniqueIdentifier>{93995380-89BD-4b04-88EB-625FBE52EBFB}</UniqueIdentifier>
<Extensions>h;hh;hpp;hxx;hm;inl;inc;xsd</Extensions> <Extensions>h;hh;hpp;hxx;hm;inl;inc;xsd</Extensions>
</Filter> </Filter>
</ItemGroup> </ItemGroup>
<ItemGroup> <ItemGroup>
<ClCompile Include="..\..\examples\tutorial_wrapper\1_user_asynchronous.cpp"> <ClCompile Include="..\..\examples\tutorial_wrapper\1_user_asynchronous_output.cpp">
<Filter>Source Files</Filter> <Filter>Source Files</Filter>
</ClCompile> </ClCompile>
</ItemGroup> </ItemGroup>
</Project> </Project>
\ No newline at end of file
<?xml version="1.0" encoding="utf-8"?> <?xml version="1.0" encoding="utf-8"?>
<Project ToolsVersion="14.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003"> <Project ToolsVersion="14.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'"> <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
<LocalDebuggerEnvironment>PATH=%PATH%;3rdparty\windows\caffe\bin\;3rdparty\windows\opencv\x64\vc14\bin</LocalDebuggerEnvironment> <LocalDebuggerEnvironment>PATH=%PATH%;3rdparty\windows\caffe\bin\;3rdparty\windows\opencv\x64\vc14\bin</LocalDebuggerEnvironment>
<DebuggerFlavor>WindowsLocalDebugger</DebuggerFlavor> <DebuggerFlavor>WindowsLocalDebugger</DebuggerFlavor>
<LocalDebuggerWorkingDirectory>..\..</LocalDebuggerWorkingDirectory> <LocalDebuggerWorkingDirectory>..\..</LocalDebuggerWorkingDirectory>
</PropertyGroup> </PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'"> <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
<LocalDebuggerEnvironment>PATH=%PATH%;3rdparty\windows\caffe\bin\;3rdparty\windows\opencv\x64\vc14\bin</LocalDebuggerEnvironment> <LocalDebuggerEnvironment>PATH=%PATH%;3rdparty\windows\caffe\bin\;3rdparty\windows\opencv\x64\vc14\bin</LocalDebuggerEnvironment>
<DebuggerFlavor>WindowsLocalDebugger</DebuggerFlavor> <DebuggerFlavor>WindowsLocalDebugger</DebuggerFlavor>
<LocalDebuggerWorkingDirectory>..\..</LocalDebuggerWorkingDirectory> <LocalDebuggerWorkingDirectory>..\..</LocalDebuggerWorkingDirectory>
</PropertyGroup> </PropertyGroup>
</Project> </Project>
\ No newline at end of file
<?xml version="1.0" encoding="utf-8"?>
<Project DefaultTargets="Build" ToolsVersion="14.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<ItemGroup Label="ProjectConfigurations">
<ProjectConfiguration Include="Debug|x64">
<Configuration>Debug</Configuration>
<Platform>x64</Platform>
</ProjectConfiguration>
<ProjectConfiguration Include="Release|x64">
<Configuration>Release</Configuration>
<Platform>x64</Platform>
</ProjectConfiguration>
</ItemGroup>
<ItemGroup>
<ClCompile Include="..\..\examples\tutorial_wrapper\3_user_asynchronous.cpp" />
</ItemGroup>
<PropertyGroup Label="Globals">
<ProjectGuid>{6669F592-6798-4F29-853A-A8C42205DE4A}</ProjectGuid>
<RootNamespace>1_user_asynchronous</RootNamespace>
<WindowsTargetPlatformVersion>8.1</WindowsTargetPlatformVersion>
</PropertyGroup>
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="Configuration">
<ConfigurationType>Application</ConfigurationType>
<UseDebugLibraries>true</UseDebugLibraries>
<PlatformToolset>v140</PlatformToolset>
<CharacterSet>MultiByte</CharacterSet>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="Configuration">
<ConfigurationType>Application</ConfigurationType>
<UseDebugLibraries>false</UseDebugLibraries>
<PlatformToolset>v140</PlatformToolset>
<WholeProgramOptimization>true</WholeProgramOptimization>
<CharacterSet>MultiByte</CharacterSet>
</PropertyGroup>
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
<ImportGroup Label="ExtensionSettings">
</ImportGroup>
<ImportGroup Label="Shared">
</ImportGroup>
<ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
</ImportGroup>
<ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
</ImportGroup>
<PropertyGroup Label="UserMacros" />
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
<LibraryPath>$(VC_LibraryPath_x64);$(WindowsSDK_LibraryPath_x64);$(NETFXKitsDir)Lib\um\x64</LibraryPath>
<ExecutablePath>$(VC_ExecutablePath_x64);$(WindowsSDK_ExecutablePath);$(VS_ExecutablePath);$(MSBuild_ExecutablePath);$(FxCopDir);$(PATH);</ExecutablePath>
<ReferencePath>$(VC_ReferencesPath_x64);</ReferencePath>
<IntDir>$(ProjectName)\$(Platform)\$(Configuration)\</IntDir>
<LinkIncremental>false</LinkIncremental>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
<LibraryPath>$(VC_LibraryPath_x64);$(WindowsSDK_LibraryPath_x64);$(NETFXKitsDir)Lib\um\x64</LibraryPath>
<IntDir>$(ProjectName)\$(Platform)\$(Configuration)\</IntDir>
</PropertyGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
<ClCompile>
<WarningLevel>EnableAllWarnings</WarningLevel>
<Optimization>Disabled</Optimization>
<SDLCheck>true</SDLCheck>
<MultiProcessorCompilation>true</MultiProcessorCompilation>
<PreprocessorDefinitions>_CRT_SECURE_NO_WARNINGS;BOOST_ALL_NO_LIB;CAFFE_VERSION=1.0.0;CMAKE_WINDOWS_BUILD;GLOG_NO_ABBREVIATED_SEVERITIES;GOOGLE_GLOG_DLL_DECL=__declspec(dllimport);GOOGLE_GLOG_DLL_DECL_FOR_UNITTESTS=__declspec(dllimport);H5_BUILT_AS_DYNAMIC_LIB=1;USE_CAFFE;USE_CUDNN;USE_OPENCV;USE_LEVELDB;USE_LMDB;CMAKE_INTDIR="Debug"</PreprocessorDefinitions>
<ObjectFileName>$(IntDir)\obj\relDir\relDir\%(RelativeDir)\%(Filename)%(Extension).obj</ObjectFileName>
</ClCompile>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
<ClCompile>
<WarningLevel>Level4</WarningLevel>
<Optimization>Full</Optimization>
<FunctionLevelLinking>true</FunctionLevelLinking>
<IntrinsicFunctions>true</IntrinsicFunctions>
<SDLCheck>true</SDLCheck>
<AdditionalIncludeDirectories>..\..\include;..\..\3rdparty\windows\opencv\include;..\..\3rdparty\windows\caffe\include;..\..\3rdparty\windows\caffe\include2;..\..\3rdparty\windows\caffe3rdparty\include;..\..\3rdparty\windows\caffe3rdparty\include\boost-1_61;$(CUDA_PATH_V8_0)\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
<PreprocessorDefinitions>_CRT_SECURE_NO_WARNINGS;BOOST_ALL_NO_LIB;CAFFE_VERSION=1.0.0;CMAKE_WINDOWS_BUILD;GLOG_NO_ABBREVIATED_SEVERITIES;GOOGLE_GLOG_DLL_DECL=__declspec(dllimport);GOOGLE_GLOG_DLL_DECL_FOR_UNITTESTS=__declspec(dllimport);H5_BUILT_AS_DYNAMIC_LIB=1;USE_CAFFE;USE_CUDNN;USE_OPENCV;USE_LEVELDB;USE_LMDB;CMAKE_INTDIR="Release";NDEBUG</PreprocessorDefinitions>
<ObjectFileName>$(IntDir)\obj\relDir\relDir\%(RelativeDir)\%(Filename)%(Extension).obj</ObjectFileName>
<MultiProcessorCompilation>true</MultiProcessorCompilation>
<FavorSizeOrSpeed>Speed</FavorSizeOrSpeed>
<DebugInformationFormat>OldStyle</DebugInformationFormat>
</ClCompile>
<Link>
<EnableCOMDATFolding>true</EnableCOMDATFolding>
<OptimizeReferences>true</OptimizeReferences>
<AdditionalLibraryDirectories>$(CUDA_PATH_V8_0)\lib\x64\;</AdditionalLibraryDirectories>
<AdditionalDependencies>..\..\3rdparty\windows\caffe\lib\caffe.lib;..\..\3rdparty\windows\caffe\lib\caffeproto.lib;..\..\3rdparty\windows\caffe3rdparty\lib\boost_filesystem-vc140-mt-1_61.lib;..\..\3rdparty\windows\caffe3rdparty\lib\boost_system-vc140-mt-1_61.lib;..\..\3rdparty\windows\caffe3rdparty\lib\caffehdf5.lib;..\..\3rdparty\windows\caffe3rdparty\lib\caffehdf5_hl.lib;..\..\3rdparty\windows\caffe3rdparty\lib\caffezlib.lib;..\..\3rdparty\windows\caffe3rdparty\lib\gflags.lib;..\..\3rdparty\windows\caffe3rdparty\lib\glog.lib;..\..\3rdparty\windows\caffe3rdparty\lib\leveldb.lib;..\..\3rdparty\windows\caffe3rdparty\lib\libopenblas.dll.a;..\..\3rdparty\windows\caffe3rdparty\lib\libprotobuf.lib;..\..\3rdparty\windows\caffe3rdparty\lib\lmdb.lib;..\..\3rdparty\windows\caffe3rdparty\lib\snappy.lib;..\..\3rdparty\windows\opencv\x64\vc14\lib\opencv_world310.lib;cublas.lib;cublas_device.lib;cudart.lib;cudnn.lib;curand.lib;ntdll.lib;shlwapi.lib;..\x64\Release\OpenPose.lib;%(AdditionalDependencies)</AdditionalDependencies>
</Link>
</ItemDefinitionGroup>
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
<ImportGroup Label="ExtensionTargets">
</ImportGroup>
</Project>
\ No newline at end of file
<?xml version="1.0" encoding="utf-8"?>
<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<ItemGroup>
<Filter Include="Source Files">
<UniqueIdentifier>{4FC737F1-C7A5-4376-A066-2A32D752A2FF}</UniqueIdentifier>
<Extensions>cpp;c;cc;cxx;def;odl;idl;hpj;bat;asm;asmx</Extensions>
</Filter>
<Filter Include="Header Files">
<UniqueIdentifier>{93995380-89BD-4b04-88EB-625FBE52EBFB}</UniqueIdentifier>
<Extensions>h;hh;hpp;hxx;hm;inl;inc;xsd</Extensions>
</Filter>
</ItemGroup>
<ItemGroup>
<ClCompile Include="..\..\examples\tutorial_wrapper\3_user_asynchronous.cpp">
<Filter>Source Files</Filter>
</ClCompile>
</ItemGroup>
</Project>
\ No newline at end of file
<?xml version="1.0" encoding="utf-8"?>
<Project ToolsVersion="14.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
<LocalDebuggerWorkingDirectory>..\..</LocalDebuggerWorkingDirectory>
<DebuggerFlavor>WindowsLocalDebugger</DebuggerFlavor>
<LocalDebuggerEnvironment>PATH=%PATH%;3rdparty\windows\caffe\bin\;3rdparty\windows\opencv\x64\vc14\bin</LocalDebuggerEnvironment>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
<LocalDebuggerWorkingDirectory>..\..</LocalDebuggerWorkingDirectory>
<DebuggerFlavor>WindowsLocalDebugger</DebuggerFlavor>
<LocalDebuggerEnvironment>PATH=%PATH%;3rdparty\windows\caffe\bin\;3rdparty\windows\opencv\x64\vc14\bin</LocalDebuggerEnvironment>
</PropertyGroup>
</Project>
\ No newline at end of file
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册