图像处理系统设计--人脸检测.doc
上传人:yy****24 上传时间:2024-09-10 格式:DOC 页数:5 大小:112KB 金币:16 举报 版权申诉
预览加载中,请您耐心等待几秒...

图像处理系统设计--人脸检测.doc

图像处理系统设计--人脸检测.doc

预览

在线预览结束,喜欢就下载吧,查找使用更方便

16 金币

下载此文档

如果您无法下载资料,请参考说明:

1、部分资料下载需要金币,请确保您的账户上有足够的金币

2、已购买过的文档,再次下载不重复扣费

3、资料包下载后请先用软件解压,在使用对应软件打开

实验五图像处理系统设计实验目的在实验一至四的基础上,根据实际需要搭建一个简单图像处理系统实现图像采集、处理与输出----人脸检测二.实验内容1.至少完成如下内容中的一项:1)在实验一至四的基础上,根据实际需要搭建一个简单图像处理系统实现图像采集、处理与输出;2)完成一个实际案例的设计,该案例学生可自选(但需确认)也可从如下案例中选择:a)车流量统计;b)行人检测;c)车辆检测;d)车辆跟踪;f)网吧视频监控;g)人脸检测;h)目标跟踪。三.实验要求1)要有相对完整的设计文档;2)基本功能实现;3)界面风格以及功能可以多样,但要本着可用与节省空间和时间复杂度的原则。四.实验步骤人脸检测#include<stdio.h>#include<stdlib.h>#include<string.h>#include<assert.h>#include<math.h>#include<float.h>#include<limits.h>#include<time.h>#include<ctype.h>#include"stdafx.h"#include"cv.h"#include"cvaux.h"#include"highgui.h"#include"cxcore.h"#ifdef_EiC#defineWIN32#endif#pragmacomment(lib,"cxcore.lib")#pragmacomment(lib,"cv.lib")#pragmacomment(lib,"ml.lib")#pragmacomment(lib,"cvaux.lib")#pragmacomment(lib,"highgui.lib")#pragmacomment(lib,"cvcam.lib")staticCvMemStorage*storage=0;staticCvHaarClassifierCascade*cascade=0;voiddetect_and_draw(IplImage*image);constchar*cascade_name;//定义字符串用来代替学习文件的文件名intmain(intargc,char**argv){CvCapture*capture=0;IplImage*frame,*frame_copy=0;//定义两个图像用于下边抓取视频中的每帧文件constchar*input_name;//定义字符串cascade_name="haarcascade_frontalface_alt2.xml";//人脸检测的学习文件cascade=(CvHaarClassifierCascade*)cvLoad(cascade_name,0,0,0);//人脸检测的学习文件装载进来放进存储空间cascadeif(!cascade){fprintf(stderr,"ERROR:Couldnotloadclassifiercascade\n");//如果检测不到文件或者文件打不开就输出错误,stderr是错误日志文件系统文件return-1;}storage=cvCreateMemStorage(0);//创建存储区,用于存储检测完的数据capture=cvCaptureFromAVI("f:\\frank.avi");cvNamedWindow("result",1);if(capture){for(;;){if(!cvGrabFrame(capture))break;frame=cvRetrieveFrame(capture);if(!frame)break;if(!frame_copy)frame_copy=cvCreateImage(cvSize(frame->width,frame->height),IPL_DEPTH_8U,frame->nChannels);if(frame->origin==IPL_ORIGIN_TL)cvCopy(frame,frame_copy,0);elsecvFlip(frame,frame_copy,0);detect_and_draw(frame_copy);if(cvWaitKey(45)>=0)break;}cvReleaseImage(&frame_copy);cvReleaseCapture(&capture);}else{constchar*filename=(char*)"f:\\taoyan.jpg";IplImage*image=cvLoadImage(filename,1);if(image){detect_and_