CascadeClassifier::detectMultiScale(const Mat& image,
vector<Rect>& objects, double scaleFactor=1.1,int
minNeighbors, int flag)
這裏先將圖像變成灰度圖,對它應用直方圖均衡化,做一些預處理的工作。接下來檢測人臉,調用detectMultiScale函數,該函數在輸入圖像的不同尺度中檢測物體。
1. image爲輸入的灰度圖像
2. objects爲得到被檢測物體的矩形框向量組
3. scaleFactor爲每一個圖像尺度中的尺度參數,默認值爲1.1
4. minNeighbors參數爲每一個級聯矩形應該保留的鄰近個數(沒能理解這個參數,-_-|||),默認爲3
5. flags對於新的分類器沒有用(但目前的haar分類器都是舊版的,CV_HAAR_DO_CANNY_PRUNING利用Canny邊緣檢測器來排除一些邊緣很少或者很多的圖像區域,CV_HAAR_SCALE_IMAGE就是按比例正常檢測,CV_HAAR_FIND_BIGGEST_OBJECT只檢測最大的物,CV_HAAR_DO_ROUGH_SEARCH只做初略檢測。