Intel® Integrated Performance Primitives
Community support and discussions relating to developing high-performance vision, signal, security, and storage applications.
6633 Discussions

Doubt About IPP Performance in FaceDetect Sample


I ran the FaceDetect sample using IPP6.1 successfully and substituted a BMP file including 50 faces for the original test.bmp. The run time printed on the console was - "IPP time: 1908ms". Meanwhile, I ran a serial sample code using OpenCV to detect faces, of course, same algorithm (Boosted Haar Classifier) and same BMP file for test. The detecting time of this serial application is only 969ms. I wonder how I can improve the face-detection performance using IPP. Can you give me some advices?

0 Kudos
2 Replies
You might want to check to be sure that the measurements are apples-to-apples. Are the measurements including the same basic elements of code? That is, only the face detection algorithms and not some copying of data into or out of memory, etc. It's very hard to compare two different pieces of code for performance.

Also, I'm not sure if the OpenCV code uses IPP for their face detection (OpenCV includes support for IPP in some of their functions). If they do, you might want to compare OpenCV compiled with IPP and without IPP, to get a more fair comparison of the value of IPP in that application. Again, this assumes that their face detection algorithm includes an IPP-enabled option.

The OpenCV face detection algorithm skips every second row of the image (this depends of the scale factor, but in all situations it skips at least 50% of the image row). Normally a face would be detected in more than one of the windows, so theskipping shouldn't hurt the detection significantly.
You can apply line skipping to the IPP detector by modifying the mask argument.