छवि में स्थित चेहरों की संख्या गिनना आसान है। पिछले अनुभाग में हमने जो प्रोग्राम लिखा था, उसमें पहले से ही 'faces.size()' में चेहरों की संख्या की जानकारी है। यह कोड 'faces.size()' एक पूर्णांक मान देता है।
उदाहरण के लिए, यदि हम 'int x = faces.size()' लिखते हैं, तो 'x' में चेहरों की संख्या होगी।
दिए गए छवि से चेहरों की संख्या की गणना करने और इसे कंसोल विंडो में दिखाने के लिए निम्नलिखित प्रोग्राम।
उदाहरण
#include<iostream> #include<opencv2/highgui/highgui.hpp> #include<opencv2/objdetect/objdetect.hpp> //इस हेडर में Cascade Classifier की परिभाषा शामिल है// #include<string> using namespace std; using namespace cv; int main(int argc, char** argv){ Mat image_with_humanface;//मानव चेहरे वाली छवि लोड करने के लिए मैट्रिक्स घोषित करना// image_with_humanface = imread("friends.jpg");//उसमें मानव चेहरा वाली छवि लोड करना// string trained_classifier_location = "C:/opencv/sources/data/haarcascades/haarcascade_frontalface_alt.xml";//एक स्ट्रिंग में हमारे XML प्रशिक्षित क्लासिफायर का स्थान परिभाषित करना// CascadeClassifier faceDetector;//CascadeClassifier क्लास का 'face detector' नामक ऑब्जेक्ट घोषित करना// faceDetector.load(trained_classifier_location);//ऑब्जेक्ट में XML प्रशिक्षित क्लासिफायर लोड करना// vector<Rect>faces;//faces नामक आयताकार वेक्टर घोषित करना// faceDetector.detectMultiScale(image_with_humanface, faces, 1.1, 4, CASCADE_SCALE_IMAGE, Size(20, 20));//'image_with_humanfaces' मैट्रिक्स में चेहरों का पता लगाना// int x = faces.size();//चेहरों की संख्या की गणना करना और पूर्णांक मान को x में संग्रहीत करना// cout << "Number of face(s)in the image=" << x << endl;//कंसोल विंडो में x का मान प्रदर्शित करना// system("pause");//परिणाम देखने के लिए सिस्टम को रोकना// return 0; }आउटपुट
