%YAML:1.0
-LEFT_CAM_VGA: !!opencv-matrix
+LEFT_CAM_INTRINSIC: !!opencv-matrix
rows: 3
cols: 3
dt: d
cols: 1
dt: d
data: [ -0.0397725, 0.00826312, -0.000558719, 0.000138723, -0.00435501]
-RIGHT_CAM_VGA: !!opencv-matrix
+RIGHT_CAM_INTRINSIC: !!opencv-matrix
rows: 3
cols: 3
dt: d
--- /dev/null
+%YAML:1.0
+LEFT_CAM_INTRINSIC: !!opencv-matrix
+ rows: 3
+ cols: 3
+ dt: d
+ data: [ 527.485, 0., 636.28, 0., 527.065, 353.258, 0., 0., 1. ]
+LEFT_CAM_DISTCOEFFS: !!opencv-matrix
+ rows: 5
+ cols: 1
+ dt: d
+ data: [ -0.0397725, 0.00826312, -0.000558719, 0.000138723, -0.00435501]
+RIGHT_CAM_INTRINSIC: !!opencv-matrix
+ rows: 3
+ cols: 3
+ dt: d
+ data: [ 528.04, 0., 639.125, 0., 527.775, 349.074, 0., 0., 1. ]
+RIGHT_CAM_DISTCOEFFS: !!opencv-matrix
+ rows: 5
+ cols: 1
+ dt: d
+ data: [ -0.0416412, 0.00967152, 0.000477674, 0.00033336, -0.00473998 ]
+STEREO_TRANSLATION: !!opencv-matrix
+ rows: 3
+ cols: 1
+ dt: d
+ data: [ 119.814, -0.0286845, 0.0224355 ]
+STEREO_ROTATION: !!opencv-matrix
+ rows: 3
+ cols: 1
+ dt: d
+ data: [ 0.0017263, 0.00115139, -0.000467542 ]
\ No newline at end of file
--- /dev/null
+%YAML:1.0
+LEFT_CAM_INTRINSIC: !!opencv-matrix
+ rows: 3
+ cols: 3
+ dt: d
+ data: [ 263.7425, 0., 333.64, 0., 263.5325, 184.129, 0., 0., 1. ]
+LEFT_CAM_DISTCOEFFS: !!opencv-matrix
+ rows: 5
+ cols: 1
+ dt: d
+ data: [ -0.0397725, 0.00826312, -0.000558719, 0.000138723, -0.00435501]
+RIGHT_CAM_INTRINSIC: !!opencv-matrix
+ rows: 3
+ cols: 3
+ dt: d
+ data: [ 264.02, 0., 335.0625, 0., 263.8875, 182.037, 0., 0., 1. ]
+RIGHT_CAM_DISTCOEFFS: !!opencv-matrix
+ rows: 5
+ cols: 1
+ dt: d
+ data: [ -0.0416412, 0.00967152, 0.000477674, 0.00033336, -0.00473998 ]
+STEREO_TRANSLATION: !!opencv-matrix
+ rows: 3
+ cols: 1
+ dt: d
+ data: [ 119.814, -0.0286845, 0.0224355 ]
+STEREO_ROTATION: !!opencv-matrix
+ rows: 3
+ cols: 1
+ dt: d
+ data: [ 0.0017263, 0.00115139, -0.000467542 ]
\ No newline at end of file
#include <opencv2/core/persistence.hpp>
#define DEFAULT_STEREO_CALIB_FILE_NAME "stereoCalibZed.yaml"
+#define DEFAULT_STEREO_VGA_CALIB_FILE_NAME "stereoCalibZedVGA.yaml"
+#define DEFAULT_STEREO_HD_CALIB_FILE_NAME "stereoCalibZedHD.yaml"
namespace DfsAdaptationImpl
{
mImageSize(cv::Size(0,0))
{
LOGI("ENTER");
- mCalibFilePath += std::string(DEFAULT_STEREO_CALIB_FILE_NAME);
LOGI("LEAVE");
}
cv::Mat intrinsicTest;
try {
+ if (mImageSize == cv::Size(1280, 720))
+ mCalibFilePath += std::string(DEFAULT_STEREO_HD_CALIB_FILE_NAME);
+ else if (mImageSize == cv::Size(672, 376)) {
+ mCalibFilePath += std::string(DEFAULT_STEREO_VGA_CALIB_FILE_NAME);
+ } else {
+ throw std::ios_base::failure("no calibration file");
+ }
+
cv::FileStorage fs(mCalibFilePath, cv::FileStorage::READ);
if (!fs.isOpened()) {
LOGE("Failed to open calib file %s", mCalibFilePath.c_str());
throw std::ios_base::failure("calibration");
}
- fs["LEFT_CAM_VGA"] >> mStereoParam.baceCamera.intrinsic;
+ fs["LEFT_CAM_INTRINSIC"] >> mStereoParam.baceCamera.intrinsic;
fs["LEFT_CAM_DISTCOEFFS"] >> mStereoParam.baceCamera.distCoeffs;
- fs["RIGHT_CAM_VGA"] >> mStereoParam.extraCamera.intrinsic;
+ fs["RIGHT_CAM_INTRINSIC"] >> mStereoParam.extraCamera.intrinsic;
fs["RIGHT_CAM_DISTCOEFFS"] >> mStereoParam.extraCamera.distCoeffs;
fs["STEREO_TRANSLATION"] >> mStereoParam.translation;
}
cv::Mat rBaseMat, rExtraMat, dispMat;
-#if 0
+
// with remap
cv::remap(baseMat, rBaseMat, mBaseReMap[0], mBaseReMap[1], cv::INTER_LINEAR);
cv::remap(extraMat, rExtraMat, mExtraReMap[0], mExtraReMap[1], cv::INTER_LINEAR);
mDfsOcv->compute(rBaseMat, rExtraMat, dispMat);
dispMat.convertTo(mDispMat, CV_8UC1, 1.0/16.0);
-#else
- // without remap
- mDfsOcv->compute(baseMat, extraMat, dispMat);
- dispMat.convertTo(mDispMat, CV_8UC1, 1.0/16.0);
-#endif
+
mDepthData.data = mDispMat.ptr<unsigned char>();
mDepthData.type = DFS_DATA_TYPE_UINT8;
mDepthData.width = mDispMat.cols;