The Design of Face Recognition System Based on ARM9 Embedded
Platform
Feng Ru, Xiaohong Peng*, Ligang Hou, Jinhui Wang, Shuqin Geng, Chen Song
VLSI and System Lab, Beijing University of Technology, Beijing 100124, China
* Email: pengxiaohong@bjut.edu.cn
Abstract
A specific face recognition system designed on ARM9
architecture embedded platform is proposed in this paper.
By using the method of skin model combined with
Haar-like features to detect faces and PCA (principal
component analysis) dimension declining algorithm to
recognize the face. Firstly, the libraries of QT and
OpenCV are transplanted into the ARM9 platform which
constructs the basis of all the programs in the system. In
addition, the training sample data are made and then
transmitted to the embedded system. After that the
processed face images are recognized by using the
nearest distance algorithm. Experiments show that this
design on the platform of ARM 9 embedded system has
boosted the efficiency of embedded face recognition
system, especially in the case of needing huge data
processing.
1. Introduction
With the modern widespread application of biometric
identification technology, face recognition plays a more
and more vital role in this field. Comparing with other
recognition technology, face recognition has advantages
of being direct and friendly to individuals. Although the
hardware resource on the ARM9 embedded system is
limit, however, this sort of system is very portable and
convenient for usage [3]. In this way, this kind of system
can satisfy the requirement of identity verification in
modern society for variety of application. OpenCV is an
open source computer visual library used for image and
video processing which can run on different platforms
such as Linux, Mac OS or Windows and it offers a great
deal of APIs to realize common algorithms on computer
vision. QT is a multi-platform graphical user interface
application framework.
2. The construction of the development environment
The software development environment on PC is built on
Ubuntu12.04 in virtual machine of VirtualBox. Firstly,
the cross-compiler arm-linux-gcc is needed to install for
generating the executable file which can run on the
platform of the ARM. We use the command of $tar zxvf
arm-linux-gcc.tar.gz to install the compiler and copy the
file into the directory of /usr/local/ and then change the
environment variable. After that we still need to run the
command of $gedit /etc/profile in terminal and add the
export PATH=$PATH:usr/local/arm/4.4.3/bin in the end,
and then source /etc/profile to make the compiler work.
The information of the compiler can be seen by using
command $arm -linux-gcc -v in terminal.
After the above steps, the libraries of QT are installed for
the program development. We use QT-4.7.3 in this
system and unpack the source code qt-everywhere-open
source-src-4.7.3.tar.gz, after that, run the command of
$./execute under the directory. Developers can add some
extra parameters follow that and then execute $make and
$make install to install the QT libraries on the computer.
The installation of OpenCV is needed to use CMake to
configure the parameters. At first, we unzip the source
code of OpenCV-2.3.1 and make another folder in the
source code folder. CMake-gui is used to configure the
parameters and install the OpenCV. The information of
key configuration is shown in following table.
Table 1. The configuration of CMake for OpenCV
3. The algorithm design of face recognition
3.1 The pretreatment of image
Skin model is a useful and efficient method for face
detection and the elliptical model combined with YC
b
C
r
and RGB model is used for the final skin model. The
colorful images are needed to preprocess before using
skin model. Firstly, we convert the image to the space of
YC
b
C
r
and then make the histogram equalization for the
Y component.
978-1-4799-8484-8/15/$31.00 ©2015 IEEE