资源简介
利用opencv2.3.1 开发的adaboost人脸检测,使用了正面人脸分类器,当摄像头检测到的正面人脸消失三秒钟后记录摄像头照片。项目开始的时候会有记录十张用户图片计算平均人脸面积。
代码片段和文件信息
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include “stdafx.h“
#include “iostream“
#include “ctime“
#include “fstream“
#include “windows.h“
#include “TLHelp32.h“
#include “cv.h“
#include “highgui.h“
using namespace std;
#ifdef _EiC
#define WIN32
#endif
static CvMemStorage* storage = 0;
static CvMemStorage* storage1 = 0;
static CvHaarClassifierCascade* cascade = 0;
static CvHaarClassifierCascade* cascade_eye=0;
// 函数声明
void detect_and_draw( IplImage* image );
void alert(IplImage*);
void superviseSystemProcess();
void readAllowProcess();
void getCurrentProcess();
void maxTheExamSys();
// 系统变量
const char* cascade_name =
“haarcascade_frontalface_alt.xml“;
/* “haarcascade_profileface.xml“;*/
const char* cascade_eye_name = “haarcascade_eye.xml“;
// 全局变量
double time_disappear_start = (double)0;
// 统计平均人脸面积用的帧数变量
const int N_FACE = 10;
int AVG_FACE=-1;
int MAX_FACE;
int MIN_FACE;
int NUM_PIC=0;
string allowedProcess[80];
ofstream file;
int main( int argc char** argv )
{
// 打开考试程序
//ShellExecute(NULL “open“ “.\\Exam.exe“ NULL NULL SW_SHOWNORMAL);
//WinExec(“.\\exam\\ExamMFC.exe“SW_SHOWMAXIMIZED);
//SetWindowPos( HWND_TOPMOST 0 0 0 0 SWP_NOMOVE | SWP_NOSIZE);
file.open(“monitor.txt“ios::trunc); // 用于记录系统进程控制
//获取当前进程列表保存到文件
//getCurrentProcess();
// 读取允许的系统进程列表
//readAllowProcess();
CvCapture* capture = 0;
IplImage *frame *frame_copy = 0;
int optlen = strlen(“--cascade=“);
const char* input_name;
if( argc > 1 && strncmp( argv[1] “--cascade=“ optlen ) == 0 )
{
cascade_name = argv[1] + optlen;
input_name = argc > 2 ? argv[2] : 0;
}
else
{
// 脸部分类器
//cascade_name = “C:\\opencv\\data\\haarcascades\\haarcascade_frontalface_alt2.xml“;
cascade_name=“.\\classifiers\\haarcascade_frontalface_alt2.xml“;
// 眼睛分类器测试不同的眼睛分类器
//cascade_eye_name = “C:\\opencv\\data\\haarcascades\\haarcascade_eye.xml“; // 默认的眼睛分类器效果差一点
//cascade_eye_name = “C:\\opencv\\data\\haarcascades\\haarcascade_eye_tree_eyeglasses.xml“; // 这个效果对于戴眼镜效果好
//cascade_eye_name = “C:\\opencv\\data\\haarcascades\\haarcascade_mcs_eyepair_big.xml“; // 这个效果不怎么样,用来检测一对眼睛的
//cascade_eye_name = “C:\\opencv\\data\\haarcascades\\haarcascade_mcs_lefteye.xml“; // 这个效果太烂了
//cascade_eye_name = “C:\\opencv\\data\\haarcascades\\haarcascade_lefteye_2splits.xml“; // 这个效果非常不错
cascade_eye_name = “.\\classifiers\\haarcascade_lefteye_2splits.xml“;
//cascade_eye_name = “C:\\opencv\\data\\haarcascades\\haarcascade_righteye_2splits.xml“; // 效果稍微比左眼的lefteye_2splits差一点
//cascade_eye_name = “C:\\opencv\\data\\haarcascades\\haarcascade_mcs_righteye.xml“; // 这个效果不是很好
//opencv装好后haarcascade_frontalface_alt2.xml的路径
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
文件 116736 2012-03-22 15:35 ImageTest\Debug\ImageTest.exe
文件 1199364 2012-03-22 15:35 ImageTest\Debug\ImageTest.ilk
文件 1920000 2012-03-22 15:35 ImageTest\Debug\ImageTest.pdb
文件 115068 2012-06-04 16:52 ImageTest\ImageTest\capture\1.jpg
文件 128016 2012-06-04 16:52 ImageTest\ImageTest\capture\2.jpg
文件 129560 2012-06-04 16:52 ImageTest\ImageTest\capture\3.jpg
文件 129972 2012-06-04 16:52 ImageTest\ImageTest\capture\4.jpg
文件 837462 2011-08-12 21:35 ImageTest\ImageTest\classifiers\haarcascade_frontalface_alt2.xm
文件 333030 2011-08-12 21:35 ImageTest\ImageTest\classifiers\haarcascade_lefteye_2splits.xm
文件 1422 2012-03-22 15:35 ImageTest\ImageTest\Debug\cl.command.1.tlog
文件 30892 2012-03-22 15:35 ImageTest\ImageTest\Debug\CL.read.1.tlog
文件 878 2012-03-22 15:35 ImageTest\ImageTest\Debug\CL.write.1.tlog
文件 2106 2012-03-22 10:48 ImageTest\ImageTest\Debug\ImageTest.Build.CppClean.log
文件 406 2012-03-22 10:49 ImageTest\ImageTest\Debug\ImageTest.exe.em
文件 472 2012-03-22 10:49 ImageTest\ImageTest\Debug\ImageTest.exe.em
文件 381 2012-03-22 15:35 ImageTest\ImageTest\Debug\ImageTest.exe.intermediate.manifest
文件 68 2012-03-22 15:35 ImageTest\ImageTest\Debug\ImageTest.lastbuildstate
文件 10846 2012-03-22 15:35 ImageTest\ImageTest\Debug\ImageTest.log
文件 392493 2012-03-22 15:35 ImageTest\ImageTest\Debug\ImageTest.obj
文件 1114112 2012-03-22 10:48 ImageTest\ImageTest\Debug\ImageTest.pch
文件 208 2012-03-22 10:49 ImageTest\ImageTest\Debug\ImageTest_manifest.rc
文件 2 2012-03-22 15:35 ImageTest\ImageTest\Debug\li
文件 2 2012-03-22 15:35 ImageTest\ImageTest\Debug\li
文件 2 2012-03-22 15:35 ImageTest\ImageTest\Debug\li
文件 2 2012-03-22 15:35 ImageTest\ImageTest\Debug\li
文件 2 2012-03-22 15:35 ImageTest\ImageTest\Debug\li
文件 2 2012-03-22 15:35 ImageTest\ImageTest\Debug\li
文件 2 2012-03-22 15:35 ImageTest\ImageTest\Debug\li
文件 2 2012-03-22 15:35 ImageTest\ImageTest\Debug\li
文件 2 2012-03-22 15:35 ImageTest\ImageTest\Debug\li
............此处省略71个文件信息
相关资源
- 挥拳动作OpenCV识别
- SIFT算法实现及代码详解239444
- 基于opencv与opengl实现增强现实
- 利用opencv实现疲劳检测
- QT+Opencv2+VS2012 使用多线程显示网络摄
- opencv3.4.1 编译库,可在Qt直接使用
- opencv3.4+contrib vs2017 debug x64 编译好的库
- VS+OPENCV+ZBAR一维,二维码识别[包含中
- 基于OpenCV的车牌识别
- OpenCV_world330.lib
- win32平台的opencv3.4.2
- OpenCV2.1安装包
- 深入理解OpenCV:实用计算机视觉项目
- 学习OpenCV(中文版)pdf文档+源码
- 学习opencv 中文版及源码
- opencv-3.3.1 for vs2013
- OpenCV3.2编译文件
- QtOpencvImageGUI
- OpenCV实现多目三维重建
- opencv2.4.13lib_x86_x64_vs2013
- 形状匹配find_scaled_shape_model
- OpenCV 3.3_x86_minGW_world
- Opencv-stitcher基本原理参考文献
- opencv调用海康威视摄像头源代码内大
- 配合单文档调用opencv的代码
- opencv SVM图分类训练图片和测试图片
- QT+opencv的图像处理
- HOG+Adaboost级联分类器训练代码
- VS+QT+Opencv可视化编程
- 最全的OpenCV源代码
评论
共有 条评论