28 #include <VisionX/interface/components/Calibration.h>
32 #include <VideoCapture/BitmapSequenceCapture.h>
33 #include <Image/ByteImage.h>
34 #include <Calibration/StereoCalibration.h>
48 defineRequiredProperty<std::string>(
"PathLeft",
"Filename and path of the left camera images. Enter the path of the first image of the sequence. Filenames need to follow the format: path/*%d.bmp (e.g. path/image_left0000.bmp).");
49 defineOptionalProperty<std::string>(
"PathRight",
"",
"Filename and path of the right camera images. Enter the path of the first image of the sequence. Filenames need to follow the format: path/*%d.bmp (e.g. path/image_right0000.bmp).");
50 defineOptionalProperty<float>(
"FrameRate", 30.0f,
"Frames per second")
51 .setMatchRegex(
"\\d+(.\\d*)?")
54 defineOptionalProperty<ImageDimension>(
"ImageSize", ImageDimension(640, 480),
"Target resolution of the images. Loaded images will be converted to this size.")
55 .setCaseInsensitive(
true)
56 .map(
"320x240", ImageDimension(320, 240))
57 .map(
"640x480", ImageDimension(640, 480))
58 .map(
"648x482", ImageDimension(648, 482))
59 .map(
"800x600", ImageDimension(800, 600))
60 .map(
"768x576", ImageDimension(768, 576))
61 .map(
"1024x768", ImageDimension(1024, 768))
62 .map(
"1024x1024", ImageDimension(1024, 1024))
63 .map(
"1280x960", ImageDimension(1280, 960))
64 .map(
"1600x1200", ImageDimension(1600, 1200))
65 .map(
"none", ImageDimension(0, 0));
67 defineOptionalProperty<std::string>(
"CalibrationFile",
"",
"Camera calibration file, will be made available in the SLICE interface");
68 defineOptionalProperty<bool>(
"ImagesAreUndistorted",
false,
"Sets whether images are provided undistorted.");
69 defineOptionalProperty<bool>(
"LoadNextImageAutomatically",
true,
"If true, a new image is loaded everytime the 'capture()' function is executed. If false, the same image is provided until 'loadNextImage()' is called from somewhere");
70 defineOptionalProperty<int>(
"RepeatImageCount", 1,
"Repeats the images for the specified amount of time.");
72 defineOptionalProperty<std::string>(
"ReferenceFrameName",
"EyeLeftCamera",
"Optional reference frame name.");
93 virtual public ImageFileSequenceProviderInterface
98 return "ImageSequenceProvider";
119 return getProperty<std::string>(
"ReferenceFrameName").getValue();
126 void setImageFilePath(
const std::string& imageFilePathLeft,
const std::string& imageFilePathRight =
"",
const Ice::Current&
c = Ice::emptyCurrent)
override;
128 void loadNextImage(
const Ice::Current&
c = Ice::emptyCurrent)
override;
153 bool capture(
void** ppImageBuffers)
override;
179 CStereoCalibration ivtStereoCalibration;
184 StereoCalibration stereoCalibration;
186 int currentRepeatCount = 0;
187 int repeatImageCount;