資源簡介
用OPENCV寫的,非常好用,需要在VC的支持下運行,

代碼片段和文件信息
#include?“stdafx.h“
#include?“cvapp.h“
#include?
#define?MERGESIZE?5
//global?variable
static?CvMemStorage*?storage?=?0;
static?CvMemStorage*?storage_eye?=?0;
static?CvHaarClassifierCascade*?cascade?=?0;
static?CvHaarClassifierCascade*?cascade_eye=?0;
const?char*?cascade_name?=“E:/CVspace/OpenCV/data/haarcascades/haarcascade_frontalface_alt.xml“;
ImageProcessor?*proc=0;
void?detect_and_draw(?IplImage*?img?)
{
????int?scale?=?1;
????IplImage*?temp?=?cvCreateImage(?cvSize(img->widthimg->height)?8?3?);
????CvPoint?pt1?pt2pt1eyept2eyecyclecentereyecenter_pt1eyecenter_pt2eyecenter_pt3eyecenter_pt4;
????int?ijcycleradius;
CvRect?regFace;
IplImage*?faceimg*?tempfaceimg;
double?sizeratio=1;
temp?=?cvCloneImage(img);
//cvPyrDown(?img?temp?CV_GAUSSIAN_5x5?);
????cvClearMemStorage(?storage?);
cvClearMemStorage(?storage_eye?);
????if(?cascade?)
????{
????????
CvSeq*?faces?=?cvHaarDetectobjects(?img?cascade?storage
????????????????????????????????????????????1.1?2?CV_HAAR_DO_CANNY_PRUNING
????????????????????????????????????????????cvSize(40?40)?);
for(?i?=?0;?i?(faces???faces->total?:?0);?i++?)
????????{
CvRect*?r?=?(CvRect*)cvGetSeqElem(?faces?i?);
????????????pt1.x?=?r->x*scale;
????????????pt2.x?=?(r->x+r->width)*scale;
????????????pt1.y?=?r->y*scale;
????????????pt2.y?=?(r->y+r->height)*scale;
????????????//cvRectangle(?img?pt1?pt2?CV_RGB(25500)?3?8?0?);
cyclecenter.x=(pt1.x+pt2.x)/2;
cyclecenter.y=(pt1.y+pt2.y)/2;
cycleradius=scale*max(r->widthr->height)/2;
//cvCircle(img?cyclecenter?cycleradius?CV_RGB(25500)?3?8?0);
//cvEllipse(?img?cyclecenter?cvSize(cycleradius1.4*cycleradius)00?360?CV_RGB(25500)?2);
regFace.x?=?r->x*scale;
regFace.y?=?r->y*scale;
regFace.width??=r->width*scale;
regFace.height?=(int)r->height*scale/2;
if?(regFace.width>200)
{
faceimg=cvCreateImage(?cvSize(regFace.width/scaleregFace.height/scale)?8?img->nChannels);
cvSetImageROI?(temp?regFace);
//cvResize(img?faceimg?CV_INTER_LINEAR);
cvCopy?(temp?tempfaceimg);
sizeratio=1.0;
}
else
{
tempfaceimg=cvCreateImage(?cvSize(regFace.width/scaleregFace.height/scale)?8?img->nChannels);
cvSetImageROI?(temp?regFace);
cvCopy?(temp?tempfaceimg);
//cvSaveImage(“temp1.jpg“tempfaceimg);
faceimg=cvCreateImage(?cvSize(200regFace.height*200/regFace.width)?8?img->nChannels);
cvResize(tempfaceimgfaceimg);
//cvSaveImage(“temp2.jpg“faceimg);
sizeratio=(double)regFace.width/200;
}
//cvSaveImage(“temp.jpg“img);
//cvSaveImage(“temp.jpg“faceimg);
????????CvSeq*?eyes?=?cvHaarDetectobjects(?faceimg?cascade_eye?storage_eye
????????????????????????????????????????????1.1?2?CV_HAAR_DO_CANNY_PRUNING
????????????????????????????????????????????cvSize(30?20)?);
for(?j?=?
?屬性????????????大小?????日期????時間???名稱
-----------?---------??----------?-----??----
?????文件???????49205??2005-04-26?01:19??FindEyes1.1\0925174346.jpg
?????文件???????30567??2005-04-26?02:05??FindEyes1.1\8358210705999159.jpg
?????文件??????110902??2005-01-24?18:17??FindEyes1.1\BioID_0249.bmp
?????目錄???????????0??2005-11-29?12:10??FindEyes1.1\cascade\
?????目錄???????????0??2005-11-29?12:10??FindEyes1.1\cascade\0\
?????文件?????????223??2005-04-09?15:56??FindEyes1.1\cascade\0\AdaBoostCARTHaarClassifier.txt
?????目錄???????????0??2005-11-29?12:10??FindEyes1.1\cascade\1\
?????目錄???????????0??2005-11-29?12:10??FindEyes1.1\cascade\10\
?????文件????????1287??2005-04-09?18:13??FindEyes1.1\cascade\10\AdaBoostCARTHaarClassifier.txt
?????目錄???????????0??2005-11-29?12:10??FindEyes1.1\cascade\11\
?????文件????????1362??2005-04-09?19:09??FindEyes1.1\cascade\11\AdaBoostCARTHaarClassifier.txt
?????目錄???????????0??2005-11-29?12:10??FindEyes1.1\cascade\12\
?????文件?????????950??2005-04-09?21:03??FindEyes1.1\cascade\12\AdaBoostCARTHaarClassifier.txt
?????目錄???????????0??2005-11-29?12:10??FindEyes1.1\cascade\13\
?????文件????????1282??2005-04-10?00:49??FindEyes1.1\cascade\13\AdaBoostCARTHaarClassifier.txt
?????目錄???????????0??2005-11-29?12:10??FindEyes1.1\cascade\14\
?????文件?????????919??2005-04-10?10:08??FindEyes1.1\cascade\14\AdaBoostCARTHaarClassifier.txt
?????目錄???????????0??2005-11-29?12:10??FindEyes1.1\cascade\15\
?????文件?????????883??2005-04-11?06:45??FindEyes1.1\cascade\15\AdaBoostCARTHaarClassifier.txt
?????文件?????????327??2005-04-09?16:01??FindEyes1.1\cascade\1\AdaBoostCARTHaarClassifier.txt
?????目錄???????????0??2005-11-29?12:10??FindEyes1.1\cascade\2\
?????文件?????????340??2005-04-09?16:07??FindEyes1.1\cascade\2\AdaBoostCARTHaarClassifier.txt
?????目錄???????????0??2005-11-29?12:10??FindEyes1.1\cascade\3\
?????文件?????????324??2005-04-09?16:12??FindEyes1.1\cascade\3\AdaBoostCARTHaarClassifier.txt
?????目錄???????????0??2005-11-29?12:10??FindEyes1.1\cascade\4\
?????文件?????????523??2005-04-09?16:19??FindEyes1.1\cascade\4\AdaBoostCARTHaarClassifier.txt
?????目錄???????????0??2005-11-29?12:10??FindEyes1.1\cascade\5\
?????文件?????????748??2005-04-09?16:30??FindEyes1.1\cascade\5\AdaBoostCARTHaarClassifier.txt
?????目錄???????????0??2005-11-29?12:10??FindEyes1.1\cascade\6\
?????文件????????1132??2005-04-09?16:45??FindEyes1.1\cascade\6\AdaBoostCARTHaarClassifier.txt
?????目錄???????????0??2005-11-29?12:10??FindEyes1.1\cascade\7\
............此處省略83個文件信息
- 上一篇:2009年建模美賽O獎論文集(全部O獎論文合集
- 下一篇:libPLS文件包
評論
共有 條評論