| 28 | // of the image we mitigate this problem. |
| 29 | |
| 30 | static Image EnborderImg( // return the image with a border |
| 31 | int& leftborder, // out: border size in pixels |
| 32 | int& topborder, // out: border size in pixels |
| 33 | const Image& img) // io |
| 34 | { |
| 35 | Image bordered_img(img); |
| 36 | leftborder = cvRound(BORDER_FRAC * bordered_img.cols); |
| 37 | topborder = cvRound(BORDER_FRAC * bordered_img.rows); |
| 38 | copyMakeBorder(bordered_img, bordered_img, |
| 39 | topborder, topborder, leftborder, leftborder, |
| 40 | cv::BORDER_REPLICATE); |
| 41 | return bordered_img; |
| 42 | } |
| 43 | |
| 44 | void DetectFaces( // all face rects into detpars |
| 45 | std::vector<DetectorParameter>& detpars, // out |