1 | initial version |
Best way is to test
Mat mm=Mat::zeros(2,2,CV_8U);
Mat p=Mat::zeros(256,256,CV_8U),dst;
erode(p,dst,mm);
2 | No.2 Revision |
Best way is to test
Mat mm=Mat::zeros(2,2,CV_8U);
Mat p=Mat::zeros(256,256,CV_8U),dst;
erode(p,dst,mm);
3 | No.3 Revision |
Best way is to test
Mat mm=Mat::zeros(2,2,CV_8U);
mm=Mat::ones(2,2,CV_8U);
Mat p=Mat::zeros(256,256,CV_8U),dst;
erode(p,dst,mm);
4 | No.4 Revision |
Best way is to test
Mat mm=Mat::ones(2,2,CV_8U);
m2=Mat::ones(2,2,CV_8U);
Mat p=Mat::zeros(256,256,CV_8U),dst;
erode(p,dst,mm);
m3=Mat::ones(3,3,CV_8U);
Mat p=Mat::zeros(256,256,CV_8U),dst2,dst3,dst;
erode(img,dst2,m2);
erode(img,dst3,m3);
subtract(dst2,dst3,dst,Mat(),CV_16S);
float x = norm(dst);
cout<<"Difference between erode 2x2 and 3x3"<<x;
5 | No.5 Revision |
Best way is to test
Mat m2=Mat::ones(2,2,CV_8U);
Mat m3=Mat::ones(3,3,CV_8U);
Mat p=Mat::zeros(256,256,CV_8U),dst2,dst3,dst;
erode(img,dst2,m2);
erode(img,dst3,m3);
subtract(dst2,dst3,dst,Mat(),CV_16S);
float x = norm(dst);
cout<<"Difference between erode 2x2 and 3x3"<<x;
and for anchor (ksize = 2 or 3 in my example and anchor.x==-1) line 357 filterengine.hpp opencv 3.0
if( anchor.x == -1 )
anchor.x = ksize.width/2;
if( anchor.y == -1 )
anchor.y = ksize.height/2;
6 | No.6 Revision |
Best way is to test
m=imread("f:/lib/opencv/samples/data/fruits.jpg",CV_LOAD_IMAGE_GRAYSCALE);
Mat m2=Mat::ones(2,2,CV_8U);
Mat m3=Mat::ones(3,3,CV_8U);
Mat p=Mat::zeros(256,256,CV_8U),dst2,dst3,dst;
erode(img,dst2,m2);
erode(img,dst3,m3);
Matdst2,dst3,dst;
dilate(m,dst2,m2);
dilate(m,dst3,m3);
subtract(dst2,dst3,dst,Mat(),CV_16S);
float x = norm(dst);
cout<<"Difference between erode 2x2 and 3x3"<<x;
3x3 : "<<x;
the difference is 4337.25 and for anchor (ksize = 2 or 3 in my example and anchor.x==-1) line 357 filterengine.hpp opencv 3.0
if( anchor.x == -1 )
anchor.x = ksize.width/2;
if( anchor.y == -1 )
anchor.y = ksize.height/2;