当前位置:   article > 正文

OpenCV人脸检测 人脸打码_图片快速人脸打码

图片快速人脸打码

.xml文件路径为本地绝对路径,应用代码时需要修改。
代码如下:


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


using namespace std;
using namespace cv;

void detectAndDisplay( Mat frame );

String face_cascade_name = "C:\\Program Files\\OpenCV2.4.11\\opencv\\sources\\data\\lbpcascades\\lbpcascade_frontalface.xml";
String eyes_cascade_name = "C:\\Program Files\\OpenCV2.4.11\\opencv\sources\\data\\haarcascades\\haarcascade_eye_tree_eyeglasses.xml";
CascadeClassifier face_cascade;
CascadeClassifier eyes_cascade;
string window_name = "detectionresult";

RNG rng(12345);


int main( int argc, const char** argv )
{
	Mat frame;
	face_cascade.load( face_cascade_name );
	if( !face_cascade.load( face_cascade_name ) )
	{ printf("--(!)Error loading\n"); return -1; };
   frame = imread("1.png");
   detectAndDisplay(frame);
   waitKey(0);
	return 0;
}
void detectAndDisplay( Mat frame )
{
	std::vector<Rect> faces;
	Mat frame_gray;
	cvtColor( frame, frame_gray, CV_BGR2GRAY );
	equalizeHist( frame_gray, frame_gray );
	face_cascade.detectMultiScale( frame_gray, faces, 1.1, 2, 0, Size(20, 20) );
	for( int i = 0; i < faces.size(); i++ )
	{
		Mat faceROI = frame_gray( faces[i] );
		Mat faceOrg = frame( faces[i] );
		blur(faceOrg, faceOrg, Size(25,25));  
		std::vector<Rect> eyes;
	}
	imshow( window_name, frame );
}


  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24
  • 25
  • 26
  • 27
  • 28
  • 29
  • 30
  • 31
  • 32
  • 33
  • 34
  • 35
  • 36
  • 37
  • 38
  • 39
  • 40
  • 41
  • 42
  • 43
  • 44
  • 45
  • 46
  • 47
  • 48
  • 49
  • 50
  • 51

效果图:
这里写图片描述

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/黑客灵魂/article/detail/760326
推荐阅读
相关标签
  

闽ICP备14008679号