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/29/2017
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);
}
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;
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;
Labels:
count zero,
Mat,
OpenCV,
randn,
Total
Subscribe to:
Posts (Atom)
-
Image size of origin is 320*240. Processing time is 30.96 second took. The result of stitching The resul...
-
This is data acquisition source code of LMS511(SICK co.) Source code is made by MFC(vs 2008). The sensor is communicated by TCP/IP. ...
-
Created Date : 2011.2 Language : C/C++ Tool : Microsoft Visual C++ 2010 Library & Utilized : OpenCV 2.2 Reference : Interent Refer...
-
* Introduction - The solution shows panorama image from multi images. The panorama images is processing by real-time stitching algorithm...
-
This post is about how to copy Mat data to vector and copy vector data to Mat. Reference this example source code. printf ( "/////...
-
Background subtractor example souce code. OpenCV support about 3 types subtraction algorithm. Those are MOG, MOG2, GMG algorithms. Det...
-
I use MOG2 algorithm to background subtraction. The process is resize to small for more fast processing to blur for avoid noise affectio...
-
This example source code is to extract HOG feature from images. And save descriptors to XML file. The source code explain how to use HOGD...
-
Logistic Classifier The logistic classifier is similar to equation of the plane. W is weight vector, X is input vector and y is output...
-
EMD(earth mover distance) method is very good method to compare image similarity. But processing time is slow. For using the EMD compare, ...