protected:
// assumed that left image is a reference image
virtual void runStereoMatchingAlgorithm( const Mat& leftImg, const Mat& rightImg,
- Mat& leftDisp, Mat& rightDisp, FileStorage& paramsFS, const string& datasetName ) = 0;
+ Mat& leftDisp, Mat& rightDisp, int caseIdx ) = 0;
- int readDatasetsInfo();
+ int readDatasetsParams( FileStorage& fs );
+ virtual int readRunParams( FileStorage& fs );
void writeErrors( const string& errName, const vector<float>& errors, FileStorage* fs = 0 );
void readErrors( FileNode& fn, const string& errName, vector<float>& errors );
int compareErrors( const vector<float>& calcErrors, const vector<float>& validErrors,
const vector<float>& eps, const string& errName );
- int processStereoMatchingResults( FileStorage& fs, int datasetIdx, bool isWrite,
+ int processStereoMatchingResults( FileStorage& fs, int caseIdx, bool isWrite,
const Mat& leftImg, const Mat& rightImg,
const Mat& trueLeftDisp, const Mat& trueRightDisp,
const Mat& leftDisp, const Mat& rightDisp );
void run( int );
- vector<string> datasetsNames;
- vector<int> dispScaleFactors;
- vector<int> dispUnknownVal;
-
vector<float> rmsEps;
vector<float> fracEps;
+
+ struct DatasetParams
+ {
+ int dispScaleFactor;
+ int dispUnknVal;
+ };
+ map<string, DatasetParams> datasetsParams;
+
+ vector<string> caseNames;
+ vector<string> caseDatasets;
};
void CV_StereoMatchingTest::run(int)
{
string dataPath = ts->get_data_path();
- string algoritmName = name;
- assert( !algoritmName.empty() );
+ string algorithmName = name;
+ assert( !algorithmName.empty() );
if( dataPath.empty() )
{
ts->printf( CvTS::LOG, "dataPath is empty" );
return;
}
- int code = readDatasetsInfo();
+ FileStorage datasetsFS( dataPath + DATASETS_DIR + DATASETS_FILE, FileStorage::READ );
+ int code = readDatasetsParams( datasetsFS );
if( code != CvTS::OK )
{
ts->set_failed_test_info( code );
return;
}
-
- string fullResultFilename = dataPath + ALGORITHMS_DIR + algoritmName + RESULT_FILE;
- bool isWrite = true; // write or compare results
- FileStorage runParamsFS( dataPath + ALGORITHMS_DIR + algoritmName + RUN_PARAMS_FILE, FileStorage::READ );
+ FileStorage runParamsFS( dataPath + ALGORITHMS_DIR + algorithmName + RUN_PARAMS_FILE, FileStorage::READ );
+ code = readRunParams( runParamsFS );
+ if( code != CvTS::OK )
+ {
+ ts->set_failed_test_info( code );
+ return;
+ }
+
+ string fullResultFilename = dataPath + ALGORITHMS_DIR + algorithmName + RESULT_FILE;
FileStorage resFS( fullResultFilename, FileStorage::READ );
+ bool isWrite = true; // write or compare results
if( resFS.isOpened() )
isWrite = false;
else
resFS.open( fullResultFilename, FileStorage::WRITE );
if( !resFS.isOpened() )
{
- ts->printf( CvTS::LOG, "file named %s can not be read or written\n", fullResultFilename.c_str() );
+ ts->printf( CvTS::LOG, "file %s can not be read or written\n", fullResultFilename.c_str() );
ts->set_failed_test_info( CvTS::FAIL_BAD_ARG_CHECK );
return;
}
resFS << "stereo_matching" << "{";
}
- int progress = 0;
- for( int dsi = 0; dsi < (int)datasetsNames.size(); dsi++)
+ int progress = 0, caseCount = caseNames.size();
+ for( int ci = 0; ci < caseCount; ci++)
{
- progress = update_progress( progress, dsi, (int)datasetsNames.size(), 0 );
- string datasetFullDirName = dataPath + DATASETS_DIR + datasetsNames[dsi] + "/";
+ progress = update_progress( progress, ci, caseCount, 0 );
+
+ string datasetName = caseDatasets[ci];
+ string datasetFullDirName = dataPath + DATASETS_DIR + datasetName + "/";
Mat leftImg = imread(datasetFullDirName + LEFT_IMG_NAME);
Mat rightImg = imread(datasetFullDirName + RIGHT_IMG_NAME);
Mat trueLeftDisp = imread(datasetFullDirName + TRUE_LEFT_DISP_NAME, 0);
Mat trueRightDisp = imread(datasetFullDirName + TRUE_RIGHT_DISP_NAME, 0);
- if( leftImg.empty() || rightImg.empty() || trueLeftDisp.empty()/* || trueRightDisp.empty()*/ )
+ if( leftImg.empty() || rightImg.empty() || trueLeftDisp.empty() )
{
- ts->printf( CvTS::LOG, "images or left ground-truth disparities of dataset %s can not be read", datasetsNames[dsi].c_str() );
+ ts->printf( CvTS::LOG, "images or left ground-truth disparities of dataset %s can not be read", datasetName.c_str() );
code = CvTS::FAIL_INVALID_TEST_DATA;
continue;
}
- Mat tmp;
- int dispScaleFactor = dispScaleFactors[dsi];
- trueLeftDisp.convertTo( tmp, CV_32FC1, 1.f/dispScaleFactor ); trueLeftDisp = tmp; tmp.release();
+ int dispScaleFactor = datasetsParams[datasetName].dispScaleFactor;
+ Mat tmp; trueLeftDisp.convertTo( tmp, CV_32FC1, 1.f/dispScaleFactor ); trueLeftDisp = tmp; tmp.release();
if( !trueRightDisp.empty() )
trueRightDisp.convertTo( tmp, CV_32FC1, 1.f/dispScaleFactor ); trueRightDisp = tmp; tmp.release();
Mat leftDisp, rightDisp;
- runStereoMatchingAlgorithm( leftImg, rightImg, leftDisp, rightDisp, runParamsFS, datasetsNames[dsi] );
+ runStereoMatchingAlgorithm( leftImg, rightImg, leftDisp, rightDisp, ci );
leftDisp.convertTo( tmp, CV_32FC1 ); leftDisp = tmp; tmp.release();
rightDisp.convertTo( tmp, CV_32FC1 ); rightDisp = tmp; tmp.release();
- int tempCode = processStereoMatchingResults( resFS, dsi, isWrite,
+ int tempCode = processStereoMatchingResults( resFS, ci, isWrite,
leftImg, rightImg, trueLeftDisp, trueRightDisp, leftDisp, rightDisp);
code = tempCode==CvTS::OK ? code : tempCode;
}
badPxlsFractions[5] = badMatchPxlsFraction( calcLeftDisp, trueLeftDisp, depthDiscontMask );
}
-int CV_StereoMatchingTest::processStereoMatchingResults( FileStorage& fs, int datasetIdx, bool isWrite,
+int CV_StereoMatchingTest::processStereoMatchingResults( FileStorage& fs, int caseIdx, bool isWrite,
const Mat& leftImg, const Mat& rightImg,
const Mat& trueLeftDisp, const Mat& trueRightDisp,
const Mat& leftDisp, const Mat& rightDisp )
// get masks for unknown ground truth disparity values
Mat leftUnknMask, rightUnknMask;
- absdiff( trueLeftDisp, Scalar(dispUnknownVal[datasetIdx]), leftUnknMask );
+ DatasetParams params = datasetsParams[caseDatasets[caseIdx]];
+ absdiff( trueLeftDisp, Scalar(params.dispUnknVal), leftUnknMask );
leftUnknMask = leftUnknMask < numeric_limits<float>::epsilon();
assert(leftUnknMask.type() == CV_8UC1);
if( !trueRightDisp.empty() )
{
- absdiff( trueRightDisp, Scalar(dispUnknownVal[datasetIdx]), rightUnknMask );
+ absdiff( trueRightDisp, Scalar(params.dispUnknVal), rightUnknMask );
rightUnknMask = rightUnknMask < numeric_limits<float>::epsilon();
assert(leftUnknMask.type() == CV_8UC1);
}
calcErrors( leftImg, rightImg, trueLeftDisp, trueRightDisp, leftUnknMask, rightUnknMask,
leftDisp, rightDisp, rmss, badPxlsFractions );
- const string& datasetName = datasetsNames[datasetIdx];
if( isWrite )
{
- fs << datasetName << "{";
+ fs << caseNames[caseIdx] << "{";
cvWriteComment( fs.fs, RMS_STR.c_str(), 0 );
writeErrors( RMS_STR, rmss, &fs );
cvWriteComment( fs.fs, BAD_PXLS_FRACTION_STR.c_str(), 0 );
}
else // compare
{
- ts->printf( CvTS::LOG, "\nquality on dataset %s\n", datasetName.c_str() );
+ ts->printf( CvTS::LOG, "\nquality of case named %s\n", caseNames[caseIdx].c_str() );
ts->printf( CvTS::LOG, "%s\n", RMS_STR.c_str() );
writeErrors( RMS_STR, rmss );
ts->printf( CvTS::LOG, "%s\n", BAD_PXLS_FRACTION_STR.c_str() );
writeErrors( BAD_PXLS_FRACTION_STR, badPxlsFractions );
- FileNode fn = fs.getFirstTopLevelNode()[datasetName];
+ FileNode fn = fs.getFirstTopLevelNode()[caseNames[caseIdx]];
vector<float> validRmss, validBadPxlsFractions;
readErrors( fn, RMS_STR, validRmss );
return code;
}
-int CV_StereoMatchingTest::readDatasetsInfo()
+int CV_StereoMatchingTest::readDatasetsParams( FileStorage& fs )
{
- string datasetsFilename = string(ts->get_data_path()) + DATASETS_DIR + DATASETS_FILE;
-
- FileStorage fs( datasetsFilename, FileStorage::READ );
if( !fs.isOpened() )
{
- ts->printf( CvTS::LOG, "%s can not be read\n", datasetsFilename.c_str() );
+ ts->printf( CvTS::LOG, "datasetsParams can not be read " );
return CvTS::FAIL_INVALID_TEST_DATA;
}
- FileNode fn = fs.getFirstTopLevelNode()["names_scale_unknown"];
+ datasetsParams.clear();
+ FileNode fn = fs.getFirstTopLevelNode();
assert(fn.isSeq());
- datasetsNames.clear();
- dispScaleFactors.clear();
- dispUnknownVal.clear();
for( int i = 0; i < (int)fn.size(); i+=3 )
{
- string name = fn[i]; datasetsNames.push_back(name);
- string scale = fn[i+1]; dispScaleFactors.push_back(atoi(scale.c_str()));
- string unkn = fn[i+2]; dispUnknownVal.push_back(atoi(unkn.c_str()));
+ string name = fn[i];
+ DatasetParams params;
+ string sf = fn[i+1]; params.dispScaleFactor = atoi(sf.c_str());
+ string uv = fn[i+2]; params.dispUnknVal = atoi(uv.c_str());
+ datasetsParams[name] = params;
}
+ return CvTS::OK;
+}
+int CV_StereoMatchingTest::readRunParams( FileStorage& fs )
+{
+ if( !fs.isOpened() )
+ {
+ ts->printf( CvTS::LOG, "runParams can not be read " );
+ return CvTS::FAIL_INVALID_TEST_DATA;
+ }
+ caseNames.clear();;
+ caseDatasets.clear();
return CvTS::OK;
}
{
public:
CV_StereoBMTest() : CV_StereoMatchingTest( "stereobm" )
- { fill(rmsEps.begin(), rmsEps.end(), 0.001f); fill(fracEps.begin(), fracEps.end(), 0.00001f); }
+ { fill(rmsEps.begin(), rmsEps.end(), 0.4f); fill(fracEps.begin(), fracEps.end(), 0.02f); }
+
protected:
- virtual void runStereoMatchingAlgorithm( const Mat& _leftImg, const Mat& _rightImg,
- Mat& leftDisp, Mat& rightDisp, FileStorage& paramsFS, const string& datasetName )
+ struct RunParams
+ {
+ int ndisp;
+ int winSize;
+ };
+ vector<RunParams> caseRunParams;
+
+ virtual int readRunParams( FileStorage& fs )
{
- int ndisp = 16;
- int winSize = 21;
- assert( !datasetName.empty() );
- if( paramsFS.isOpened() )
+ int code = CV_StereoMatchingTest::readRunParams( fs );
+ FileNode fn = fs.getFirstTopLevelNode();
+ assert(fn.isSeq());
+ for( int i = 0; i < (int)fn.size(); i+=4 )
{
- FileNodeIterator fni = paramsFS.getFirstTopLevelNode()[datasetName].begin();
- fni >> ndisp >> winSize;
+ string caseName = fn[i], datasetName = fn[i+1];
+ RunParams params;
+ string ndisp = fn[i+2]; params.ndisp = atoi(ndisp.c_str());
+ string winSize = fn[i+3]; params.winSize = atoi(winSize.c_str());
+ caseNames.push_back( caseName );
+ caseDatasets.push_back( datasetName );
+ caseRunParams.push_back( params );
}
- else
- ts->printf( CvTS::LOG, "%s was tested with default params "
- "(ndisp = 16, winSize = 21)\n", datasetName.c_str());
- assert( ndisp%16 == 0 );
+ return code;
+ }
+
+ virtual void runStereoMatchingAlgorithm( const Mat& _leftImg, const Mat& _rightImg,
+ Mat& leftDisp, Mat& rightDisp, int caseIdx )
+ {
+ RunParams params = caseRunParams[caseIdx];
+ assert( params.ndisp%16 == 0 );
assert( _leftImg.type() == CV_8UC3 && _rightImg.type() == CV_8UC3 );
Mat leftImg; cvtColor( _leftImg, leftImg, CV_BGR2GRAY );
Mat rightImg; cvtColor( _rightImg, rightImg, CV_BGR2GRAY );
- StereoBM bm( StereoBM::BASIC_PRESET, ndisp, winSize );
+ StereoBM bm( StereoBM::BASIC_PRESET, params.ndisp, params.winSize );
bm( leftImg, rightImg, leftDisp, CV_32F );
}
};
fracEps[5] = 0.10f; // borderedDepthDiscont
}
protected:
- virtual void runStereoMatchingAlgorithm( const Mat& _leftImg, const Mat& _rightImg,
- Mat& leftDisp, Mat& rightDisp, FileStorage& paramsFS, const string& datasetName )
+ struct RunParams
{
- int ndisp = 20;
- int icount = 2;
- assert( !datasetName.empty() );
- if( paramsFS.isOpened() )
+ int ndisp;
+ int iterCount;
+ };
+ vector<RunParams> caseRunParams;
+
+ virtual int readRunParams( FileStorage& fs )
+ {
+ int code = CV_StereoMatchingTest::readRunParams(fs);
+ FileNode fn = fs.getFirstTopLevelNode();
+ assert(fn.isSeq());
+ for( int i = 0; i < (int)fn.size(); i+=4 )
{
- FileNodeIterator fni = paramsFS.getFirstTopLevelNode()[datasetName].begin();
- fni >> ndisp >> icount;
+ string caseName = fn[i], datasetName = fn[i+1];
+ RunParams params;
+ string ndisp = fn[i+2]; params.ndisp = atoi(ndisp.c_str());
+ string iterCount = fn[i+3]; params.iterCount = atoi(iterCount.c_str());
+ caseNames.push_back( caseName );
+ caseDatasets.push_back( datasetName );
+ caseRunParams.push_back( params );
}
- else
- ts->printf( CvTS::LOG, "%s was tested with default params "
- "(ndisp = 20, icount = 2)\n", datasetName.c_str());
+ return code;
+ }
+ virtual void runStereoMatchingAlgorithm( const Mat& _leftImg, const Mat& _rightImg,
+ Mat& leftDisp, Mat& rightDisp, int caseIdx )
+ {
+ RunParams params = caseRunParams[caseIdx];
assert( _leftImg.type() == CV_8UC3 && _rightImg.type() == CV_8UC3 );
Mat leftImg, rightImg, tmp;
cvtColor( _leftImg, leftImg, CV_BGR2GRAY );
rightDisp.create( rightImg.size(), CV_16SC1 );
CvMat _limg = leftImg, _rimg = rightImg, _ldisp = leftDisp, _rdisp = rightDisp;
- CvStereoGCState *state = cvCreateStereoGCState( ndisp, icount );
+ CvStereoGCState *state = cvCreateStereoGCState( params.ndisp, params.iterCount );
cvFindStereoCorrespondenceGC( &_limg, &_rimg, &_ldisp, &_rdisp, state );
cvReleaseStereoGCState( &state );
};
CV_StereoGCTest stereoGC;
+
+//----------------------------------- StereoSGBM test -----------------------------------------------------
+
+class CV_StereoSGBMTest : public CV_StereoMatchingTest
+{
+public:
+ CV_StereoSGBMTest() : CV_StereoMatchingTest( "stereosgbm" )
+ { fill(rmsEps.begin(), rmsEps.end(), 0.1f); fill(fracEps.begin(), fracEps.end(), 0.01f); }
+
+protected:
+ struct RunParams
+ {
+ int ndisp;
+ int winSize;
+ bool fullDP;
+ };
+ vector<RunParams> caseRunParams;
+
+ virtual int readRunParams( FileStorage& fs )
+ {
+ int code = CV_StereoMatchingTest::readRunParams(fs);
+ FileNode fn = fs.getFirstTopLevelNode();
+ assert(fn.isSeq());
+ for( int i = 0; i < (int)fn.size(); i+=5 )
+ {
+ string caseName = fn[i], datasetName = fn[i+1];
+ RunParams params;
+ string ndisp = fn[i+2]; params.ndisp = atoi(ndisp.c_str());
+ string winSize = fn[i+3]; params.winSize = atoi(winSize.c_str());
+ string fullDP = fn[i+4]; params.fullDP = atoi(fullDP.c_str()) == 0 ? false : true;
+ caseNames.push_back( caseName );
+ caseDatasets.push_back( datasetName );
+ caseRunParams.push_back( params );
+ }
+ return code;
+ }
+
+ virtual void runStereoMatchingAlgorithm( const Mat& leftImg, const Mat& rightImg,
+ Mat& leftDisp, Mat& rightDisp, int caseIdx )
+ {
+ RunParams params = caseRunParams[caseIdx];
+ assert( params.ndisp%16 == 0 );
+ StereoSGBM sgbm( 0, params.ndisp, params.winSize, 6*params.winSize*params.winSize, 15*params.winSize*params.winSize,
+ 1, 63, 10, 100, 32, params.fullDP );
+ sgbm( leftImg, rightImg, leftDisp );
+ assert( leftDisp.type() == CV_16SC1 );
+ leftDisp/=16;
+ }
+};
+
+CV_StereoSGBMTest stereoSGBM;
+
<?xml version="1.0"?>\r
<opencv_storage>
<params>
- <!-- numDisp and winSize -->
- <barn2> 16 19 </barn2>\r
- <bull> 16 39 </bull>\r
- <cones> 64 7 </cones>
- <poster> 48 9 </poster>\r
- <sawtooth> 16 13 </sawtooth>\r
- <teddy> 48 9 </teddy>
- <tsukuba> 16 7 </tsukuba>\r
- <venus> 32 43 </venus>
+ <!-- caseName, datasetName, numDisp, winSize -->
+ case_barn2 barn2 "16" "19"\r
+ case_bull bull "16" "39"\r
+ case_cones cones "64" "7"
+ case_poster poster "48" "9"\r
+ case_sawtooth sawtooth "16" "13"\r
+ case_teddy teddy "48" "9"
+ case_tsukuba tsukuba "16" "7"\r
+ case_venus venus "32" "43"
</params>\r
</opencv_storage>\r
<?xml version="1.0"?>
<opencv_storage>
<stereo_matching>
- <barn2>
+ <case_barn2>
<!-- RMS -->
<borderedAllRMS>2.9697046279907227e+00</borderedAllRMS>
<borderedNoOcclRMS>2.6947205066680908e+00</borderedNoOcclRMS>
<borderedOcclBadPxlsFraction>9.5660561323165894e-01</borderedOcclBadPxlsFraction>
<borderedTexturedBadPxlsFraction>7.7511578798294067e-02</borderedTexturedBadPxlsFraction>
<borderedTexturelessBadPxlsFraction>9.5420710742473602e-02</borderedTexturelessBadPxlsFraction>
- <borderedDepthDiscontBadPxlsFraction>4.3494275212287903e-01</borderedDepthDiscontBadPxlsFraction></barn2>
- <bull>
+ <borderedDepthDiscontBadPxlsFraction>4.3494275212287903e-01</borderedDepthDiscontBadPxlsFraction></case_barn2>
+ <case_bull>
<!-- RMS -->
<borderedAllRMS>2.6354846954345703e+00</borderedAllRMS>
<borderedNoOcclRMS>2.4656887054443359e+00</borderedNoOcclRMS>
<borderedOcclBadPxlsFraction>9.8041474819183350e-01</borderedOcclBadPxlsFraction>
<borderedTexturedBadPxlsFraction>8.6934097111225128e-02</borderedTexturedBadPxlsFraction>
<borderedTexturelessBadPxlsFraction>8.8989585638046265e-02</borderedTexturelessBadPxlsFraction>
- <borderedDepthDiscontBadPxlsFraction>4.7518435120582581e-01</borderedDepthDiscontBadPxlsFraction></bull>
- <cones>
+ <borderedDepthDiscontBadPxlsFraction>4.7518435120582581e-01</borderedDepthDiscontBadPxlsFraction></case_bull>
+ <case_cones>
<!-- RMS -->
<borderedAllRMS>1.6001134872436523e+01</borderedAllRMS>
<borderedNoOcclRMS>1.2243816375732422e+01</borderedNoOcclRMS>
<borderedOcclBadPxlsFraction>9.8274689912796021e-01</borderedOcclBadPxlsFraction>
<borderedTexturedBadPxlsFraction>1.7283539474010468e-01</borderedTexturedBadPxlsFraction>
<borderedTexturelessBadPxlsFraction>1.6594004631042480e-01</borderedTexturelessBadPxlsFraction>
- <borderedDepthDiscontBadPxlsFraction>3.6046066880226135e-01</borderedDepthDiscontBadPxlsFraction></cones>
- <poster>
+ <borderedDepthDiscontBadPxlsFraction>3.6046066880226135e-01</borderedDepthDiscontBadPxlsFraction></case_cones>
+ <case_poster>
<!-- RMS -->
<borderedAllRMS>4.6672196388244629e+00</borderedAllRMS>
<borderedNoOcclRMS>4.4640636444091797e+00</borderedNoOcclRMS>
<borderedOcclBadPxlsFraction>9.6538126468658447e-01</borderedOcclBadPxlsFraction>
<borderedTexturedBadPxlsFraction>1.1097636073827744e-01</borderedTexturedBadPxlsFraction>
<borderedTexturelessBadPxlsFraction>3.2097390294075012e-01</borderedTexturelessBadPxlsFraction>
- <borderedDepthDiscontBadPxlsFraction>2.4112132191658020e-01</borderedDepthDiscontBadPxlsFraction></poster>
- <sawtooth>
+ <borderedDepthDiscontBadPxlsFraction>2.4112132191658020e-01</borderedDepthDiscontBadPxlsFraction></case_poster>
+ <case_sawtooth>
<!-- RMS -->
<borderedAllRMS>5.9703788757324219e+00</borderedAllRMS>
<borderedNoOcclRMS>5.8280234336853027e+00</borderedNoOcclRMS>
<borderedOcclBadPxlsFraction>9.7759723663330078e-01</borderedOcclBadPxlsFraction>
<borderedTexturedBadPxlsFraction>1.5190416574478149e-01</borderedTexturedBadPxlsFraction>
<borderedTexturelessBadPxlsFraction>1.8714335560798645e-01</borderedTexturelessBadPxlsFraction>
- <borderedDepthDiscontBadPxlsFraction>2.5391057133674622e-01</borderedDepthDiscontBadPxlsFraction></sawtooth>
- <teddy>
+ <borderedDepthDiscontBadPxlsFraction>2.5391057133674622e-01</borderedDepthDiscontBadPxlsFraction></case_sawtooth>
+ <case_teddy>
<!-- RMS -->
<borderedAllRMS>1.3826770782470703e+01</borderedAllRMS>
<borderedNoOcclRMS>1.1086133956909180e+01</borderedNoOcclRMS>
<borderedOcclBadPxlsFraction>9.9260163307189941e-01</borderedOcclBadPxlsFraction>
<borderedTexturedBadPxlsFraction>1.8982644379138947e-01</borderedTexturedBadPxlsFraction>
<borderedTexturelessBadPxlsFraction>1.8450041115283966e-01</borderedTexturelessBadPxlsFraction>
- <borderedDepthDiscontBadPxlsFraction>3.8109087944030762e-01</borderedDepthDiscontBadPxlsFraction></teddy>
- <tsukuba>
+ <borderedDepthDiscontBadPxlsFraction>3.8109087944030762e-01</borderedDepthDiscontBadPxlsFraction></case_teddy>
+ <case_tsukuba>
<!-- RMS -->
<borderedAllRMS>3.0015664100646973e+00</borderedAllRMS>
<borderedNoOcclRMS>2.8946506977081299e+00</borderedNoOcclRMS>
<borderedOcclBadPxlsFraction>9.1699779033660889e-01</borderedOcclBadPxlsFraction>
<borderedTexturedBadPxlsFraction>9.2220596969127655e-02</borderedTexturedBadPxlsFraction>
<borderedTexturelessBadPxlsFraction>2.3998285830020905e-01</borderedTexturelessBadPxlsFraction>
- <borderedDepthDiscontBadPxlsFraction>3.1393453478813171e-01</borderedDepthDiscontBadPxlsFraction></tsukuba>
- <venus>
+ <borderedDepthDiscontBadPxlsFraction>3.1393453478813171e-01</borderedDepthDiscontBadPxlsFraction></case_tsukuba>
+ <case_venus>
<!-- RMS -->
<borderedAllRMS>3.3121912479400635e+00</borderedAllRMS>
<borderedNoOcclRMS>2.9800443649291992e+00</borderedNoOcclRMS>
<borderedOcclBadPxlsFraction>9.5995551347732544e-01</borderedOcclBadPxlsFraction>
<borderedTexturedBadPxlsFraction>8.5449673235416412e-02</borderedTexturedBadPxlsFraction>
<borderedTexturelessBadPxlsFraction>1.3546563684940338e-01</borderedTexturelessBadPxlsFraction>
- <borderedDepthDiscontBadPxlsFraction>4.1135340929031372e-01</borderedDepthDiscontBadPxlsFraction></venus></stereo_matching>
+ <borderedDepthDiscontBadPxlsFraction>4.1135340929031372e-01</borderedDepthDiscontBadPxlsFraction></case_venus></stereo_matching>
</opencv_storage>
<?xml version="1.0"?>\r
<opencv_storage>
<params>
- <!-- numDisp, iterCount -->
- <barn2> 32 2 </barn2>\r
- <bull> 40 2 </bull>
- <cones> 50 3 </cones>
- <poster> 51 3 </poster>
- <sawtooth> 20 3 </sawtooth>
- <teddy> 70 3 </teddy>
- <tsukuba> 16 3 </tsukuba>
- <venus> 25 2 </venus>
+ <!-- caseName, datasetName, numDisp, iterCount -->
+ case_barn2 barn2 "32" "2"\r
+ case_bull bull "40" "2"
+ case_cones cones "50" "3"
+ case_poster poster "51" "3"
+ case_sawtooth sawtooth "20" "3"
+ case_teddy teddy "70" "3"
+ case_tsukuba tsukuba "16" "3"
+ case_venus venus "25" "2"
</params>\r
</opencv_storage>\r
<?xml version="1.0"?>
<opencv_storage>
<stereo_matching>
- <barn2>
+ <case_barn2>
<!-- RMS -->
<borderedAllRMS>8.8603770732879639e-01</borderedAllRMS>
<borderedNoOcclRMS>6.9244784116744995e-01</borderedNoOcclRMS>
<borderedOcclBadPxlsFraction>5.4741239547729492e-01</borderedOcclBadPxlsFraction>
<borderedTexturedBadPxlsFraction>1.1144985444843769e-02</borderedTexturedBadPxlsFraction>
<borderedTexturelessBadPxlsFraction>3.2244794070720673e-02</borderedTexturelessBadPxlsFraction>
- <borderedDepthDiscontBadPxlsFraction>8.4495998919010162e-02</borderedDepthDiscontBadPxlsFraction></barn2>
- <bull>
+ <borderedDepthDiscontBadPxlsFraction>8.4495998919010162e-02</borderedDepthDiscontBadPxlsFraction></case_barn2>
+ <case_bull>
<!-- RMS -->
<borderedAllRMS>3.7193709611892700e-01</borderedAllRMS>
<borderedNoOcclRMS>3.6503484845161438e-01</borderedNoOcclRMS>
<borderedOcclBadPxlsFraction>2.0391705632209778e-01</borderedOcclBadPxlsFraction>
<borderedTexturedBadPxlsFraction>5.6590605527162552e-03</borderedTexturedBadPxlsFraction>
<borderedTexturelessBadPxlsFraction>2.0203370600938797e-02</borderedTexturelessBadPxlsFraction>
- <borderedDepthDiscontBadPxlsFraction>1.3673509657382965e-01</borderedDepthDiscontBadPxlsFraction></bull>
- <cones>
+ <borderedDepthDiscontBadPxlsFraction>1.3673509657382965e-01</borderedDepthDiscontBadPxlsFraction></case_bull>
+ <case_cones>
<!-- RMS -->
<borderedAllRMS>3.7660238742828369e+00</borderedAllRMS>
<borderedNoOcclRMS>2.2453501224517822e+00</borderedNoOcclRMS>
<borderedOcclBadPxlsFraction>7.0024454593658447e-01</borderedOcclBadPxlsFraction>
<borderedTexturedBadPxlsFraction>1.1467904597520828e-01</borderedTexturedBadPxlsFraction>
<borderedTexturelessBadPxlsFraction>1.2472582608461380e-01</borderedTexturelessBadPxlsFraction>
- <borderedDepthDiscontBadPxlsFraction>1.9106541574001312e-01</borderedDepthDiscontBadPxlsFraction></cones>
- <poster>
+ <borderedDepthDiscontBadPxlsFraction>1.9106541574001312e-01</borderedDepthDiscontBadPxlsFraction></case_cones>
+ <case_poster>
<!-- RMS -->
<borderedAllRMS>4.7536170482635498e-01</borderedAllRMS>
<borderedNoOcclRMS>3.3776870369911194e-01</borderedNoOcclRMS>
<borderedOcclBadPxlsFraction>1.1853637546300888e-01</borderedOcclBadPxlsFraction>
<borderedTexturedBadPxlsFraction>1.7978340620175004e-03</borderedTexturedBadPxlsFraction>
<borderedTexturelessBadPxlsFraction>5.7604793255450204e-05</borderedTexturelessBadPxlsFraction>
- <borderedDepthDiscontBadPxlsFraction>8.2927709445357323e-03</borderedDepthDiscontBadPxlsFraction></poster>
- <sawtooth>
+ <borderedDepthDiscontBadPxlsFraction>8.2927709445357323e-03</borderedDepthDiscontBadPxlsFraction></case_poster>
+ <case_sawtooth>
<!-- RMS -->
<borderedAllRMS>1.1130944490432739e+00</borderedAllRMS>
<borderedNoOcclRMS>8.3637070655822754e-01</borderedNoOcclRMS>
<borderedOcclBadPxlsFraction>3.0674543976783752e-01</borderedOcclBadPxlsFraction>
<borderedTexturedBadPxlsFraction>8.1253368407487869e-03</borderedTexturedBadPxlsFraction>
<borderedTexturelessBadPxlsFraction>1.0415319353342056e-02</borderedTexturelessBadPxlsFraction>
- <borderedDepthDiscontBadPxlsFraction>6.5905548632144928e-02</borderedDepthDiscontBadPxlsFraction></sawtooth>
- <teddy>
+ <borderedDepthDiscontBadPxlsFraction>6.5905548632144928e-02</borderedDepthDiscontBadPxlsFraction></case_sawtooth>
+ <case_teddy>
<!-- RMS -->
<borderedAllRMS>2.4008355140686035e+00</borderedAllRMS>
<borderedNoOcclRMS>1.8177765607833862e+00</borderedNoOcclRMS>
<borderedOcclBadPxlsFraction>7.4075204133987427e-01</borderedOcclBadPxlsFraction>
<borderedTexturedBadPxlsFraction>8.8783964514732361e-02</borderedTexturedBadPxlsFraction>
<borderedTexturelessBadPxlsFraction>2.5913196802139282e-01</borderedTexturelessBadPxlsFraction>
- <borderedDepthDiscontBadPxlsFraction>2.3737339675426483e-01</borderedDepthDiscontBadPxlsFraction></teddy>
- <tsukuba>
+ <borderedDepthDiscontBadPxlsFraction>2.3737339675426483e-01</borderedDepthDiscontBadPxlsFraction></case_teddy>
+ <case_tsukuba>
<!-- RMS -->
<borderedAllRMS>9.2417442798614502e-01</borderedAllRMS>
<borderedNoOcclRMS>7.7376806735992432e-01</borderedNoOcclRMS>
<borderedOcclBadPxlsFraction>3.6732891201972961e-01</borderedOcclBadPxlsFraction>
<borderedTexturedBadPxlsFraction>2.0044153556227684e-02</borderedTexturedBadPxlsFraction>
<borderedTexturelessBadPxlsFraction>2.8173983097076416e-02</borderedTexturelessBadPxlsFraction>
- <borderedDepthDiscontBadPxlsFraction>8.9960016310214996e-02</borderedDepthDiscontBadPxlsFraction></tsukuba>
- <venus>
+ <borderedDepthDiscontBadPxlsFraction>8.9960016310214996e-02</borderedDepthDiscontBadPxlsFraction></case_tsukuba>
+ <case_venus>
<!-- RMS -->
<borderedAllRMS>7.1949613094329834e-01</borderedAllRMS>
<borderedNoOcclRMS>6.6295725107192993e-01</borderedNoOcclRMS>
<borderedOcclBadPxlsFraction>4.4901743531227112e-01</borderedOcclBadPxlsFraction>
<borderedTexturedBadPxlsFraction>1.2435927987098694e-02</borderedTexturedBadPxlsFraction>
<borderedTexturelessBadPxlsFraction>5.0676062703132629e-02</borderedTexturelessBadPxlsFraction>
- <borderedDepthDiscontBadPxlsFraction>1.1578573286533356e-01</borderedDepthDiscontBadPxlsFraction></venus></stereo_matching>
+ <borderedDepthDiscontBadPxlsFraction>1.1578573286533356e-01</borderedDepthDiscontBadPxlsFraction></case_venus></stereo_matching>
</opencv_storage>
--- /dev/null
+<?xml version="1.0"?>\r
+<opencv_storage>
+<params>
+ <!-- caseName, datasetName, numDisp, winSize, fullDP -->
+ case_barn2_0 barn2 "32" "1" "0"\r
+ case_barn2_1 barn2 "32" "1" "1"\r
+ case_bull_0 bull "32" "5" "0"\r
+ case_bull_1 bull "32" "5" "1"\r
+ case_cones_0 cones "64" "5" "0"\r
+ case_cones_1 cones "64" "5" "1"
+ case_poster_0 poster "32" "1" "0"\r
+ case_poster_1 poster "32" "1" "1"\r
+ case_sawtooth_0 sawtooth "32" "1" "0"\r
+ case_sawtooth_1 sawtooth "32" "1" "1"\r
+ case_teddy_0 teddy "48" "1" "0"\r
+ case_teddy_1 teddy "48" "1" "1"
+ case_tsukuba_0 tsukuba "16" "1" "0"\r
+ case_tsukuba_1 tsukuba "16" "1" "0"\r
+ case_venus_0 venus "32" "1" "0"\r
+ case_venus_1 venus "32" "1" "0"
+</params>\r
+</opencv_storage>\r
--- /dev/null
+<?xml version="1.0"?>
+<opencv_storage>
+<stereo_matching>
+ <case_barn2_0>
+ <!-- RMS -->
+ <borderedAllRMS>3.6340250968933105e+00</borderedAllRMS>
+ <borderedNoOcclRMS>3.4821333885192871e+00</borderedNoOcclRMS>
+ <borderedOcclRMS>7.9718170166015625e+00</borderedOcclRMS>
+ <borderedTexturedRMS>2.1075375080108643e+00</borderedTexturedRMS>
+ <borderedTexturelessRMS>4.3835029602050781e+00</borderedTexturelessRMS>
+ <borderedDepthDiscontRMS>3.5368020534515381e+00</borderedDepthDiscontRMS>
+ <!-- BadPxlsFraction -->
+ <borderedAllBadPxlsFraction>1.7852847278118134e-01</borderedAllBadPxlsFraction>
+ <borderedNoOcclBadPxlsFraction>1.6128475964069366e-01</borderedNoOcclBadPxlsFraction>
+ <borderedOcclBadPxlsFraction>9.8167788982391357e-01</borderedOcclBadPxlsFraction>
+ <borderedTexturedBadPxlsFraction>6.7847795784473419e-02</borderedTexturedBadPxlsFraction>
+ <borderedTexturelessBadPxlsFraction>2.4750202894210815e-01</borderedTexturelessBadPxlsFraction>
+ <borderedDepthDiscontBadPxlsFraction>2.3828186094760895e-01</borderedDepthDiscontBadPxlsFraction></case_barn2_0>
+ <case_barn2_1>
+ <!-- RMS -->
+ <borderedAllRMS>3.5442306995391846e+00</borderedAllRMS>
+ <borderedNoOcclRMS>3.3751916885375977e+00</borderedNoOcclRMS>
+ <borderedOcclRMS>8.1877794265747070e+00</borderedOcclRMS>
+ <borderedTexturedRMS>2.1069571971893311e+00</borderedTexturedRMS>
+ <borderedTexturelessRMS>4.2198753356933594e+00</borderedTexturelessRMS>
+ <borderedDepthDiscontRMS>3.7755236625671387e+00</borderedDepthDiscontRMS>
+ <!-- BadPxlsFraction -->
+ <borderedAllBadPxlsFraction>1.6724544763565063e-01</borderedAllBadPxlsFraction>
+ <borderedNoOcclBadPxlsFraction>1.4962145686149597e-01</borderedNoOcclBadPxlsFraction>
+ <borderedOcclBadPxlsFraction>9.8810672760009766e-01</borderedOcclBadPxlsFraction>
+ <borderedTexturedBadPxlsFraction>6.8365499377250671e-02</borderedTexturedBadPxlsFraction>
+ <borderedTexturelessBadPxlsFraction>2.2459892928600311e-01</borderedTexturelessBadPxlsFraction>
+ <borderedDepthDiscontBadPxlsFraction>2.7245649695396423e-01</borderedDepthDiscontBadPxlsFraction></case_barn2_1>
+ <case_bull_0>
+ <!-- RMS -->
+ <borderedAllRMS>2.6510539054870605e+00</borderedAllRMS>
+ <borderedNoOcclRMS>2.4391152858734131e+00</borderedNoOcclRMS>
+ <borderedOcclRMS>1.3829360961914062e+01</borderedOcclRMS>
+ <borderedTexturedRMS>2.8044779300689697e+00</borderedTexturedRMS>
+ <borderedTexturelessRMS>2.1012372970581055e+00</borderedTexturelessRMS>
+ <borderedDepthDiscontRMS>3.4373311996459961e+00</borderedDepthDiscontRMS>
+ <!-- BadPxlsFraction -->
+ <borderedAllBadPxlsFraction>8.1465929746627808e-02</borderedAllBadPxlsFraction>
+ <borderedNoOcclBadPxlsFraction>7.6114013791084290e-02</borderedNoOcclBadPxlsFraction>
+ <borderedOcclBadPxlsFraction>9.9539172649383545e-01</borderedOcclBadPxlsFraction>
+ <borderedTexturedBadPxlsFraction>8.2276366651058197e-02</borderedTexturedBadPxlsFraction>
+ <borderedTexturelessBadPxlsFraction>7.1179524064064026e-02</borderedTexturelessBadPxlsFraction>
+ <borderedDepthDiscontBadPxlsFraction>2.8164240717887878e-01</borderedDepthDiscontBadPxlsFraction></case_bull_0>
+ <case_bull_1>
+ <!-- RMS -->
+ <borderedAllRMS>2.5439765453338623e+00</borderedAllRMS>
+ <borderedNoOcclRMS>2.3214499950408936e+00</borderedNoOcclRMS>
+ <borderedOcclRMS>1.3833223342895508e+01</borderedOcclRMS>
+ <borderedTexturedRMS>2.7445819377899170e+00</borderedTexturedRMS>
+ <borderedTexturelessRMS>1.9164147377014160e+00</borderedTexturelessRMS>
+ <borderedDepthDiscontRMS>3.6878821849822998e+00</borderedDepthDiscontRMS>
+ <!-- BadPxlsFraction -->
+ <borderedAllBadPxlsFraction>7.5556866824626923e-02</borderedAllBadPxlsFraction>
+ <borderedNoOcclBadPxlsFraction>7.0143364369869232e-02</borderedNoOcclBadPxlsFraction>
+ <borderedOcclBadPxlsFraction>1.</borderedOcclBadPxlsFraction>
+ <borderedTexturedBadPxlsFraction>8.1168830394744873e-02</borderedTexturedBadPxlsFraction>
+ <borderedTexturelessBadPxlsFraction>6.1314735561609268e-02</borderedTexturelessBadPxlsFraction>
+ <borderedDepthDiscontBadPxlsFraction>2.8403428196907043e-01</borderedDepthDiscontBadPxlsFraction></case_bull_1>
+ <case_cones_0>
+ <!-- RMS -->
+ <borderedAllRMS>1.4948005676269531e+01</borderedAllRMS>
+ <borderedNoOcclRMS>1.0714867591857910e+01</borderedNoOcclRMS>
+ <borderedOcclRMS>3.4735446929931641e+01</borderedOcclRMS>
+ <borderedTexturedRMS>9.6662015914916992e+00</borderedTexturedRMS>
+ <borderedTexturelessRMS>1.3054833412170410e+01</borderedTexturelessRMS>
+ <borderedDepthDiscontRMS>1.3836570739746094e+01</borderedDepthDiscontRMS>
+ <!-- BadPxlsFraction -->
+ <borderedAllBadPxlsFraction>2.3410512506961823e-01</borderedAllBadPxlsFraction>
+ <borderedNoOcclBadPxlsFraction>1.5086595714092255e-01</borderedNoOcclBadPxlsFraction>
+ <borderedOcclBadPxlsFraction>9.8566770553588867e-01</borderedOcclBadPxlsFraction>
+ <borderedTexturedBadPxlsFraction>1.5058843791484833e-01</borderedTexturedBadPxlsFraction>
+ <borderedTexturelessBadPxlsFraction>1.5158818662166595e-01</borderedTexturelessBadPxlsFraction>
+ <borderedDepthDiscontBadPxlsFraction>3.0715781450271606e-01</borderedDepthDiscontBadPxlsFraction></case_cones_0>
+ <case_cones_1>
+ <!-- RMS -->
+ <borderedAllRMS>1.4871568679809570e+01</borderedAllRMS>
+ <borderedNoOcclRMS>1.0673042297363281e+01</borderedNoOcclRMS>
+ <borderedOcclRMS>3.4523502349853516e+01</borderedOcclRMS>
+ <borderedTexturedRMS>9.6144456863403320e+00</borderedTexturedRMS>
+ <borderedTexturelessRMS>1.3030851364135742e+01</borderedTexturelessRMS>
+ <borderedDepthDiscontRMS>1.3599418640136719e+01</borderedDepthDiscontRMS>
+ <!-- BadPxlsFraction -->
+ <borderedAllBadPxlsFraction>2.3518675565719604e-01</borderedAllBadPxlsFraction>
+ <borderedNoOcclBadPxlsFraction>1.5182061493396759e-01</borderedNoOcclBadPxlsFraction>
+ <borderedOcclBadPxlsFraction>9.8811304569244385e-01</borderedOcclBadPxlsFraction>
+ <borderedTexturedBadPxlsFraction>1.5232615172863007e-01</borderedTexturedBadPxlsFraction>
+ <borderedTexturelessBadPxlsFraction>1.5050502121448517e-01</borderedTexturelessBadPxlsFraction>
+ <borderedDepthDiscontBadPxlsFraction>3.0839520692825317e-01</borderedDepthDiscontBadPxlsFraction></case_cones_1>
+ <case_poster_0>
+ <!-- RMS -->
+ <borderedAllRMS>3.9232873916625977e+00</borderedAllRMS>
+ <borderedNoOcclRMS>3.6647446155548096e+00</borderedNoOcclRMS>
+ <borderedOcclRMS>8.8422250747680664e+00</borderedOcclRMS>
+ <borderedTexturedRMS>1.8588413000106812e+00</borderedTexturedRMS>
+ <borderedTexturelessRMS>5.6067132949829102e+00</borderedTexturelessRMS>
+ <borderedDepthDiscontRMS>3.6829626560211182e+00</borderedDepthDiscontRMS>
+ <!-- BadPxlsFraction -->
+ <borderedAllBadPxlsFraction>1.9138371944427490e-01</borderedAllBadPxlsFraction>
+ <borderedNoOcclBadPxlsFraction>1.6748243570327759e-01</borderedNoOcclBadPxlsFraction>
+ <borderedOcclBadPxlsFraction>9.5639789104461670e-01</borderedOcclBadPxlsFraction>
+ <borderedTexturedBadPxlsFraction>5.6871127337217331e-02</borderedTexturedBadPxlsFraction>
+ <borderedTexturelessBadPxlsFraction>3.6713454127311707e-01</borderedTexturelessBadPxlsFraction>
+ <borderedDepthDiscontBadPxlsFraction>1.5269514918327332e-01</borderedDepthDiscontBadPxlsFraction></case_poster_0>
+ <case_poster_1>
+ <!-- RMS -->
+ <borderedAllRMS>3.7858898639678955e+00</borderedAllRMS>
+ <borderedNoOcclRMS>3.5101103782653809e+00</borderedNoOcclRMS>
+ <borderedOcclRMS>8.8732309341430664e+00</borderedOcclRMS>
+ <borderedTexturedRMS>1.7596650123596191e+00</borderedTexturedRMS>
+ <borderedTexturelessRMS>5.3824634552001953e+00</borderedTexturelessRMS>
+ <borderedDepthDiscontRMS>3.7098689079284668e+00</borderedDepthDiscontRMS>
+ <!-- BadPxlsFraction -->
+ <borderedAllBadPxlsFraction>1.8374986946582794e-01</borderedAllBadPxlsFraction>
+ <borderedNoOcclBadPxlsFraction>1.5913774073123932e-01</borderedNoOcclBadPxlsFraction>
+ <borderedOcclBadPxlsFraction>9.7151619195938110e-01</borderedOcclBadPxlsFraction>
+ <borderedTexturedBadPxlsFraction>5.6424330919981003e-02</borderedTexturedBadPxlsFraction>
+ <borderedTexturelessBadPxlsFraction>3.4453427791595459e-01</borderedTexturelessBadPxlsFraction>
+ <borderedDepthDiscontBadPxlsFraction>1.7919595539569855e-01</borderedDepthDiscontBadPxlsFraction></case_poster_1>
+ <case_sawtooth_0>
+ <!-- RMS -->
+ <borderedAllRMS>3.7617659568786621e+00</borderedAllRMS>
+ <borderedNoOcclRMS>3.4613683223724365e+00</borderedNoOcclRMS>
+ <borderedOcclRMS>9.5704870223999023e+00</borderedOcclRMS>
+ <borderedTexturedRMS>3.4877974987030029e+00</borderedTexturedRMS>
+ <borderedTexturelessRMS>3.4165804386138916e+00</borderedTexturelessRMS>
+ <borderedDepthDiscontRMS>3.4102394580841064e+00</borderedDepthDiscontRMS>
+ <!-- BadPxlsFraction -->
+ <borderedAllBadPxlsFraction>1.4376677572727203e-01</borderedAllBadPxlsFraction>
+ <borderedNoOcclBadPxlsFraction>1.2024582922458649e-01</borderedNoOcclBadPxlsFraction>
+ <borderedOcclBadPxlsFraction>9.8325949907302856e-01</borderedOcclBadPxlsFraction>
+ <borderedTexturedBadPxlsFraction>1.0955993086099625e-01</borderedTexturedBadPxlsFraction>
+ <borderedTexturelessBadPxlsFraction>1.3816918432712555e-01</borderedTexturelessBadPxlsFraction>
+ <borderedDepthDiscontBadPxlsFraction>2.0972643792629242e-01</borderedDepthDiscontBadPxlsFraction></case_sawtooth_0>
+ <case_sawtooth_1>
+ <!-- RMS -->
+ <borderedAllRMS>3.5960786342620850e+00</borderedAllRMS>
+ <borderedNoOcclRMS>3.2707345485687256e+00</borderedNoOcclRMS>
+ <borderedOcclRMS>9.6264677047729492e+00</borderedOcclRMS>
+ <borderedTexturedRMS>3.3602063655853271e+00</borderedTexturedRMS>
+ <borderedTexturelessRMS>3.1148989200592041e+00</borderedTexturelessRMS>
+ <borderedDepthDiscontRMS>3.5442509651184082e+00</borderedDepthDiscontRMS>
+ <!-- BadPxlsFraction -->
+ <borderedAllBadPxlsFraction>1.3551394641399384e-01</borderedAllBadPxlsFraction>
+ <borderedNoOcclBadPxlsFraction>1.1169280856847763e-01</borderedNoOcclBadPxlsFraction>
+ <borderedOcclBadPxlsFraction>9.8572134971618652e-01</borderedOcclBadPxlsFraction>
+ <borderedTexturedBadPxlsFraction>1.0569544136524200e-01</borderedTexturedBadPxlsFraction>
+ <borderedTexturelessBadPxlsFraction>1.2175213545560837e-01</borderedTexturelessBadPxlsFraction>
+ <borderedDepthDiscontBadPxlsFraction>2.2737044095993042e-01</borderedDepthDiscontBadPxlsFraction></case_sawtooth_1>
+ <case_teddy_0>
+ <!-- RMS -->
+ <borderedAllRMS>1.2739402770996094e+01</borderedAllRMS>
+ <borderedNoOcclRMS>9.6110143661499023e+00</borderedNoOcclRMS>
+ <borderedOcclRMS>2.9743040084838867e+01</borderedOcclRMS>
+ <borderedTexturedRMS>8.1161022186279297e+00</borderedTexturedRMS>
+ <borderedTexturelessRMS>1.0950599670410156e+01</borderedTexturelessRMS>
+ <borderedDepthDiscontRMS>1.1757071495056152e+01</borderedDepthDiscontRMS>
+ <!-- BadPxlsFraction -->
+ <borderedAllBadPxlsFraction>2.2575500607490540e-01</borderedAllBadPxlsFraction>
+ <borderedNoOcclBadPxlsFraction>1.5212815999984741e-01</borderedNoOcclBadPxlsFraction>
+ <borderedOcclBadPxlsFraction>9.8261004686355591e-01</borderedOcclBadPxlsFraction>
+ <borderedTexturedBadPxlsFraction>1.2846168875694275e-01</borderedTexturedBadPxlsFraction>
+ <borderedTexturelessBadPxlsFraction>1.7672659456729889e-01</borderedTexturelessBadPxlsFraction>
+ <borderedDepthDiscontBadPxlsFraction>2.7063372731208801e-01</borderedDepthDiscontBadPxlsFraction></case_teddy_0>
+ <case_teddy_1>
+ <!-- RMS -->
+ <borderedAllRMS>1.2987769126892090e+01</borderedAllRMS>
+ <borderedNoOcclRMS>9.9732618331909180e+00</borderedNoOcclRMS>
+ <borderedOcclRMS>2.9729139328002930e+01</borderedOcclRMS>
+ <borderedTexturedRMS>8.4387731552124023e+00</borderedTexturedRMS>
+ <borderedTexturelessRMS>1.1350399017333984e+01</borderedTexturelessRMS>
+ <borderedDepthDiscontRMS>1.2696497917175293e+01</borderedDepthDiscontRMS>
+ <!-- BadPxlsFraction -->
+ <borderedAllBadPxlsFraction>2.2498458623886108e-01</borderedAllBadPxlsFraction>
+ <borderedNoOcclBadPxlsFraction>1.5106849372386932e-01</borderedNoOcclBadPxlsFraction>
+ <borderedOcclBadPxlsFraction>9.8466938734054565e-01</borderedOcclBadPxlsFraction>
+ <borderedTexturedBadPxlsFraction>1.3293771445751190e-01</borderedTexturedBadPxlsFraction>
+ <borderedTexturelessBadPxlsFraction>1.6991326212882996e-01</borderedTexturelessBadPxlsFraction>
+ <borderedDepthDiscontBadPxlsFraction>2.8500548005104065e-01</borderedDepthDiscontBadPxlsFraction></case_teddy_1>
+ <case_tsukuba_0>
+ <!-- RMS -->
+ <borderedAllRMS>1.6951924562454224e+00</borderedAllRMS>
+ <borderedNoOcclRMS>1.4115499258041382e+00</borderedNoOcclRMS>
+ <borderedOcclRMS>6.0092282295227051e+00</borderedOcclRMS>
+ <borderedTexturedRMS>1.4895352125167847e+00</borderedTexturedRMS>
+ <borderedTexturelessRMS>1.3159185647964478e+00</borderedTexturelessRMS>
+ <borderedDepthDiscontRMS>3.0281760692596436e+00</borderedDepthDiscontRMS>
+ <!-- BadPxlsFraction -->
+ <borderedAllBadPxlsFraction>6.7334882915019989e-02</borderedAllBadPxlsFraction>
+ <borderedNoOcclBadPxlsFraction>4.5884985476732254e-02</borderedNoOcclBadPxlsFraction>
+ <borderedOcclBadPxlsFraction>8.7637966871261597e-01</borderedOcclBadPxlsFraction>
+ <borderedTexturedBadPxlsFraction>3.8711227476596832e-02</borderedTexturedBadPxlsFraction>
+ <borderedTexturelessBadPxlsFraction>5.4155535995960236e-02</borderedTexturelessBadPxlsFraction>
+ <borderedDepthDiscontBadPxlsFraction>1.8206721544265747e-01</borderedDepthDiscontBadPxlsFraction></case_tsukuba_0>
+ <case_tsukuba_1>
+ <!-- RMS -->
+ <borderedAllRMS>1.6951924562454224e+00</borderedAllRMS>
+ <borderedNoOcclRMS>1.4115499258041382e+00</borderedNoOcclRMS>
+ <borderedOcclRMS>6.0092282295227051e+00</borderedOcclRMS>
+ <borderedTexturedRMS>1.4895352125167847e+00</borderedTexturedRMS>
+ <borderedTexturelessRMS>1.3159185647964478e+00</borderedTexturelessRMS>
+ <borderedDepthDiscontRMS>3.0281760692596436e+00</borderedDepthDiscontRMS>
+ <!-- BadPxlsFraction -->
+ <borderedAllBadPxlsFraction>6.7334882915019989e-02</borderedAllBadPxlsFraction>
+ <borderedNoOcclBadPxlsFraction>4.5884985476732254e-02</borderedNoOcclBadPxlsFraction>
+ <borderedOcclBadPxlsFraction>8.7637966871261597e-01</borderedOcclBadPxlsFraction>
+ <borderedTexturedBadPxlsFraction>3.8711227476596832e-02</borderedTexturedBadPxlsFraction>
+ <borderedTexturelessBadPxlsFraction>5.4155535995960236e-02</borderedTexturelessBadPxlsFraction>
+ <borderedDepthDiscontBadPxlsFraction>1.8206721544265747e-01</borderedDepthDiscontBadPxlsFraction></case_tsukuba_1>
+ <case_venus_0>
+ <!-- RMS -->
+ <borderedAllRMS>4.4572520256042480e+00</borderedAllRMS>
+ <borderedNoOcclRMS>4.2245359420776367e+00</borderedNoOcclRMS>
+ <borderedOcclRMS>1.1420451164245605e+01</borderedOcclRMS>
+ <borderedTexturedRMS>3.2037136554718018e+00</borderedTexturedRMS>
+ <borderedTexturelessRMS>4.9442439079284668e+00</borderedTexturelessRMS>
+ <borderedDepthDiscontRMS>3.0051858425140381e+00</borderedDepthDiscontRMS>
+ <!-- BadPxlsFraction -->
+ <borderedAllBadPxlsFraction>2.0508112013339996e-01</borderedAllBadPxlsFraction>
+ <borderedNoOcclBadPxlsFraction>1.9092726707458496e-01</borderedNoOcclBadPxlsFraction>
+ <borderedOcclBadPxlsFraction>9.7960698604583740e-01</borderedOcclBadPxlsFraction>
+ <borderedTexturedBadPxlsFraction>7.3960274457931519e-02</borderedTexturedBadPxlsFraction>
+ <borderedTexturelessBadPxlsFraction>2.9271477460861206e-01</borderedTexturelessBadPxlsFraction>
+ <borderedDepthDiscontBadPxlsFraction>2.1201705932617188e-01</borderedDepthDiscontBadPxlsFraction></case_venus_0>
+ <case_venus_1>
+ <!-- RMS -->
+ <borderedAllRMS>4.4572520256042480e+00</borderedAllRMS>
+ <borderedNoOcclRMS>4.2245359420776367e+00</borderedNoOcclRMS>
+ <borderedOcclRMS>1.1420451164245605e+01</borderedOcclRMS>
+ <borderedTexturedRMS>3.2037136554718018e+00</borderedTexturedRMS>
+ <borderedTexturelessRMS>4.9442439079284668e+00</borderedTexturelessRMS>
+ <borderedDepthDiscontRMS>3.0051858425140381e+00</borderedDepthDiscontRMS>
+ <!-- BadPxlsFraction -->
+ <borderedAllBadPxlsFraction>2.0508112013339996e-01</borderedAllBadPxlsFraction>
+ <borderedNoOcclBadPxlsFraction>1.9092726707458496e-01</borderedNoOcclBadPxlsFraction>
+ <borderedOcclBadPxlsFraction>9.7960698604583740e-01</borderedOcclBadPxlsFraction>
+ <borderedTexturedBadPxlsFraction>7.3960274457931519e-02</borderedTexturedBadPxlsFraction>
+ <borderedTexturelessBadPxlsFraction>2.9271477460861206e-01</borderedTexturelessBadPxlsFraction>
+ <borderedDepthDiscontBadPxlsFraction>2.1201705932617188e-01</borderedDepthDiscontBadPxlsFraction></case_venus_1></stereo_matching>
+</opencv_storage>
<?xml version="1.0"?>\r
<opencv_storage>
<datasets>\r
- <names_scale_unknown>
- barn2 "8" "0"\r
- bull "8" "0"\r
- cones "4" "0"\r
- poster "8" "0"\r
- sawtooth "8" "0"\r
- teddy "4" "0"
- tsukuba "16" "0"\r
- venus "8" "0"
- </names_scale_unknown>
+ <!-- name, scaleFactor, unknValue -->
+ barn2 "8" "0"\r
+ bull "8" "0"\r
+ cones "4" "0"\r
+ poster "8" "0"\r
+ sawtooth "8" "0"\r
+ teddy "4" "0"
+ tsukuba "16" "0"\r
+ venus "8" "0"
</datasets>\r
</opencv_storage>