Posted on : 18-06-2009 | By : rhondasw | In : OpenCV
In OpenCV/Samples there is facedetect program. This program can detect faces on images and video. It’s very fun, but its speed leaves much to be desired =(. Of course with OpenMP, it works faster; on Intel Core Duo 2.7GHZ, it works fast; but will it work fast on ARM? I have big doubts. I compiled facedetect without OpenMP and on average it takes 600 ms for 640×480 resolution to find one face. I wanted to find out, if it’s possible to improve this time by software means or not… After some investigations, code refactoring and improvements, facedetect started to work 2.5 time faster, even on ARM. Of course, without big quality loss =)
Posted on : 31-03-2009 | By : rhondasw | In : OpenCV
Here is a brief description of compiling and running OpenCV’s facedetect sample on Pocket PC.
I used Visual Studio 2005 Team Suite edition to compile OpenCV 1.1 pre 1. It compiled without any trouble for Win32.
Then I tried to compile for Pocket PC (set Platform to Pocket PC 2003 (ARMV4)). Some compilation errors occured. As I only needed to compile a facedetect sample, I decided to compile the necessary files only.
Posted on : 12-03-2009 | By : Igor Stepura | In : OpenCV
I played with two ARM9-based single board computers (SBC) recently to investigate how OpenCV would operate on embedded platforms. The SBCs are – TS-7800 and SBC2440-III.
OpenCV uses floating point operations a lot, but not all of the ARM processors have FP coprocessor, so developers should use either some FP library, or as in my case – use Linux kernel FP emulation. There are two types of such emulation OABI and EABI. More details can be found here and here. Kernel release 2.6.16 was the first one to include ARM EABI support.
Unfortunately, CPUs of both SBCs do not support floating point in hardware, but luckily enough, TS-7800 has Debian Linux with 2.6.21 kernel. So I had a chance to compare OpenCV performance for OABI and EABI.
Both SBCs have necessary tool-chains in package – TS-7800 has Linux and Windows(Cygwin) tool-chains, SBC-2440 – only Linux one. In addition to these I downloaded newer release of Codesourcery ARM tool-chain for Windows, because the one from TS-7800 SW package didn’t work properly with Cygwin.