我是靠谱客的博主 机智秋天,最近开发中收集的这篇文章主要介绍学习opencv例子facedetect.cpp,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

实现很简单,需要定制的就三点:

  1. 分类器模型可以自己训练,也可以用opencv自带的
  2. 标记方式是圆圈还是方块可以自己决定
  3. 图片来源可以自定义,不限于摄像头和电脑的本地资源

编译后运行

./opencv_example --cascade="data/haarcascades/haarcascade_frontalface_alt.xml" --nested-cascade="data/haarcascades/haarcascade_eye_tree_eyeglasses.xml" --scale=1.3 data/lena.jpg

源码解释

#include "opencv2/objdetect.hpp"
#include "opencv2/highgui.hpp"
#include "opencv2/imgproc.hpp"
#include "opencv2/videoio.hpp"
#include <iostream>

using namespace std;
using namespace cv;

static void help(const char** argv)
{
    cout << "nThis program demonstrates the use of cv::CascadeClassifier class to detect objects (Face + eyes). You can use Haar or LBP features.n"
            "This classifier can recognize many kinds of rigid objects, once the appropriate classifier is trained.n"
            "It's most known use is for faces.n"
            "Usage:n"
        <<  argv[0]
        <<  "   [--cascade=<cascade_path> this is the primary trained classifier such as frontal face]n"
            "   [--nested-cascade[=nested_cascade_path this an optional secondary classifier such as eyes]]n"
            "   [--scale=<image scale greater or equal to 1, try 1.3 for example>]n"
            "   [--try-flip]n"
            "   [filename|camera_index]nn"
            "example:n"
        <<  argv[0]
        <<  " --cascade="data/haarcascades/haarcascade_frontalface_alt.xml" --nested-cascade="data/haarcascades/haarcascade_eye_tree_eyeglasses.xml" --scale=1.3nn"
            "During execution:ntHit any key to quit.n"
            "tUsing OpenCV version " << CV_VERSION << "n" << endl;
}
//	前置声明
void detectAndDraw( Mat& img, CascadeClassifier& cascade,
                    CascadeClassifier& nestedCascade,
                    double scale, bool tryflip );

//	定义分类器地址字符串
string cascadeName;
string nestedCascadeName;

int main( int argc, const char** argv )
{
    VideoCapture capture;

最后

以上就是机智秋天为你收集整理的学习opencv例子facedetect.cpp的全部内容,希望文章能够帮你解决学习opencv例子facedetect.cpp所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(38)

评论列表共有 0 条评论

立即
投稿
返回
顶部