資源簡介
Adaboost人頭部檢測opencv和vc代碼實現,已經測試過,可以使用!

代碼片段和文件信息
#include?“cv.h“
#include?“highgui.h“
?
#include?
#include?
#include?
#include?
#include?
#include?
#include?
#include?
#include?
?
#ifdef?_EiC
#define?WIN32
#endif
?
static?CvMemStorage*?storage?=?0;
static?CvHaarClassifierCascade*?cascade?=?0;?
void???detect_and_draw(?IplImage*?image?);?
const??char*?cascade_name?=?“haarcascade_head.xml“;
void?main(?int?argc?char**?argv?)
{
CvVideoWriter?*writer?=?0;
IplImage*?simg?=?0;
IplImage*?tempimg?=?0;
IplImage*?backgroundimg?=?0;
IplImage*?backgroundimgtmp?=?0;
IplImage*?img?=?0;//檢測人頭處用到
//測圖片
???????????backgroundimg?=?cvLoadImage(“test.jpg“1);
???????cascade_name?=?“haarcascade_frontalface_alt2.xml“;
//cascade_name?=?“haarcascade_head.xml“;
???????????cascade?=?(CvHaarClassifierCascade*)cvLoad(?cascade_name?0?0?0?);
???????????storage?=?cvCreateMemStorage(0);
???????????cvNamedWindow(?“Adaboost人臉檢測“?1?);
???cvNamedWindow(?“原圖像“?1?);
???????????cvShowImage(?“原圖像“backgroundimg);
???????????detect_and_draw(?backgroundimg?);
???????????cvWaitKey(0);
??
}
void?detect_and_draw(?IplImage*?img?)
{
????static?CvScalar?colors[]?=?
????{
????????{{00255}}
????????{{0128255}}
????????{{0255255}}
????????{{02550}}
????????{{2551280}}
????????{{2552550}}
????????{{25500}}
????????{{2550255}}
????};
?
????double?scale?=?1.3;
????IplImage*?gray?=?cvCreateImage(?cvSize(img->widthimg->height)?8?1?);
????IplImage*?small_img?=?cvCreateImage(?cvSize(?cvRound?(img->width/scale)
?????????????????????????cvRound?(img->height/scale))
?????????????????????8?1?);
????int?i;
?
????cvCvtColor(?img?gray?CV_BGR2GRAY?);
????cvResize(?gray?small_img?CV_INTER_LINEAR?);
????cvEqualizeHist(?small_img?small_img?);
????cvClearMemStorage(?storage?);
?
????if(?cascade?)
????{
????????double?t?=?(double)cvGetTickCount();
????????CvSeq*?faces?=?cvHaarDetectobjects(?small_img?cascade?storage1.1?2
???????????CV_HAAR_DO_CANNY_PRUNINGcvSize(30?30)?);
????????t?=?(double)cvGetTickCount()?-?t;
????????printf(?“detection?time?=?%gms\n“?t/((double)cvGetTickFrequency()*1000.)?);
????????for(?i?=?0;?i?(faces???faces->total?:?0);?i++?)
????????{
????????????CvRect*?r?=?(CvRect*)cvGetSeqElem(?faces?i?);
????????????CvPoint?center;
????????????int?radius;
????????????center.x?=?cvRound((r->x?+?r->width*0.5)*scale);
????????????center.y?=?cvRound((r->y?+?r->height*0.5)*scale);
????????????radius?=?cvRound((r->width?+?r->height)*0.25*scale);
????????????cvCircle(?img?center?radius?colors[i%8]?3?8?0?);
????????}
????}
?
????cvShowImage(?“Adaboost人臉檢測“?img?);
????cvReleaseImage(?&gray?);
????cvReleaseImage(?&small_img?);
}
?屬性????????????大小?????日期????時間???名稱
-----------?---------??----------?-----??----
?????文件??????11060??2011-11-29?22:49??9--Adaboost人頭部檢測opencv和vc代碼實現\11.JPG
?????文件?????105445??2011-11-29?22:55??9--Adaboost人頭部檢測opencv和vc代碼實現\111-1.jpg
?????文件?????105522??2011-11-29?22:54??9--Adaboost人頭部檢測opencv和vc代碼實現\111-2.jpg
?????文件??????37497??2011-11-29?22:53??9--Adaboost人頭部檢測opencv和vc代碼實現\111.JPG
?????文件??????11209??2011-11-29?22:49??9--Adaboost人頭部檢測opencv和vc代碼實現\22.JPG
?????文件??????90699??2011-11-29?22:59??9--Adaboost人頭部檢測opencv和vc代碼實現\222-1.jpg
?????文件??????92403??2011-11-29?22:59??9--Adaboost人頭部檢測opencv和vc代碼實現\222-2.jpg
?????文件??????30191??2011-11-29?22:53??9--Adaboost人頭部檢測opencv和vc代碼實現\222.JPG
?????文件???????9251??2011-11-29?22:49??9--Adaboost人頭部檢測opencv和vc代碼實現\33.JPG
?????文件??????85630??2011-11-29?23:01??9--Adaboost人頭部檢測opencv和vc代碼實現\333-1.jpg
?????文件??????87062??2011-11-29?23:03??9--Adaboost人頭部檢測opencv和vc代碼實現\333-2.jpg
?????文件??????29086??2011-11-29?22:53??9--Adaboost人頭部檢測opencv和vc代碼實現\333.JPG
?????文件??????11356??2011-11-29?22:49??9--Adaboost人頭部檢測opencv和vc代碼實現\44.JPG
?????文件??????39197??2011-11-29?22:53??9--Adaboost人頭部檢測opencv和vc代碼實現\444.JPG
?????文件??????10076??2011-11-29?22:49??9--Adaboost人頭部檢測opencv和vc代碼實現\55.JPG
?????文件??????36596??2011-11-29?22:53??9--Adaboost人頭部檢測opencv和vc代碼實現\555.JPG
?????文件???????9492??2011-11-29?22:49??9--Adaboost人頭部檢測opencv和vc代碼實現\66.JPG
?????文件?????103198??2011-11-29?23:05??9--Adaboost人頭部檢測opencv和vc代碼實現\666-1.jpg
?????文件?????106904??2011-11-29?23:04??9--Adaboost人頭部檢測opencv和vc代碼實現\666-2.jpg
?????文件??????36966??2011-11-29?22:53??9--Adaboost人頭部檢測opencv和vc代碼實現\666.JPG
?????文件??????37495??2011-11-29?22:43??9--Adaboost人頭部檢測opencv和vc代碼實現\Adaboost人臉檢測1.jpg
?????文件??????71191??2011-11-29?22:45??9--Adaboost人頭部檢測opencv和vc代碼實現\Adaboost人臉檢測2.jpg
?????文件?????861012??2005-03-16?19:18??9--Adaboost人頭部檢測opencv和vc代碼實現\haarcascade_frontalface_alt2.xm
?????文件???????2830??2011-12-01?19:36??9--Adaboost人頭部檢測opencv和vc代碼實現\image.cpp
?????文件???????4347??2011-09-14?12:58??9--Adaboost人頭部檢測opencv和vc代碼實現\image.dsp
?????文件????????535??2011-09-14?12:41??9--Adaboost人頭部檢測opencv和vc代碼實現\image.dsw
?????文件??????66560??2011-12-01?19:37??9--Adaboost人頭部檢測opencv和vc代碼實現\image.ncb
?????文件?????820736??2011-12-01?19:37??9--Adaboost人頭部檢測opencv和vc代碼實現\image.opt
?????文件???????1390??2011-12-01?19:36??9--Adaboost人頭部檢測opencv和vc代碼實現\image.plg
?????文件??????91814??2011-09-14?12:41??9--Adaboost人頭部檢測opencv和vc代碼實現\lena.jpg
............此處省略21個文件信息
- 上一篇:Office Clear
- 下一篇:家政管理系統畢業設計課題含論文
評論
共有 條評論