Commit 7ffa49e0 authored by Pyotr Chekmaryov's avatar Pyotr Chekmaryov

Vertical passes added and we have working parralel version.

parent 20036b82
...@@ -1810,8 +1810,7 @@ public: ...@@ -1810,8 +1810,7 @@ public:
MODE_SGBM = 0, MODE_SGBM = 0,
MODE_HH = 1, MODE_HH = 1,
MODE_SGBM_3WAY = 2, MODE_SGBM_3WAY = 2,
MODE_HH4 = 3, MODE_HH4 = 3
MODE_HH4_OLD = 4
}; };
CV_WRAP virtual int getPreFilterCap() const = 0; CV_WRAP virtual int getPreFilterCap() const = 0;
......
This diff is collapsed.
...@@ -797,23 +797,25 @@ TEST(Calib3d_StereoSGBMPar, idontknowhowtotesthere) ...@@ -797,23 +797,25 @@ TEST(Calib3d_StereoSGBMPar, idontknowhowtotesthere)
// int mode) // int mode)
Mat leftImg = imread("/home/q/Work/GitVault/opencv_extra/testdata/cv/stereomatching/datasets/teddy/im2.png"); Mat leftImg = imread("/home/q/Work/GitVault/opencv_extra/testdata/cv/stereomatching/datasets/teddy/im2.png");
Mat rightImg = imread("/home/q/Work/GitVault/opencv_extra/testdata/cv/stereomatching/datasets/teddy/im6.png"); Mat rightImg = imread("/home/q/Work/GitVault/opencv_extra/testdata/cv/stereomatching/datasets/teddy/im6.png");
Mat leftDisp_old, leftDisp_new; // Mat leftDisp_old, leftDisp_new;
{ {
Mat leftDisp; Mat leftDisp;
Ptr<StereoSGBM> sgbm = StereoSGBM::create( 0, 48, 3, 90, 360, 1, 63, 10, 100, 32, StereoSGBM::MODE_HH4); Ptr<StereoSGBM> sgbm = StereoSGBM::create( 0, 48, 3, 90, 360, 1, 63, 10, 100, 32, StereoSGBM::MODE_HH);
sgbm->compute( leftImg, rightImg, leftDisp_new ); sgbm->compute( leftImg, rightImg, leftDisp);
CV_Assert( leftDisp_new.type() == CV_16SC1 ); CV_Assert( leftDisp.type() == CV_16SC1 );
// leftDisp/=8; leftDisp/=8;
// imwrite( "/home/q/Work/GitVault/modehh4_new.jpg", leftDisp); imwrite( "/home/q/Work/GitVault/modehh4_new.jpg", leftDisp);
} }
{ {
Ptr<StereoSGBM> sgbm = StereoSGBM::create( 0, 48, 3, 90, 360, 1, 63, 10, 100, 32, StereoSGBM::MODE_HH4_OLD); Mat leftDisp;
sgbm->compute( leftImg, rightImg, leftDisp_old ); Ptr<StereoSGBM> sgbm = StereoSGBM::create( 0, 48, 3, 90, 360, 1, 63, 10, 100, 32, StereoSGBM::MODE_HH4);
CV_Assert( leftDisp_old.type() == CV_16SC1 ); sgbm->compute( leftImg, rightImg, leftDisp);
// leftDisp/=8; CV_Assert( leftDisp.type() == CV_16SC1 );
// imwrite( "/home/q/Work/GitVault/modehh4_old.jpg", leftDisp); leftDisp/=8;
imwrite( "/home/q/Work/GitVault/modehh4_old.jpg", leftDisp);
} }
Mat diff; // Mat diff;
absdiff(leftDisp_old,leftDisp_new,diff); // absdiff(leftDisp_old,leftDisp_new,diff);
CV_Assert( countNonZero(diff)==0); // CV_Assert( countNonZero(diff)==0);
//
} }
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment