Efficient algorithm for automatic road sign recognition and its hardware implementation
Transcript of Efficient algorithm for automatic road sign recognition and its hardware implementation
SPECIAL ISSUE PAPER
Efficient algorithm for automatic road sign recognitionand its hardware implementation
Chokri Souani • Hassene Faiedh • Kamel Besbes
Received: 25 March 2012 / Accepted: 5 April 2013
� Springer-Verlag Berlin Heidelberg 2013
Abstract The automatic detection of road signs is an
application that alerts the vehicle’s driver of the presence
of signals and invites him to react on time in the aim to
avoid potential traffic accidents. This application can thus
improve the road safety of persons and vehicles traveling in
the road. Several techniques and algorithms allowing
automatic detection of road signs are developed and
implemented in software and do not allow embedded
application. We propose in this work an efficient algorithm
and its hardware implementation in an embedded system
running in real time. In this paper we propose to implement
the application of automatic recognition of road signs in
real time by optimizing the techniques used in different
phases of the recognition process. The system is imple-
mented in a Virtex4 FPGA family which is connected to a
camera mounted in the moving vehicle. The system can be
integrated into the dashboard of the vehicle. The perfor-
mance of the system shows a good compromise between
speed and efficiency.
Keywords Detection � Recognition � Classification �Hardware implementation
1 Introduction
Automatic recognition of road signs is a very attractive
modern application because it helps reducing the risk of
traffic accidents. This application improves the vigilance of
the vehicle’s driver by warning him of the presence of road
signs that he has, perhaps, missed. Automatic recognition
of road panels allows the driver to react on time according
to the indication of road signs. The application may warn
the driver by an audio and/or video alert. It represents an
electronic driving aid like anti-lock breaking system
(ABS), the system trajectory control (ESP for ‘Electronic
Stability Program’), and the automatic parking cameras and
mirrors. The proposed system is also an application that has
very high cultural and economic impact.
At the first glance, the road sign recognition problem
may appear simple as road panels are fixed in standardized
positions in traffic scenes, their shapes, colors and picto-
grams are known following international standards. In
reality the problem is complex, as we must add additional
features that influence the recognition system design and
performance. In fact, road signs are acquired from a rela-
tively high speed moving car. Thus, the traffic scene ima-
ges often suffer from vibrations and the color information
is affected by variable illumination. Moreover, road signs
are frequently partially occluded by objects present in
traffic scenes which make the sign detection hard. The
presence of pedestrians, other vehicles, buildings, colored
objects and billboards may cause the detection system to be
confused by patterns similar to that of road signs.
According to the Vienna Convention of 1968 on road
signs and signals [37], road signs are classified into seven
categories: (1) danger warning signs; (2) priority signs; (3)
prohibitory or restrictive signs; (4) mandatory signs; (5)
information, facilities, or service signs; (6) direction,
C. Souani (&) � H. Faiedh � K. Besbes
Laboratory of Microelectronics and Instrumentation, Faculty of
Sciences, Avenue de l’environnement, 5019 Monastir, Tunisia
e-mail: [email protected]
H. Faiedh
e-mail: [email protected]
K. Besbes
e-mail: [email protected]
123
J Real-Time Image Proc
DOI 10.1007/s11554-013-0348-z
position, or indication signs; and (7) additional panels.
Despite appearances, road signs are strictly described by
the Vienna Convention. There are differences between
panels even of the same family. These variations can cause
significant challenges for a computer vision algorithm.
Until now, many algorithms for the road sign detection
and classification have been presented. The road sign
detection methods are divided into three categories [38]:
color-based methods, shape-based methods, and machine
learning-based methods. Several techniques for the recog-
nition of road signs are studied by several authors [1–18,
22, 25–27, 32–34]. A wide range of techniques exists from
the simplest to the most complicated and from an average
performance to the most effective. This application is
typically implemented in software and executed by a
computer. Indeed, the recognition algorithm requires many
computing operations and a large amount of processed
data. For a hardware implementation it is necessary, in
most cases, to make changes and simplifications in the
algorithm, to overcome the real-time constraint. Some
Hardware systems are designed for this objective but most
of the research in this area is oriented for computer
implementation mainly using the OpenCV software library
[39].
First generation road sign recognition hardware systems
have been available since 2008 in some luxury cars such as
the redesigned BMW 7 Series and from 2009 on the
Mercedes-Benz S-Class. These systems could only recog-
nize speed limits. Second generation systems can also
detect overtaking restrictions, introduced in the Opel
Insignia [40], later followed by the Opel Astra and the Saab
9-5; also available in the 2011 Volkswagen Phaeton [41].
Current studies and trends try to design road sign recog-
nition systems capable of recognizing all the traffic signs
whatever is the country.
However, as research comes closer to commercial
applications, the constraints of the problem change. In
driver assistance systems or road inventory systems, the
problem is no longer how to efficiently detect and recog-
nize a traffic sign in a single image, but how to reliably
detect it in hundreds of thousands of video frames without
any false alarms, often using available low-quality cheap
sensors. In fact, the algorithms must be suitable for the
real-time implementation to insure short response time.
The hardware platform must be able to process a huge
amount of data from a video stream in a very short time.
In this paper we propose the hardware design of an
automated system for road sign detection and the shape
recognition based on the color of the road sign and its
geometric characteristics. This road sign detection system
allows us to improve both recognition efficiency and pro-
cessing time by categorizing road signs into a database of
smaller groups according to their colors and shapes. The
method can be divided in three stages: (1) the color-based
segmentation stage in an adequate color space; (2) the
detection of the panel shape using geometric characteris-
tics; and (3) the content indication of the panel.
In Sect. 2, the algorithm for recognition and classifica-
tion of road signs is presented. The algorithm is constructed
as a set of sequential and parallel processes. The HSV color
space is used to get a resulting image independent from the
illumination factor. Segmentation and filtering prepare the
pictogram extraction by considering the surface and the
aspect ratio. The first multi-layer perceptron (MLP) allows
the system to determine the shape of the panel among four
forms. Depending on some shapes, a second MLP will try
to identify the panel content. The constructed algorithm is
verified by soft compilation for validation, and then it is
optimized for hardware implementation as shown in Sect.
3. For hardware considerations, some processes are opti-
mized. Performance evaluation of the designed system is
presented and discussed in Sect. 4. The system is designed
and implemented in Xilinx FPGA family of the Virtex-4
device. The conclusions are presented in Sect. 5.
2 Recognition and classification algorithms
It is difficult to compare the published work on traffic sign
recognition. In fact, studies are based on different data sets
and they either consider the complete task chain of
detection, classification and tracking or focus on the clas-
sification part only. Some articles concentrate on sub-
classes of signs, for example the speed limit signs and digit
recognition. The recognition of traffic signs is done in three
main steps. First, the image is color segmented. Second, the
shape is extracted, and finally, the traffic sign is recognized
by processing the local region. In the literature, various
techniques are proposed for all these steps.
2.1 Related work
In [42] a recognition processor for road signs recognition
under various light intensity conditions is designed. The
algorithm is composed of two major stages: image
enhancement and recognition. In the image enhancement
stage the Multi-Scale Retinex (MSR) algorithm is per-
formed. MSR algorithm is a ‘‘Color Constancy’’. It seeks
from a given image to build an image illuminated by white
light constant throughout the image. The algorithm is a
Multi-scale version of the known algorithm as Single-Scale
Retinex (SSR): just makes images obtained by averaging
SSR at different scales. The input image is used in the RGB
color space. Adaptive neuro-fuzzy inference system con-
trols the configuration parameters of MSR. In the recog-
nition stage, some extracted features, such as symbol,
J Real-Time Image Proc
123
colors and shapes are treated by a Support Vector Machine
(SVM). The authors focus on the hardware design of the IC
and claim that the circuit can perform recognition in 30 ms.
In [43] authors present a three-stage road sign recognition
system, composed of a segmentation, a detection and a
classification phase. Only speed and danger signs are rec-
ognized. The red regions are extracted by combing the
color enhancement with a global threshold. The detection
is performed using a linear SVM with Histogram of Ori-
ented Gradients (HOG) features. Circular and triangular
signs are detected. To identify the content of the signs, the
tree classifiers, K-d tree, and Random Forest are used. The
implementation is done by software and the processing rate
is of 18–28 frames per second. The authors in [44] pre-
sented a road sign recognition application using Self-
Organizing Maps (SOM) in both the detection and recog-
nition steps. The system has good performance despite
small changes in position, scale, rotation, and partial
occlusion of the road signs. But the algorithm seems
inefficient when the luminosity changes causing perfor-
mance to drop considerably. The color space used before
the segmentation is YUV. It is shown in [45] that the use of
ANN with RGB color images as input to the system can
achieve good recognition rate. The rate of recognition and
classification is influenced and depends on the machine
learning procedure. The authors in [46] introduced a new
color space, called the RGB color ratio space. By estimated
boundaries in the RGB ratio space, a road sign color model
is determined by an elliptical area. Adaptive fuzzy logic
functions allow implementation of clustering rules. For
instance, each pixel will have its own fuzzy membership
function corresponding to its intensity. Then a basic trained
neural network is used to achieve parameters optimization.
In [47], video images in gray level are acquired. The
classification using a template matching algorithm is per-
formed and computed. Some speed limitation and few
prohibition signs are only considered for recognition and
classification. Virtex4 in a FPGA device and multicore
processors are built using the LEON3 cores.
Recognition techniques and classification are very
diverse and there are no two researchers and designers who
use the same procedures for detection and recognition of
road signs. It all depends on the final goal, and the choice
of the technique is suitable for either the software version
or the hardware projection.
A digital camera is placed in the vehicle, for acquiring
real images on the road. To extract road sign images,
several parameters must be considered, such as:
– For the same shape and same indication of a panel, the
colors may vary depending on the weather conditions.
– The width (or thickness) of the paint band on the edges
of the panels is very variable. Unfortunately there is not
a standard setting the thickness of the painted band on
the edges of a panel according to its shape size.
– Ambient lighting is highly variable and unpredictable
and can cause deformation of the colors of the panels.
Depending on the season, weather, and daytime, the
panel can be well lit and the colors are bright or poorly
lit and the colors are dark. Images taken at night are
usually darker than those taken in the morning or
around noon. The deformation of colors can be also due
to the shade. Indeed, it has been shown in [1, 3] that the
colors of a panel which is partially or fully covered by a
tree tend to be greener.
– Road signs can undergo any kind of degradation in
quality or form. For example, the paint can be scraped
or erased. Then there are mechanical deformations such
as folding of the edges or sloping of the panel.
– There is also the problem of standardizing panel sizes.
Panels with identical shape and indication can have
different sizes. The elevation and height of the panels
can also vary. In addition, double panels placed on the
same mast are frequently found.
– The vibrations and jolts experienced by the automobile
affect the quality of acquired images. In addition, the
car speed has a major effect on image quality,
especially blurring.
We propose an algorithm that uses simple segmentation
of color images in the HSV color space. The median filter
allows us to delete undesired objects. Aspect ratio and
surface of red colored objects permit the extraction of road
sign images. Then a first MLP determines the shape while a
second MLP tries to identify the content of some sign
shapes.
2.2 Acquiring
A camera is mounted on the windshield of a moving
vehicle. The camera is placed at the same height as the
driver’s head and its optical axis is set parallel to the road.
The field of vision is wide enough to cover the panels
located on the right as well as those located on the left of
the vehicle. The left panels can be found at a roundabout or
in a left shift. The acquired images have a size of
640 9 480 pixels belonging to the RGB color space.
The images are divided into regions of interest. A
database composed of several road images was created. In
examining all of these images, we determined two regions
of interest showing the location of road signs. The
dimensions of each region are 200 9 280 pixels. The
advantage of cutting the image into regions of interest is to
reduce the amount of data to be processed. In fact, only
18 % of the pixels are processed in the entire image. Fig-
ure 1 shows some images that represent the position of
J Real-Time Image Proc
123
regions of interest where the unused regions of the images
are dimmed.
Several techniques for detecting road signs have been
tested in several studies [1–18, 22–25]. Some authors use
pattern recognition algorithms with detection of circular
shapes and rectilinear segments [18, 27, 36]. In [5, 8, 12,
15, 22, 34], the applied algorithm begins by the extraction
of contours, and filtering/smoothing of the resulting image.
It is then applied to the task of detection and extraction of
panels and finally to the classification operation. Other
studies [13, 16, 17, 25, 32, 33] applied color segmentation
to detect the presence of a road sign in the image. The
binary filter is then used to process the obtained image
before extracting the panel’s image.
In this work, we consider the red road signs that indicate
an obligation, a prohibition or a danger. Since the objective
of this work is to implement the system on a hardware
support to run in real time, a different color space was used.
In fact, there are other color spaces, than RGB, that can
separate the colors effectively regardless of ambient
lighting. We thus used the HSV space, which was used in
several research studies [7, 13, 14, 16, 17, 31].
2.3 Color spaces
By default, digitized images are represented in the RGB color
space. Other color spaces can be obtained by using a mathe-
matical transformation. The three colors Red–Green–Blue are
an encoding format for natural color. These three colors are
the additive primary colors. The additive combination of
these three colors gives white color [16, 17, 23, 29]. The RGB
space does not determine the brightness accurately [13, 16,
28]. In addition, a color represented in this model cannot be
effectively isolated from other colors [13, 16, 24, 29].
The HSV color space is such that the H (stands for Hue)
indicates the base color of the pixel, the S (stands for
Saturation) indicates the saturation value and V (stands for
Value) indicates the brightness [16, 17]. The HSV space
(i.e. H, S, and V parameters) is obtained by applying a
mathematical transformation on the three color compo-
nents R, G and B. The HSV space is a representation that
can describe the color more accurately than RGB space [3,
16, 17].
The hue color (H) is expressed by [3, 23] as:
H ¼ d if B� G2p� d otherwise
�
where d ¼ arcosðR�GÞþðR�BÞ
2ffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiðR�BÞ2þðR�BÞ � ðG�BÞp
� �
The saturation S of a color c measures the purity of the
color. This parameter depends on the number of wave-
lengths that contribute to the perception of color. The
higher the number of wavelengths, the less pure is the
color. The extreme case S = 1 corresponds to a pure color
and the case S = 0 corresponds to an achromatic color. The
expression of S is such that S ¼ 1� minðR;G;BÞmaxðR;G;BÞ while the
value V is given by: V ¼ maxðR;G;BÞG [3, 21, 23].
2.4 Segmentation
Segmentation is a process which generates a binary image
based on a threshold value. The objective of this process is
to erase all objects not of interest in the image and keep the
shapes of objects of interest. The use of the threshold value
depends on the characteristics of the objects of interest.
However, the difficulty lies in choosing the threshold value
[13, 16, 29].
Several segmentation techniques are used in the litera-
ture: shape segmentation, color segmentation, or mixed
shape and color segmentation. Since the signs have a well-
known geometric shape, we apply the technique of color
segmentation and then the recognition by the image shape.
This technique mimics the process of recognition by
humans, as signs are perceived due to their color, then a
Fig. 1 The regions of interest
are highlighted and the rest of
the image is dimmed
J Real-Time Image Proc
123
recognition process allows to determine the indication of
the panel.
Within the HSV color space, only the H and S values
allow the color identification, since the V values indicate
the luminosity. Two threshold values based on the values
of H and S allow the extraction of red colored objects
regardless of the ambient light level [16]. A statistical
study performed using a set of images extracted from video
sequences allowed us to determine the threshold values.
The segmentation by a threshold generates an impulse
noise since it isolates the pixels from the neighboring ones
[3, 21, 23, 24, 29]. Thus the resulting image needs to be
filtered.
2.5 Filter
The median filter is an ideal filter to remove impulse noise
in an image [3, 23, 24, 29]. The purpose of the median filter
is to replace the value of a pixel by the median value of a
finite number of neighboring pixels. The dimensions of the
median filter have a great impact on the resulting image.
For instance, it can erase the interesting details when filter
dimensions are large, or let undesirable blots in the image
when filter dimensions are small.
2.6 Pictogram extraction
Labeling connected components of an image consist of
grouping pixels which share similar pixel intensity values.
These pixels are grouped into components based on pixel
connectivity, i.e. all pixels which are in some way con-
nected with each other.
The labeling process provides a list of connected objects
[11, 29]. Then the surface of each labeled group, that is the
number of connected pixels, can be calculated. A statistical
study allows us to determine the surface of undesirable
objects. Therefore, two threshold values are used to find the
surface of objects of interest: the maximum surface which
reflects the minimum surface of large objects (buildings,
trucks, cars, …) and the minimum surface which reflects
the maximum surface of very small objects (vehicle lights,
sidewalk tracings, flowers, …).
Therefore, if SMa and SMi are, respectively, the maxi-
mum and minimum areas of a labeled connected object,
that object is considered as a candidate if its surface Sca
meets the following condition: SMi B Sca B SMa. Other-
wise, the group is removed from the list of objects of
interest.
Each object is then framed with an encompassing win-
dow. (La) denotes the width and (Ha) designates the height
of that window (Fig. 2). The aspect ratio of the shape is
calculated as: AsF = La/Ha. Generally, the window
framing a road sign is square. Therefore, we retain only the
candidate objects that have an aspect ratio equal to
AsF = 1 ± 10 %. The 10 % tolerance was chosen to
reflect the distortion caused by the filter.
2.7 Shape classification
The classification process enables us to assign a class to
each considered shape. For a given shape, we determine
whether it belongs to a specific predefined class or not. This
can also be thought of as a shape recognition problem,
usually known as supervised classification. The technique
involves comparing shapes, i.e., deciding how similar two
shapes are.
The extracted pictograms are submitted to shape clas-
sification. Four vectors are extracted from the four edges of
the binary pictogram. The pixel values along the shape
edges define the local histogram. Let VChh, VChb, VCvg and
VCvd the four vectors as shown in Fig. 3. The local histo-
grams are defined with a slight depth of 5 pixels.
The pixel depth is experimentally estimated and used to
predict irregular edges destroyed by the filtering operation.
In Table 1 we present the waveform of the vectors repre-
senting the number of pixels on the four sides of the sign
shapes.
The road sign panels may undergo any kind of distor-
tion, such as distortion of colors, a scraping paint or an
inclination of the panel. The color distortion influences the
segmentation process. The threshold parameters must
consider the color distortion and also the ambient lumi-
nance. A statistical study of a set of shapes representing
inclined panels shows that the maximum inclination of the
road sign panels is about ±17� relative to the vertical line
(as an example the panels shown in Fig. 4). Indeed, if the
inclination angle exceeds this value, then the aspect ratio of
the form of the shape exceeds the tolerance of ±10 % and
the shape is rejected and is not considered by the next
processes.
Fig. 2 The aspect ratio of the shape and the surface of labeled
regions allow us to define candidate objects to be considered as road
signs
J Real-Time Image Proc
123
In reality, any sign of the road may be straight or tilted
from 0� to 17� or -17�. In Table 2, the values of the
vectors are determined for the extreme cases: a straight
shape, inclined by 17� to left and inclined by 17� to right.
The shapes of road signs are classified into four classes:
circular sign, triangular sign, inverted triangular sign for
giving the way and hexagonal shape for the stop sign.
For each shape in a class, there are 35 possible angular
positions; in addition, the possible deformations and dete-
riorations of image contours. This leaves us the option of
using an artificial neural network [8, 12–22, 30–36]. As a
compromise for hardware implementation, the perceptron
model was chosen as the adequate solution [9, 35]. The
constructed neural network has four input vectors: VChh,
VChb, VCvg and VCvd, and five output bits. The outputs
must indicate the type of the shape among five possibilities:
circular form (FCi), triangular form (FTr), inverted trian-
gular form (to give way) (FCP), the STOP sign (FSt), and
the fifth is for a non-recognized form (FNR). When the
recognition of the form fails, the FNR output is activated
and may inform the system to take a new decision.
The constructed neural network uses one single layer
composed of five neurons that give five binary outputs to
indicate the shape type. The neural network is represented
in Fig. 5.
2.8 Recognition of the shape contents
Both STOP signs and ‘Give way’ signs have always unique
contents. These signs are recognized by the form regardless
of the content. Thus, the signs that must be processed for
content recognition are those of circular or triangular
forms. At the output of the neural network these correspond
to the signals CFi = 1 and FTr = 1, for which the content
should be determined.
The pictogram obtained after segmentation, filtering and
labeling of the input image is re-used after normalizing its
size to 65 9 65 pixels and then converting it to 32 gray
levels. The number of gray levels is reduced to allow a
binary representation of smaller size. The number of gray
levels was experimentally determined and found sufficient
to deal with the sign images.
Fig. 3 The four vectors determining the values of pixels on the edges
Table 1 Waveforms of the four
vectors for different types of
panel shapes
Fig. 4 Example of road panels inclined by 17�
J Real-Time Image Proc
123
The normalized image is processed by a neural network
for content recognition depending on the panel shape. The
input of the neural network is a matrix composed of 652
pixels with a width of 5 bits each. An output layer com-
posed of six neurons provides the binary code associated to
the panel during the learning process. The structure of the
neural network is shown in Fig. 6.
A large set of circular and triangular road signs are used
in the learning process. Offline learning allows the reduc-
tion of the size of the neural network [1, 2, 19]. The output
of the first neural network shows the shape of the panel
whose content will be recognized by the second neural
network. Since we will only recognize the content of cir-
cular and triangular panels, two matrices are then defined
to contain the network settings for the two types of images.
The synaptic weight values used by the neural network
depend on the form of the processed panel whose contents
are to be determined. Two ROM memories store the weight
values according to the circular shape or triangular shape of
the panels (Fig. 6). During the recognition process, the
signal FCi=FTr allows us to switch to one of these mem-
ories. The neural network has 6 bits at the output which can
achieve a classification of 64 forms and because it can
manage two kinds of forms (triangular/circular), this allows
Table 2 Values of
characteristic vectors in extreme
cases
Fig. 5 Structure of the neural network for forms classification
J Real-Time Image Proc
123
a total of 128 shapes of panels to be recognized. By adding
to these recognizable panels two other kinds of panels
(‘give way’ and stop panels), the total number of recog-
nizable road signs is equal to 130.
3 Hardware implementation of the algorithm
Although hardware implementation of road signs recogni-
tion system is a very interesting subject, few studies con-
sider designing the system in a suitable hardware. The first
embedded systems that recognize speed limits and which
are integrated into some cars are developed in cooperation
with Mobileye and Continental AG [48].
Some other hardware designs are presented in [49]
where a hardware system was proposed for recognizing
speed limit sign numbers. The system is based on incre-
mental evolution of digital logic gates. In [50] a parallel
implementation of a system for traffic sign recognition is
presented with digital map fusion on emerging multicore
processors and graphics processing units (GPU). In [51] an
implementation on a Virtex 5 device is proposed for the
recognition of triangular, circular and rectangular traffic
signs. The system can recognize 32 different traffic signs.
The execution time varies between 4 and 70 ms according
to the size and shape of the road sign. At a speed of
75 km/h, the car travels 2 m before the sign is recognized.
The recognition rate is about 95 % for well-illuminated
images and about 84 % for poorly illuminated ones.
In this study, we optimized the recognition algorithm to
be suitable for real-time hardware implementation. Ade-
quacy of algorithm to hardware is performed. Each task is
optimized and adapted to the hardware implementation.
The algorithm has been firstly described using Matlab
software and validated by simulations. The most important
constraint for the hardware implementation of the algo-
rithm is to respect the real-time constraint. This constraint
is reflected by the fact that the car is in motion and has a
variable speed which can range from a few km/h to
100 km/h, when running on the highway for example. The
designed system must act and provide an answer before the
vehicle passes the panel. We start the system optimization
by fitting the camera with a 49 magnification optical
zoom. This can give an advance in time for processing the
images which are acquired with good dimensions. At
algorithmic level, each processing step and task are opti-
mized and simplified in order to gain in response time and
in performance. The hardware implementation was per-
formed on a Virtex 4 FPGA family from Xilinx. The
algorithm described by software and validated by simula-
tions was adapted for hardware implementation using the C
language in the handel-C environment. Virtex-4 Xilinx
FPGA device was the target hardware.
The acquisition camera has a wide viewing window to
capture images of road signs that are either on the left or
right sides of the vehicle. Two regions of interest were
defined. The recognition system must give a rapid response
when the detection/recognition fails on one region of
interest in order to switch to the other region of interest for
processing. The two regions of interest are processed
alternatively (Fig. 7).
For a given acquired image, segmentation in color may
indicate the presence or the absence of an object of interest.
When it is negative, the system then proceeds to acquire a
new image. Otherwise, the system proceeds to filtering.
When the filter does not produce a resulting image, the
process is stopped and the system proceeds to acquire a
new image. This allows us to anticipate the result without
waiting for the end of the cycle of recognition.
3.1 Color space transformation
The mathematical formulas for transforming the color
space from RGB to HSV require very large computational
time. A simplified version of the equations was used. Let
r; g; b 2 ½0; 1� the three coordinates of a color pixel of color
r, g and b, respectively, belonging to the RGB space. Let
M = Max (r, g, b) and m = min (r, g, b). Let p = M - m.
The hue is represented as H 2 ½0; 2p� and is computed by
the next equations [3, 16, 17, 21–29]:
Fig. 6 Structure of the neural network for content classification
J Real-Time Image Proc
123
H ¼
0 if M ¼ mp3� g�b
Dp if M ¼ rp3� b�r
Dp þ 2p3
if M ¼ gp3� r�g
Dp þ 4p3
if M ¼ b
8>>><>>>:
The saturation S is defined by the following equation
S ¼ 0 if M ¼ 0
1� mM otherwise
�
The value V is expressed by: V = M = Max (r, g, b).
3.2 Segmentation and filtering
H values define the color and S values define the level of
color saturation. The segmentation process uses the val-
ues of H and S values, while V values reflect the degree
of brightness in the image [17]. Fixed threshold values
are used for matrices H and S. The threshold values are
determined after testing a large number of images that
are acquired under different lighting conditions. The
image segmentation result is a binary image Is deter-
mined as:
Isðx; yÞ ¼1 if ½Hðx; yÞ\Thl or Hðx; yÞ[ Thh� and Sðx; yÞ[ TS
0 otherwise
�
where (x, y) are the coordinates of the pixel in the image.
Thh and Thl are, respectively, the lower and upper level
threshold values in the matrix H that define the hue field of
the red color. Ts is the threshold level in the plane S to
define the values of the color saturation.
The resulting image is a binary image that represents the
red areas of the image. The constants Thl, Thh and Ts are
determined manually after testing and evaluating a large
number of still images (1,672 images). The images were
acquired from real scenes. The resulting image Is is in
binary format with the size of 200 9 280 bits. The filtering
operation uses a 2D median filter with the size of 9 9 9.
This size allows the median filter to remove impulse noise
of moderate size without large distortion of the image
contents.
Although the hardware implementation of median filter
is quite complex in the general case, it is very simple in this
particular case (Fig. 8). Indeed, when the processed image
is binary, then the calculations by the median filter are as
follows: if the number of zeros in the filter core is greater
than half sized e then the median value is equal to 0,
otherwise it is equal to 1. Adders are used to compute the
number of bits set to 1 in the filter core. By subtracting the
constant value of the size of the filter core=2d e; (which is
equal to 41) and the sign of the result is evaluated. After
filtering the obtained binary image is called IF.
3.3 Extraction
The extraction task consists in labeling each connected
region in the image IF. Each connected region is associated
with a counter that calculates the number of pixels in the
region. These counters are used to calculate the area of
each connected region. A selection of regions according to
their surface is performed. In fact, the surface counter
associated to a given labeled region is reset to clear the
connected region, if its surface is less or greater than the
limits. Then, the four vectors which determine the local
Fig. 7 Flowchart of recognition and classification of signs
Fig. 8 Implantation of median filter
J Real-Time Image Proc
123
histograms on the edges are computed for each region. The
vectors of local histograms are routed to the first neural
network to determine the shape of the pictogram. A second
neural network will determine the content of the pictogram.
Then, the pictogram is converted into 32 levels of gray.
To convert an RGB image to gray level, we may use the
following equation [3, 16]: Y = 0.299 9 R ? 0.587 9
G ? 0.114 9 B. With a small loss of precision and for a
little effect on the resulting image, the equation is simpli-
fied as follows: Y = 0.1 9 (3 9 (R ? 2 9 G) ? B).
3.4 Recognition and classification
A first neural network allows the recognition of the shape
type. The inputs of the neural network are the four vectors:
VChh, VChb, VCvg and VCvd. It must indicate whether the
shape is circular, triangular, form of ‘give way’, form of
the STOP panel or any form. The four input vectors are
stored into four local registers. Five neurons which are
designed as MAC (Multiplication and ACcumulation) units
are cascaded each to an activation function unit. A ROM
memory is used for storing the synaptic weights. The
synaptic weight values are determined by the offline
learning phase (operation performed by software).
The second neural network has a retina input of 65 9 65
pixels. This neural network only analyses the content of
circular and triangular panels. Two ROM memories are
used to store the corresponding synaptic weights. The
outputs of the network indicate the code of the road panel
relatively to an offline catalog. The input image is a pic-
togram of 32 gray levels with the size of 65 9 65 9 5 bits.
4 Implementation results
In this section we present the hardware implementation
results. The hardware system is first presented and results
are shown. The application performance is then discussed
and examples are shown.
4.1 Hardware results
A high description level of the algorithm was performed
with the ‘DK5 Design Suite’ tool from Celoxica. The
description was made with Handel-C language. The ISE11
Xilinx tool was used for the synthesis, placement and
routing. A RAM memory has been connected to a Virtex 4
FPGA type with a capacity of 274 kilobytes. The block
diagram of the system is shown in Fig. 9.
A control unit allows the management of communica-
tion between different functional units. Each functional
unit performs a well-specified operation and requires a
communication of data and results with the shared RAM
memory. The two neural networks are denoted ANN1 and
ANN2. The control unit triggers the digital camera to scan
images. An external module includes a database of audio
speech and video symbols of road signs, is addressable via
the ID_symbol word. This system is connected to a small
screen and a small speaker.
Tasks scheduling is optimized by using the ‘par’ direc-
tive in the Handel-C language. The RAM memory is dual
port and allows reading and writing simultaneously. As
shown in Fig. 10, tasks are overlapped assuring parallel
execution of tasks such that the filter for example is active
Fig. 9 Block diagram of the
system of recognition and road
signs classification
J Real-Time Image Proc
123
after few image lines are processed by the segmentation
task. In the Handel-C code, the loop for color segmentation
process—for example—is decomposed and two or three
loops are generated. In this case, the first loop does only the
segmentation of a sufficient number of pixels in the image.
The next loop is executed in parallel with the segmentation
of the remaining pixels. Figure 10 shows the distribution of
tasks as a function of time, and the arrows show the
dependency order.
After compilation targeting the Xilinx Virtex4 FPGA, the
ISE tool was used to synthesize and implement the code in
physical FPGA device. Note that the option for ‘resource
sharing’ has been enabled and the generated circuit was flat
without hierarchy. Thus, we cannot isolate or identify the
functional blocks to determine their individual performance.
After the synthesis process, the system is clocked at a
speed of 88 MHz. The number of equivalent gates is about
160 K NAND gates. The system can detect and recognize a
road sign in a time of about 16 ms before generating the
identification code of the symbol. When the response is
negative and the system does not detect any road sign in the
image, then it takes a time of 2 ms before processing a new
image.
These results show that the adequacy of the algorithm
and the adequacy of the hardware are optimized. Perfor-
mance comparison of the designed hardware system is
presented in Table 3. It is shown in [47] that a latency time
of 600 ms is necessary when running on 4 LEON3 CPUs
clocked with 40 MHz. In [43] a processing rate of 18–28
frames per second is achieved. In [42] a 92 mW sign rec-
ognition processor is developed. It is clocked at a speed of
200 MHz. Full recognition is completed within 30 ms in
total while the previous work of the same authors required
130, 85 or 433 ms on PCs, and FPGA, respectively. In [50]
the algorithm implemented on a Multicore CPU achieves
an execution time of 250 ms corresponding to 4 frames per
second. In [51] an implementation on a Virtex 5 device is
proposed for the recognition of triangular and circular
signs. The implemented algorithm for circular and rectan-
gular road sign recognition on Virtex 5 FPGA platform
shown in [51] ensures an execution time of about 70 ms.
Note that the input images are size reduced.
The architecture of our proposed processor is suffi-
ciently optimized and provides very interesting results. In
the road and for a car speed of 120 km/h, the system can
detect two consecutive road signs equally spaced over
64 m. Generally, on the highway, the distance between two
consecutive panels is higher than 1 km. In seeking to detect
road signs, the system acquires a new image every 8 m. For
a speed of about 70 km/h for example, the system can
detect road signs equidistant from more than 37.4 m, and if
there is no road signs, it proceeds to acquire a new scene
every 4.7 m.
Fig. 10 Schedules
parallelization and distribution
Table 3 Hardware
performance comparisonReference Platform Clock speed Detection
speed (ms)
Recognition
rate
Our system Virtex 4 88 MHz 16 82 %
[43] Intel Core i7 PC 2.93 GHz 48.85 90 %
[42] 3.6 mm2 ? 7.1 mm2
(fabricated in a 0.13 lm
CMOS process)
200 MHz 30 ?
[47] 4 LEON3 into Xilinx-4 FPGA 40 MHz 600 ?
[50] Multicore CPU & GPU 1.544 GHz 250 80 %
[51] Virtex 5 100 MHz 70 84 %
Table 4 The set of 11 video sequences and the system performance
Video Duration # Road
signs
# Recognized
signs
% Recognition
Video 1 00:21:09 47 40 85.1
Video 2 00:04:12 5 4 80.0
Video 3 00:05:36 14 12 85.7
Video 4 00:04:20 9 9 100.0
Video 5 00:08:01 13 12 92.3
Video 6 00:10:40 14 12 85.7
Video 7 00:09:16 7 6 85.7
Video 8 00:09:10 8 6 75.0
Video 9 00:19:09 19 10 52.6
Video 10 00:07:56 10 10 100.0
Video 11 00:25:13 28 16 57.1
Total 2:04:42 174 137 81.8
J Real-Time Image Proc
123
The hardware system allows a rate of 82 % of correct
recognition. There are probably errors in calculations due
to the number representation and the limited dynamics of
numbers. The correct recognition rate of panels that are
well lit is about 90 %, while the rate for panels poorly lit
and dark is about 72 % only. At this level, it was found that
the threshold value for the segmentation process has a high
influence on these results. Partially or totally obstructed
road panels do not permit positive recognition if more than
15 % of their surfaces are covered.
4.2 Application performance
The end result of the system implementation has been
validated using real-world test data. A set of 11 recorded
video sequences of a car ride of a total of 2 h has been used
as input for the road sign recognition system. The video set
is presented in Table 4.
The videos were filmed under various weather condi-
tions, at a variety of vehicle speeds, from sunrise to sunset.
The car speed reaches 120 km/h. An example frame from a
video is shown in Fig. 11. In this example, we see that the
road sign is initially captured with small dimensions and
gradually, as the car moves, the dimensions of the panel
become wider and the panel enters in the boundary area of
the region of interest (ROI).
The proposed system can operate at a range of vehicle
speeds and was tested under a variety of lighting and
weather conditions. To assess the performance of our
system, test image sets were collected from frames of road
video sequence.
This test set included many challenging images affected
by geometric distortion, blurring, deterioration, light con-
trasting and partial occlusion (see Figs. 12, 13, 14). No
preprocessing was applied to images. The images were
digitized and processed by the system without any
enhancements or improvements.
In Fig. 12, some case studies representing examples of
road sign scenes captured from sunrise to night are pre-
sented. In these cases, the system succeeded in the
Fig. 11 Example of an image-frame where the road sign is entering into the ROI window and its dimensions are changing to conform to the
detection criteria
Fig. 12 Examples of road sign
scenes: a scene acquired at
sunrise, b partially occulted and
partially shaded sign, c two
signs are present, where the
right one is detected first. The
red flags are excluded due to the
shape aspect ratio. d Multiple
back lighted signs, e well-
lighted scene by night and f a
shadowed road sign at sunset
J Real-Time Image Proc
123
detection and recognition processes. The images were
taken at different light conditions: back lighted at sunrise,
foggy, shadowed, sunny, cloudy, sunset, at night and light
contrasted signs.
Other cases are presented in Fig. 13. Figure 13a–d show
the same road sign at different light conditions. In a foggy
situation, the detection of the sign became difficult because
almost the entire image present a dominant red component.
Object extraction is then difficult if not impossible in this
case. In other lighting situations, we get correct colors and
it becomes easy to separate objects by colors. Signs under
the shadow are detected almost in the same way as the
well-lit sign (Fig. 13e). At night, the panels lit by street
lighting (Fig. 13h) or vehicle headlights (Fig. 13f) are
detected, while the panels in the dark (Fig. 13g) are not.
Other cases cause the system to fail in the stages of
detection or recognition of the road signs (see Fig. 14). In
Fig. 14a, the sign is far away from the vehicle and its
dimensions are small even though the vehicle is moving,
therefore it is rejected by the algorithm. A sign may be
located outside of the ROI boundary box as in Fig. 14b.
Thin panel borders and/or partially occulted or blurred ones
cause failure detection (Fig. 14c, d, f). When the aspect
ratios are not met; as in the case of non-concerned-by
signs; then the sign is positively undetectable (Fig. 14e).
By comparing the performance of the developed system,
presented in Table 3, we can conclude that the system has
similar performance for both the detection speed as well as
the recognition rate.
5 Conclusions
This study deals with the hardware implementation of a
system that can be used for automatic road sign detection
and recognition. The application is quite interesting
because it saves human lives on the road, and is very useful
when implemented in an embedded system. Since the
Fig. 13 a Detection fails due to fog, b successful detection of the
same panel digitized at sunrise, c midday, and d sunset. e Panels with
contrasting light: the one on the left is well lit while the one on the
right is shaded: detection succeeded. f–h By night, lit signs are
detected while g poorly lit ones are not
Fig. 14 Detection fails: a the
object is too small, b the sign is
outside of the ROI box, c border
width is insufficient, d blurred
images are misclassified, e the
sign pictogram does not meet
aspect ratio: case of a sign
which does not concern the
driver. f Blurred and partially
occulted sign is not detected
J Real-Time Image Proc
123
lighting conditions and the acquired images are random,
the processing algorithm needs to be robust and efficient.
The acquired image is transformed into the HSV space
and then segmented and filtered with a median filter. Two
neural networks are then used for detection and recogni-
tion. The first one determines the shape of the sign: cir-
cular, triangular, ‘give way’ panel shape or stop panel
shape. Its outputs are used to activate a corresponding
ROM memory which contains the associated synaptic
weight values. A second neural network tries to recognize
the content of the detected images.
To optimize the architecture of each network, neurons
are arranged in a parallel fashion while the inputs are
serialized. The system was implemented on a Virtex 4
FPGA clocked at a speed of 88 MHz. The recognition rate
achieved by the system was around 82 %, which is quite
satisfactory. Tested with a moving car at a speed of
120 km/h, the resolution of the system was about 64 m.
References
1. de la Escalera, A., Armingol, J.M., Mata, M.: Traffic sign rec-
ognition and analysis for intelligent vehicles. Image Vis. Comput.
21, 247–258 (2003)
2. Broggi, A., Cerri, P., Medici, P., Porta, P.P., Ghisio, G.: Real time
road signs recognition. In: IEEE Intelligent Vehicles Symposium,
Istanbul, Turkey, June 13–15, 2007, pp. 981–986
3. Koschan, A., Abidi, M.: Digital color image processing. Wiley
Interscience Publication, Canada (2000)
4. de la Escalera, A., Armingol, J.M., Pastor, J.M., Rodrıguez, F.J.:
Visual sign information extraction and identification by deform-
able models for intelligent vehicles. IEEE Trans. Intell. Transp.
Syst. 5(2), 57–68 (2004)
5. de la Escalera, A., Moreno, L.E., Salichs, M.A., Armingol, J.M.:
Road traffic sign detection and classification. IEEE Trans. Ind.
Electron 44(6), 848–859 (1997)
6. Fanga, C.Y., Fuhb, C.S., Yena, P.S., Cherngc, S., Chen, S.W.: An
automatic road sign recognition system based on a computational
model of human recognition processing. Comput. Vis. Image
Underst. 96, 237–268 (2004)
7. Fang, C.-Y., Chen, S.-W., Fuh, C.-S.: Road-sign detection and
tracking. IEEE Trans. Veh. Technol. 52(5), 1329–1341 (2003)
8. Bishop, C.M.: Neural networks for pattern recognition. Oxford
University Press, New York (1995)
9. Huang, C.-L., Hsu, S.-H.: Road sign interpretation using match-
ing pursuit method. In: 4th IEEE Southwest Symposium on
Image Analysis and Interpretation, 2–4 April 2000, Austin, USA,
pp. 202–206
10. Perez, E., Javidi, B.: Nonlinear distortion-tolerant filters for
detection of road signs in background noise. IEEE Trans. Veh.
Technol. 51(3), 567–576 (2002)
11. Samet, H., Tamminen, M.: Efficient component labeling of
images of arbitrary dimension represented by linear bintrees.
IEEE Trans. Pattern Anal. Mach. Intell. 10(4), 579–586 (1988)
12. Ohara, H., Nishikawa, I., Miki, S., Yabuki, N.: Detection and
recognition of road signs using simple layered neural networks.
In: Proceedings of the 9th International Conference on Neural
Information Processing (ICONIP’02), Singapore, vol. 2, 18–22
Nov. 2002, pp. 626–630
13. Fleyeh, H.: Color detection and segmentation for road and signs.
In: Proceedings of the 2004 IEEE Conference on Cybernetics and
Intelligent Systems, Singapore, 1–3 December 2004, pp. 809–814
14. Torresen, J., Bakke, J.W., Sekanina, L.: Efficient recognition of
speed limit signs. In: 2004 IEEE Intelligent Transportation Sys-
tems Conference, Washington, D.C., USA, October 3–6, 2004,
pp. 652–656
15. Egmont-Petersen, M., de Ridderb, D., Handels, H.: Image pro-
cessing with neural networks—a review. Pattern Recognit.
35(10), 2279–2301 (2002)
16. Riaz, M., Kang, G., Kim, Y., Pan, S., Park, J.: Efficient image
retrieval using adaptive segmentation of HSV color space. In:
International Conference on Computational Sciences and Its
Applications ICCSA 2008, Perugia, Italy, June 30–July 3, 2008,
pp. 491–496
17. Ozden, M., Polat, E.: A color image segmentation approach for
content-based image retrieval. Pattern Recognit. 40, 1318–1325
(2007)
18. Barnes, N., Zelinsky, A., Fletcher, L.S.: Real-time speed sign
detection using the radial symmetry detector. IEEE Trans. Intell.
Transp. Syst. 9(2), 322–332 (2008)
19. Paclik, P., Novovicova, J., Pudil, P., Somol, P.: Road sign clas-
sification using Laplace kernel classifier. Pattern Recogn. Lett.
21, 1165–1173 (2000)
20. Douville, P.: Real-time classification of traffic signs. Real Time
Imaging 6, 185–193 (2000)
21. Dahyot, R., Charbonnier, P., Heitz, F.: Robust visual recognition
of colour images. In: IEEE International Conference of Computer
and Vision Pattern Recognition, CVPR 2000, Hilton Head Island,
USA, vol. 1, 13–15 June 2000, pp. 685–690
22. Vicen-Bueno, R., Gil-Pita, R., Jarabo-Amores, M.P. L’opez-
Ferreras, F.: Complexity reduction in neural networks applied to
traffic sign recognition tasks. In: 13th European Signal Processing
Conference EUSIPCO 2005, Antalya, Turkey, September 4–8,
2005
23. Gonzalez, R.C., Woods, R.E.: Digital image processing, 2nd edn.
Prentice Hall, Upper saddle river (2002)
24. Lukac, R., Plataniotis, K.N.: Color image processing: methods
and applications. CRC Press/Taylor & Francis, Boca Raton
(2007)
25. Escalera, S., Radeva, P.: Fast greyscale road sign model matching
and recognition. In: Vitria, J., et al. (eds.) Recent Advances in
Artificial Intelligence Research and Development, pp. 69–76.
IOS Press, Amsterdam (2004)
26. Hsu, S.-H., Huang, C.-L.: Road sign detection and recognition
using matching pursuit method. Image Vis. Comput. 19, 119–129
(2001)
27. Maldonado-Bascon, S., Lafuente-Arroyo, S., Gil-Jimenez, P.,
Gomez-Moreno, H., Lopez-Ferreras, F.: Road-sign detection and
recognition based on support vector machines. IEEE Trans. Intell.
Transp. Syst. 8(2), 264–278 (2007)
28. Zin, T.T., Hama, H.: Robust road sign recognition using standard
deviation. In: 2004 IEEE Intelligent Transportation Systems
Conference, Washington, D.C., USA, October 3–4 2004,
pp. 429–434
29. Acharya, T., Ray, A.K.: Image processing principles and appli-
cations. Wiley Interscience, New Jersey (2005)
30. Vitabile, S., Gentile, A., Sorbello, F.: A neural network based
automatic road signs recognizer. In: International Joint Confer-
ence on Neural Networks, IJCNN ‘02, 12–17 May 2002, Hono-
lulu, HI, USA, vol. 3, pp. 2315–2320
31. Wen, W., Chen, X., Yang, J.: Detection of text on road signs from
video. IEEE Trans. Intell. Transp. Syst. 6(4), 378–390 (2005)
J Real-Time Image Proc
123
32. Gao, X.W., Podladchikova, L., Shaposhnikov, D., Hong, K.,
Shevtsova, N.: Recognition of traffic signs based on their colour
and shape features extracted using human vision models. J. Vis.
Commun. Image Represent. 17(4), 675–685 (2006)
33. Gao, X.W., Podladchikova, L., Shaposhnikov, D., Hong, K.,
Shevtsova, N.: Recognition of traffic signs based on their colour
and shape features extracted using human vision models. J. Vis.
Commun. Image Represent. 17, 675–685 (2006)
34. Nguwi, Y.-Y., Kouzani, A.Z: Automatic road sign recognition
using neural networks. In: International Joint Conference on
Neural Networks, Vancouver, Canada, July 16–21, 2006,
pp. 3955–3962
35. Lauziere, Y.B., Gingras, D., Ferrie, F.P.: A model-based road
sign identification system. In: IEEE Computer Society Confer-
ence on Computer Vision and Pattern Recognition, 8–14
December 2001, Kauai, Hawaii, vol. 1, pp. 1163–1171
36. Shuang-dong, Z., Yi, Z., Xiao-feng, L.: Detection for triangle
traffic sign based on neural network. In: IEEE International
Conference on Vehicular Electronics and Safety, 14–16 October
2005, Xi’an, China, pp. 25–28
37. Inland transport committee, Convention on road signs and sig-
nals. Economic commission for Europe, Vienna, 8 November
1968 (E/CONF.56/17/Rev.1/Amend.1)
38. Mussi, L., et al.: GPU implementation of a road sign detector
based on particle swarm optimization. J. Evol. Intell. 3, 155–169
(2010)
39. Laganiere, R.: Opencv 2 computer vision application program-
ming cookbook. Packt Publishing, Birmingham (2011)
40. Opel insignia http://com.opel-microsites.com/insignia/
41. Volkswagen phaeton http://en.volkswagen.com/en/models/phaeton
42. Park, J. et al.: A 92mW real-time traffic sign recognition system with
robust light and dark adaptation. IEEE Asian Solid-State Circuits
Conference, Jeju, Korea, November 14–16, 2011, pp. 397–400
43. Zaklouta, F., Stanciulescu, B.: Real-time traffic sign recognition in
three stages. Robot. Auton. Syst. (2012). doi:10.1016/j.robot.
2012.07.019
44. Prieto, M.S., Allen, A.R.: Using self-organising maps in the
detection and recognition of road signs. Image Vis. Comput. 27,
673–683 (2009)
45. Stallkamp, J., Schlipsing, M., Salmen, J., Igel, C.: Man vs.
computer: Benchmarking machine learning algorithms for traffic
sign recognition. Neural Netw. 32, 323–332 (2012)
46. Chen, C.-L., Tai, C.-L.: Adaptive fuzzy color segmentation with
neural network for road detections. Eng. Appl. Artif. Intell. 23,
400–410 (2010)
47. Muller, M., Braun, A., Nienhuser, D., Zollner, J.M.: Design of an
automotive traffic sign recognition system targeting a multi-core
SoC implementation. In: Design, Automation and Test in Europe
Conference and Exhibition (DATE), 8–12 March 2010, Dresden,
Germany, pp. 532–537
48. Mobileye http://www.mobileye.com/technology/applications/
traffic-sign-detection/
49. Torresen, J., Bakke, J.W., Sekanina, L.: Recognizing speed limit
sign numbers by Evolvable Hardware. In: 8th International
Conference, Birmingham, UK, September 18–22, 2004,
pp. 682–691
50. Par, K., Tosun, O.: Real-time traffic sign recognition with map
fusion on multicore/many-core architectures. Acta Polytechnica
Hungarica J. Appl Sci. 9(2), 231–250 (2012)
51. Irmak, H.: Real-time traffic sign recognition system on FPGA.
Thesis, Middle East Technical University, Ankara, September
2010
Author Biography
Chokri Souani received the PhD degree in electronics and Micro-
electronics from the Faculty of Sciences of Monastir (Tunisia) in
2000. He was the vice-director of the High Institute of Applied
Sciences and Technology of Sousse in 2006. He was also the Director
of the Studies and the Trainings at the High Institute of Applied
Sciences and Technology of Sousse (Tunisia) in 2006–2007. Since
2010, he is an Associate Professor in the cited institute and a
permanent member in the Microelectronics and Instrumentation Lab
in the Faculty of sciences of Monastir. His current research interests
include: VLSI implementation of digital signal algorithms, co-design
and high-level synthesis, rapid prototyping and FPGA, Microproces-
sors and Microsystems, wavelets, image and video compression,
neural networks and transmission, UAV and computer vision.
J Real-Time Image Proc
123