9/29/2017

openCV Tip, Calculate overlap percent between two rectangle.

Calculate overlap percent between two rectangle




It is not difficult, we just use bit operator : &, |
for more detail information, refer to below source code.

< gist >

< /gist>



9/27/2017

Tip, Add 'Vector (b)' to end of 'Vector (a)'

If you have 2 Vector and you want to add Vector b to end of Vector a, refer to below code. (very simple!)

vector< int > a;
a.push_back(1);
a.push_back(2);
a.push_back(3);

vector< int > b;
b.push_back(4);
b.push_back(5);
b.push_back(6);

a.insert(a.end(), b.begin(), b.end());

int count = 0;
for (auto it : a)
{
printf("a[%d] = %d \n", count++, it);
}



9/24/2017

Tip, How to count number of '0' in element of Matrix(Mat)?

As same with Matlab, we can use inequality ">,<,==,>=,<=".

Firstly, we check equal to '0' or '>0', the result is output to '255' if satisfied.
Divide by 255 then elements have left '0' or '1'
And sum all of the element, then we can get the number of zero.



Source code is here..

Mat a = Mat(5, 5, CV_8UC1);
randn(a, 0, 1);

Mat b = (a == 0) / 255;
Mat c = (a > 0) / 255;

cout << "Input matrix matrix a = " << endl;
cout << a << endl;

cout << "number of 0 = " << sum(b)[0];
cout << ", number of over 0 = " << sum(c)[0] << endl << endl;


cout << "matrix b = " << endl;
cout << b << endl;
cout << "matrix c = " << endl;
cout << c << endl;