26 #include <opencv2/imgproc/imgproc.hpp>
31 #include <Calibration/Calibration.h>
45 return "VideoFileImageProvider";
51 ARMARX_INFO <<
"Opening video file " << getProperty<std::string>(
"VideoFilePath").getValue();
55 throw armarx::LocalException(
"Failed to open Videofile ")
56 << getProperty<std::string>(
"VideoFilePath").getValue();
59 this->frameRate = capturer.get(cv::CAP_PROP_FPS);
60 ARMARX_INFO <<
"Video Size: " << capturer.get(cv::CAP_PROP_FRAME_WIDTH) <<
"x"
61 << capturer.get(cv::CAP_PROP_FRAME_HEIGHT);
62 setImageFormat(ImageDimension(capturer.get(cv::CAP_PROP_FRAME_WIDTH),
63 capturer.get(cv::CAP_PROP_FRAME_HEIGHT)),
65 visionx::eBayerPatternGr);
66 setImageSyncMode(visionx::eFpsSynchronization);
79 auto result = capturer.read(image);
80 if (!result && capturer.isOpened() && getProperty<bool>(
"LoopVideo").getValue())
84 result = capturer.read(image);
87 if (result && sharedMemoryProvider)
89 Ice::Byte* pixels =
static_cast<Ice::Byte*
>(image.data);
92 cv::cvtColor(image, image, cv::COLOR_RGB2BGR);
98 memcpy(ppImageBuffers[0], pixels, image.cols * image.rows * image.channels());
109 auto result = capturer.open(getProperty<std::string>(
"VideoFilePath").getValue());
133 visionx::MonocularCalibration