Real-time Object Detection Based on ARM9 M.Vijay babu

advertisement
International Journal of Engineering Trends and Technology (IJETT) – Volume 4 Issue 9- Sep 2013
Real-time Object Detection Based on ARM9
#
M.Vijay babu #1
M.Tech & VLSI-ES & Department of ECE & JNTU-Hyderabad
503 Sai Soudha Apartment, Shalivahan Nagar, Dilsukhnagar, Hyderabad, A.P, India
Abstract-- Object detection applications are associated
with real-time performance constraints that originate
from the embedded system that they are often deployed in.
Our Embedded system using ARM 32 bit Microcontroller
has the feature of image/video processing by using various
features and classification algorithms have been proposed
for object detection. It overcomes the performance in
terms of sensors and hardware cost is also very high. So,
our design Embedded system that detects partially visible
pedestrians with low false alarm rate and high speed
wherever they enter the camera view. This system takes
captured image by means of web camera connected to
ARM microcontroller through USB and the image is
processed by using image processing technique. Image
processing is a signal processing for which the input is an
image, whether it is a photograph or a video frame; the
output of image processing may be either an image or a set
of characteristics or parameters related to the image. The
captured image undergoes spatio temporal reference
samples in terms of both back ground and fore ground
estimation, evaluation and spatial Gaussian kernel to
provide high quality image of object detection that
detected image is continuously displayed on display unit
and the data is stored in pen drive connected to it.
Keywords— ARM microcontroller, Linux, Object Detection,
Qt, OpenCV.
system that detects partially visible pedestrians with low false
alarm rate and high speed wherever they enter the camera
view. This system takes captured image by means of web
camera connected to ARM microcontroller through USB and
the image is processed by using image processing technique
[7]. Image processing is a signal processing for which the
input is an image, whether it is a photograph or a video frame;
the output of image processing may be either an image or a
set of characteristics or parameters related to the image.
The real-time object detection [2] in this approach based
on S3C2440A ARM9 core processor on Linux operating
system. Individually we cannot get S3c2440A. We will get in
the form of Friendly ARM board. Friendly arm board
supports for operating systems Symbion, Android, Embedded
linux, win ce among all these operating systems embedded
linux will provide high security to drivers and files. The boot
loader of friendly ARM board specific is Super vivi. The root
file system is Root Qtopia. Qt is a cross-platform application
framework that is widely used for developing application
software with a graphical user interface (GUI), and also used
for developing non-GUI programs such as command-line
tools and consoles for servers. Qt uses standard C++ but
makes extensive use of a special code generator together with
several macros to enrich the language. OpenCV [OpenCV] is
an open source computer vision library. The library is written
in C and C++ and runs under Linux.
2. IMPLEMENTATION
1.
INTRODUCTION
A. Hardware Approach
Many applications require detection of objects in real time.
Object detection is a widely used technology. One of the
challenges of object detection is detects an object with low
false alarm rate and high speed, and display the object
continuously on display unit. Another challenge is to maintain
the frame rate and accuracy. As such general purpose
processors and digital signal processors will not provide
flexibility required to achieve real-time performance. Object
detection using ARM9 is very fast in detection process;
however, the performance on conventional general purpose
processors [1] is only 4 frames for second. Hence using
ARM9 it meets hard real time constraints that are imposed in
embedded environments, with low power and performance
trade-offs.
In this paper, we propose an embedded system that
performs object detection using ARM9. This embedded
system using ARM9 has the feature of image or video
processing. It overcomes the performance in terms of sensors
and hardware cost is also very high. So, our design Embedded
ISSN: 2231-5381
In this paper fig.1 shows the block diagram of Real-time
object detection based on ARM9. The USB camera interfaced
to Friendly ARM board. The USB camera continuously
captures the image from live video of the particular location.
ARM9 has the feature of image processing. The captured
image processed by using image processing technique. The
captured image continuously displays on LCD display unit.
And the data of particular image is stored in pen drive
connected to it. SAMSUNG's S3C2440A 16/32-bit RISC
microprocessor. SAMSUNG’s S3C2440A is designed with
low-power, and high-performance microcontroller solution in
small die size.
http://www.ijettjournal.org
Page 4080
International Journal of Engineering Trends and Technology (IJETT) – Volume 4 Issue 9- Sep 2013
image of object detection that detected image is continuously
displayed on display unit and the data is stored in pen drive
connected to it.
B. Working principle
Fig. 1 Block Diagram
The S3C2440A is developed with ARM920T core [3],
0.13um CMOS standard cells and a memory complier. Its low
power, simple, elegant and fully static design is suitable for
cost- and power-sensitive applications. It adopts a new bus
architecture known as Advanced Micro controller Bus
Architecture (AMBA). The camera used here is the CMOS
camera. A UVC driver camera is a video camera that feeds its
image in real time to a computer or computer network. The
display unit here is Touch screen LCD display. A touch
screen is an electronic visual display that can detect the
presence and location of a touch within the display area. This
is generally refers to touching the display of the device with a
finger. Touch screens can also sense other passive objects,
such as a stylus.
This system takes captured image by means of web camera
connected to ARM microcontroller through USB and the
image is processed by using image processing technique [4-6].
Image processing is a signal processing for which the input is
an image, whether it is a photograph or a video frame; the
output of image processing may be either an image or a set of
characteristics or parameters related to the image. The
captured image undergoes spatio temporal reference samples
in terms of both back ground and fore ground estimation,
evaluation and spatial Gaussian kernel to provide high quality
ISSN: 2231-5381
The main intention of this system is to detect the object in
particular location. To detect the object we will use camera
which is interfaced to a micro controller. This camera
continuously captures image or video and it will check
whether any object or person or any other thing is present at
that location or not.
The proposed object detection system makes use
embedded board which makes use of less power consumptive
and advanced micro controller like S3C2440. Samsung's
S3C2440A microcontroller is developed with ARM920T core
family. This microcontroller works for a voltage of +3.3V DC
and at an operating frequency of 400 MHz.
Individually we cannot get S3C2440A. It will get in the
form of FRIENDLY ARM board and also we can call it as
MINI 2440 board.
In order to work with ARM 9 micro controllers we need 3
things. They are as follows.
1. Boot Loader
2. Kernel
3. Root File System
Boot Loader:
The boot loader initializes all the devices that are present
on the mother board of MINI 2440 and at the same time to
find out whether any problem or any other fault is there in the
devices that are present on that mother board of MINI 2440.
Another feature of the boot loader is to find out what are
the different operating systems that are present in the standard
storage devices and to show it on to the display device so that
user can select between the operating systems into which he
wants to enter.
One other feature of the boot loader is to load operating
system related files byte by byte into the temporary memory
like RAM. In this paper we are using boot loader like Super
vivi which is MINI 2440 specific.
Kernel:
The core part of an operating system is kernel. With the
help of the kernel only Operating system performs all of its
functions like File management, Process management,
Memory management, Network management and Interrupt
management.
Friendly arm board supports for operating
systems Symbion, Android, Embedded linux, win ce among
all these operating systems embedded linux will provide high
security to drivers and files. So in this paper we are making
use of kernel of embedded linux with which device related
drivers that are present on the mother board of friendly arm
board will automatically come when we load embedded linux
related kernel.
Root File System:
File system will tell how the files are arranged in the
internal standard storage devices. In embedded Linux, kernel
treats everything as a file even the input and output devices
http://www.ijettjournal.org
Page 4081
International Journal of Engineering Trends and Technology (IJETT) – Volume 4 Issue 9- Sep 2013
also. In embedded Linux, Root is the parent directory it
contains other sub directories like dev, lib, home,
bin ,sbin ,media ,mnt ,temp ,proc , etc, opt and etc. According
to our application we will interface some external devices also.
All the devices means internal devices that are present on the
motherboard of MINI 2440 will get their corresponding
drivers when we load Embedded Linux related kernel. But
these device drivers require micro controller related header
files and some other header files which will be present in the
lib directory which is present in the root directory. And also
the devices related drivers will be present in the dev directory
which is again present in the root directory. So whenever we
will load the Root File System then we will get different
directories which will be helpful to the kernel. So
compulsorily we need to load the Root File System. MINI
2440 specific Root File System is Root Qtopia.
The essential programs that are required in order to work
with MINI 2440 like Boot loader, Embedded Linux related
Kernel, Root File System will be loaded into the NOR flash
which is present on the MINI 2440 board itself. The
application program will be loaded into NAND flash which is
also present on the MINI 2440 board itself. The user can
select either NOR flash or NAND flash by using boot strap
switch. DNW tool can be used to load Boot loader, Embedded
Linux related kernel and Root File System into NOR flash by
using USB cable and the application related program into
NAND flash.
Once loading everything into MINI 2440 board it starts
working based on the application program that we have
loaded into the NAND flash.
By using USB type camera that is interfaced to the
embedded board we can capture the live video of the
particular location. To detect the motion first open the video
device, and capture the video frame from video device and
grap the frame from video. Then read the image from the
frame and store that image in particular memory location.
After that we will read the stored image. The current image
and already stored we will convert to gray image. Then
compare the both images and differentiate them. Again we
will convert that image to black and white image. And draw
outline to that image. If any difference will get draw the
rectangle. In this way we can identifies any object present in
particular location. The detected object can be displayed on
touch screen LCD as well as we can save it in pen drive.
combination of both linux open OS source code .C file and the
object detection application code is combined compiled by
ARM gcc compiler.
ARM gcc compiler which in turns contains editor, linker,
compiler which generates three files. The combined source
code is edited and all the object files are linked by the linker.
After the linker the object file which is .obj file sent to the
compiler to generate .bin file. Here the compiler will generate
three files .elf file, .bin file, .obj file. In these three files .bin
file is used. The .bin file is dump on to the ARM9 kit using
DNW tool.
Qt is a cross-platform application framework that is widely
used for developing application software with a graphical user
interface (GUI), and also used for developing non-GUI
programs such as command-line tools and consoles for servers.
Qt uses standard C++ but makes extensive use of a special
code generator together with several macros to enrich the
language. OpenCV [OpenCV] is an open source computer
vision library. The library is written in C and C++ and runs
under Linux.
C. Software Approach
The below figure.2 is about the complete software
approach which states both linux operating source code .C file
and application code .C file. The application used here is real
time object detection based on ARM9 with its .app code
which is combined with Linux platform. The ARM GCC
compiler which is used to compile the complete source code
into .bin file. Linux operating system which is an open source
used in this paper as an open source platform. The object
detection application code .C file is developed by a user which
in turn used as a certain task in a linux platform. The
ISSN: 2231-5381
http://www.ijettjournal.org
Fig. 2 Complete software approach
Page 4082
International Journal of Engineering Trends and Technology (IJETT) – Volume 4 Issue 9- Sep 2013
3. RESULTS
Radio Eng. and Assn.ComputingMach. This article started the
field of computer image processing.
As mentioned earlier, the application i.e., Real time object
detection has to be developed on the MINI 2440 board. The
application tests the successful operation of the proposed
approach and produces the required results. The object
detection system is characterized by how accurately it can
classify data and how many image frames it can process per
second. The proposed system can maintain minimum 24FPS.
A minimum performance of 24 frames per second is enough
for real time video processing.
4. CONCLUSION
[6] Edgar Osuna, Robert Freund, and Federico Girosi.
Training support vector machines: an application to face
detection. In Proceedings of the IEEE Conference on
Computer Vision and Pattern Recognition, 1997.
[7] F Porikli and O Tuzel, ―Human body tracking by
Adaptive background models and mean-shift
Analysis, IEEE Int. W. on Performance Evaluation of
Tracking and Surveillance, 2003.
The proposed system Real-Time Object Detection has been
successfully implemented on ARM9. It has been developed by
integrating features of all the hardware components and
software used. Presence of every module has been reasoned
out and placed carefully thus contributing to the best working
of the unit. Secondly, using highly advanced ARM9 board and
with the help of growing technology the system has been
successfully implemented.
5. FUTURE WORK
Right now we are recording the objects from any location by
using webcam and we are monitoring the recorded
information on touch screen display unit only. In future we
can monitor the information on internet and maintain the
database in the MINI 2440 board itself. At present we are
implementing this project by using MINI 2440 board. In
future we can implement the same project by using high speed
processors like ARM Cortex which speed is 150 times faster
than ARM9 board.
REFERENCES
[1] B. Heisele, T. Serre, S. Prentice and T. Poggio
“Hierarchical Classification and Feature Reduction for Fast
Face Detection with Support Vector Machines” pattern
Recognition, vol. 36, no.9, pp. 2007-2017, 2003.
[2] “A Parallel Hardware Architecture for Real time Object
detection with Support Vector Machines” Christos Kyrkou,
IEEE Transactions on computers, vol.61, no.6, June-2012.
[3] “ARM Processor Instructions Set Architecture” Arm.com
Archived from the original on 15 April 2009. Retrieved 18
April 2009.
[4] Russ, John C.(1995), THE IMAGE PROCESSING
HANDBOOK, 2nd ed., CRC Press. *IT*
[5] Kirsch,R.A., L. Cahn, C. Ray, G.H. Urban," Experiments
in processing pictorial information with a digital computer",
Proc.Eastern Joint Computer Conf., Dec. 9-13, 1957, Inst.
ISSN: 2231-5381
http://www.ijettjournal.org
Page 4083
Download