#include #include #include #include #include #include #include #include #include #include static cvmemstorage* storage = 0; //建立乙個記憶體儲存器,來統一管理各種動態物件的記憶體
static cvhaarclassifiercascade* cascade = 0; //分類器
void detect_and_draw( iplimage* image ); //檢測人臉並標記
const char* cascade_name =
"haarcascade_frontalface_alt_tree.xml"; //分類器名稱
int main( int argc, char** argv )
storage = cvcreatememstorage(0);
cvnamedwindow( "result", 1 ); //1表示autosize
capture = cvcapturefromcam(-1); //呼叫攝像頭
if( capture )
cvreleaseimage( &frame_copy );
cvreleasecapture( &capture );
}cvwaitkey(-1); //檢測的時候,等待顯示
cvdestroywindow("result");
return 0;
}void detect_and_draw( iplimage* img )
, ,,,
,,,};
double scale = 1.2; //縮放因子
iplimage* gray = cvcreateimage( cvsize(img->width,img->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 )
}cvshowimage( "result", img );
cvreleaseimage( &gray );
cvreleaseimage( &small_img );
}
OpenCV人臉檢測
win7 32位 opencv3.0 vs2013 對資料夾中進行人臉檢測 在opencv中,人臉檢測用的是harr或lbp特徵,分類演算法用的是adaboost演算法。這種演算法需要提前訓練大量的,非常耗時,因此opencv已經訓練好了,把訓練結果存放在一些xml檔案裡面。在opencv3.0版本...
opencv人臉檢測
最近有空對學習下opencv的東西,本篇主要記錄對人臉檢測實現,而人臉檢測是為人臉識別做準備。opencv版本 3.3.0 環境 vs2015 void cascadeclassifier detectmultiscale inputarray image,vector objects,double...
OpenCV人臉檢測
import cv2 import matplotlib.pyplot as plt 讀取 的人臉檢測 img cv2.imread data face.jpg 1 讀取一張 gray cv2.cvtcolor img,cv2.color bgr2gray 將轉化成灰度 face cascade c...