কম্পিউটার টিউটোরিয়াল

OpenCV-এ C++ ব্যবহার করে চেহারার সংখ্যা গণনা করা

একটি ছবিতে সনাক্ত চেহারার সংখ্যা গণনা করা খুব সহজ। পिछলে লিখা প্রোগ্রামটিতে চেহারার সংখ্যার তথ্য 'faces.size()'-এ থাকে। এই কোড 'faces.size()' একটি পূর্ণসংখ্যা মান ফেরত দেয়।

উদাহরণস্বরূপ, যদি আমরা 'int x = faces.size()' লিখি, তবে 'x'-এ চেহারার সংখ্যা থাকবে।

দেওয়া ছবি থেকে চেহারার সংখ্যা গণনা করে কনসোল উইন্ডোতে দেখানোর প্রোগ্রাম

#include<iostream>
#include<opencv2/highgui/highgui.hpp>
#include<opencv2/objdetect/objdetect.hpp> // ক্যাসকেড ক্লাসিফায়ারের সংজ্ঞা এই হেডারে
#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; // চেহারার জন্য রেক্ট্যাঙ্গুলার ভেক্টর
    faceDetector.detectMultiScale(image_with_humanface, faces, 1.1, 4, CASCADE_SCALE_IMAGE, Size(20, 20)); // 'image_with_humanface' ম্যাট্রিক্সে চেহারা সনাক্তকরণ
    int x = faces.size(); // চেহারার সংখ্যা গণনা করে পূর্ণসংখ্যা মান x-এ সংরক্ষণ
    cout << "Number of face(s) in the image = " << x << endl; // কনসোল উইন্ডোতে x-এর মান দেখানো
    system("pause"); // ফলাফল দেখার জন্য সিস্টেম পজ
    return 0;
}

আউটপুট

OpenCV-এ C++ ব্যবহার করে চেহারার সংখ্যা গণনা করা

  1. OpenCV-এ C++ ব্যবহার করে ইমেজের ব্রাইটনেস পরিবর্তন করা

  2. OpenCV-এ C++ ব্যবহার করে উপবৃত্ত আঁকা

  3. OpenCV-এ C++ ব্যবহার করে রেখা আঁকা

  4. OpenCV-এ C++ ব্যবহার করে ইমেজের চ্যানেল সংখ্যা গণনা করা