33 LegacyRGBDOpenPoseEstimation::createPropertyDefinitions()
38 def->
required(providerName,
"ImageProviderName");
40 RGBDOpenPoseEstimationComponentPluginUser::postCreatePropertyDefinitions(def);
45 LegacyRGBDOpenPoseEstimation::onInitImageProcessor()
47 RGBDOpenPoseEstimationComponentPluginUser::preOnInitImageProcessor();
48 usingImageProvider(providerName);
51 readErrorCounter2d = 0;
56 LegacyRGBDOpenPoseEstimation::onConnectImageProcessor()
58 RGBDOpenPoseEstimationComponentPluginUser::preOnConnectImageProcessor();
61 imageProviderInfo = getImageProvider(providerName, imageDisplayType);
62 rgbImageFormat = imageProviderInfo.imageFormat;
64 numImages =
static_cast<unsigned int>(imageProviderInfo.numberImages);
71 imageBuffer =
new CByteImage*[2];
72 openposeResultImage =
new CByteImage*[1];
79 1, imageProviderInfo.imageFormat.dimension, imageProviderInfo.imageFormat.type);
83 RGBDOpenPoseEstimationComponentPluginUser::postOnConnectImageProcessor();
87 LegacyRGBDOpenPoseEstimation::onDisconnectImageProcessor()
89 RGBDOpenPoseEstimationComponentPluginUser::preOnDisconnectImageProcessor();
93 RGBDOpenPoseEstimationComponentPluginUser::postOnDisconnectImageProcessor();
97 LegacyRGBDOpenPoseEstimation::onExitImageProcessor()
102 LegacyRGBDOpenPoseEstimation::process()
107 if (result_image_ready)
109 std::lock_guard outputImage_lock(openposeResultImageMutex);
111 provideResultImages(openposeResultImage, imageMetaInfo);
115 if (!waitForImages(providerName))
119 <<
" (#timeout " << timeoutCounter2d <<
", #read error "
120 << readErrorCounter2d <<
", #success " << sucessCounter2d <<
")";
124 std::lock_guard lock_images(imageBufferMutex);
125 if (
static_cast<unsigned int>(
126 getImages(providerName, imageBuffer, imageMetaInfo)) != numImages)
128 ++readErrorCounter2d;
130 <<
" (#timeout " << timeoutCounter2d <<
", #read error "
131 << readErrorCounter2d <<
", #success " << sucessCounter2d <<
")";
139 std::lock_guard lock_rgb(rgbImageBufferMutex);
140 std::lock_guard lock_depth(depthImageBufferMutex);
141 ::ImageProcessor::CopyImage(imageBuffer[0], rgbImageBuffer);
142 ::ImageProcessor::CopyImage(imageBuffer[1], depthImageBuffer);
144 timestamp_of_update = imageMetaInfo->timeProvided;