Efficient algorithm for automatic road sign recognition and its hardware implementation

15
SPECIAL ISSUE PAPER Efficient algorithm for automatic road sign recognition and 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

Transcript of Efficient algorithm for automatic road sign recognition and its hardware implementation

Page 1: 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

Page 2: Efficient algorithm for automatic road sign recognition and its hardware implementation

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

Page 3: Efficient algorithm for automatic road sign recognition and its hardware implementation

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

Page 4: Efficient algorithm for automatic road sign recognition and its hardware implementation

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

Page 5: Efficient algorithm for automatic road sign recognition and its hardware implementation

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

Page 6: Efficient algorithm for automatic road sign recognition and its hardware implementation

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

Page 7: Efficient algorithm for automatic road sign recognition and its hardware implementation

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

Page 8: Efficient algorithm for automatic road sign recognition and its hardware implementation

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

Page 9: Efficient algorithm for automatic road sign recognition and its hardware implementation

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

Page 10: Efficient algorithm for automatic road sign recognition and its hardware implementation

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

Page 11: Efficient algorithm for automatic road sign recognition and its hardware implementation

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

Page 12: Efficient algorithm for automatic road sign recognition and its hardware implementation

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

Page 13: Efficient algorithm for automatic road sign recognition and its hardware implementation

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

Page 14: Efficient algorithm for automatic road sign recognition and its hardware implementation

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

Page 15: Efficient algorithm for automatic road sign recognition and its hardware implementation

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