Professional Documents
Culture Documents
ScienceDirect
IFAC-PapersOnLine 48-10 (2015) 016–021
Embedded Image Processing Systems
Embedded Image Processing Systems
for Automatic
Embedded
Embedded Recognition
Image Processing
Image of Cracks
Processing using UAVs
Systems
Systems
for Automatic Recognition of Cracks using UAVs
for
for Automatic
Automatic Recognition
Recognition of of Cracks
Cracks using
using UAVs
UAVs
Fábio Celestino Pereira, Carlos Eduardo Pereira
Fábio Celestino Pereira, Carlos Eduardo Pereira
Fábio
Federal University
Fábio Celestino
of Rio Grande Pereira,
Celestino Carlos
Carlos Eduardo
do Sul - UFRGS/
Pereira, Pereira
DELET -Av.
Eduardo Osvaldo Aranha, 103
Pereira
Federal University of Rio Grande do Sul - UFRGS/ DELET -Av. Osvaldo Aranha, 103
Federal
Federal University
CEP: 90035-190 of
of Rio
- Porto Alegre,
University Grande
RioRS do
– Brazil
Grande Sul
Sul -- UFRGS/
UFRGS/ DELET
DELET -Av.
-Av. Osvaldo
do (e-mail:fabio.celestino@ufrgs.br, Aranha,
Aranha, 103
cpereira@ece.ufrgs.br)
Osvaldo 103
CEP: 90035-190 - Porto Alegre, RS – Brazil (e-mail:fabio.celestino@ufrgs.br, cpereira@ece.ufrgs.br)
CEP:
CEP: 90035-190
90035-190 -- Porto
Porto Alegre,
Alegre, RS
RS –– Brazil
Brazil (e-mail:fabio.celestino@ufrgs.br,
(e-mail:fabio.celestino@ufrgs.br, cpereira@ece.ufrgs.br)
cpereira@ece.ufrgs.br)
Abstract: Aiming at the use of Unmanned Aerial Vehicle (UAV) in civil construction for autonomous
Abstract:
inspection Aiming of building at thepathologies,
use of Unmanned this paper Aerial Vehicle some
discusses (UAV)implementation
in civil construction for autonomous
alternatives of image
Abstract:
inspection
Abstract: Aiming
of
Aiming at
building
at the
the use
use of
pathologies,
of Unmanned
Unmannedthis Aerial
paper
Aerial Vehicle
discusses
Vehicle (UAV)
some
(UAV)
processing algorithms for the detection of cracks in building facades. These algorithms should in civil
implementation
in civil construction for
for autonomous
alternatives
construction of
runimage
autonomous
in an
inspection
processing
inspection of
of building
algorithms
building pathologies,
for the detection
pathologies, this
thisof paper
cracks
paper discusses
in building
discusses some
facades.
some
embedded computing platform installed on UAVs. Two image processing algorithms for crack detection implementation
These
implementation alternatives
algorithms should
alternatives of
run
of image
in an
image
processing
embedded
processing
and algorithms
computing
algorithms
classification were for the
the detection
platform
forselected installed
detection of
ofoncracks
and different UAVs.
cracks in building
inTwo image
building
embedded facades.
processing
facades.
system These
These
implementationsalgorithms
algorithms
algorithms forshould
crack
should
were run in
in an
detection
run
evaluated. an
A
embedded
and
embedded
version computing
classification
computing
of the were
algorithms platform
selected
platform
running installed
anda Matlab
installed
in on
differentUAVs.
on UAVs. Two
embedded image
Two image
environment system
on processing
aprocessing
desktop algorithms
implementations
algorithms
computer, for
were
which crack detection
evaluated.
for crack
can bedetection
used in A
and
versionclassification
andapproach
an of theonalgorithms
classification whichwere
were theselected
running
selected and
in
image processing different
anda Matlab
different embedded
is environment
embedded
done system
on a desktop
system
in the ground and implementations
thecomputer,
implementations
UAV is only were
which
were
appliedevaluated.
can be
forused
evaluated.
image A
in
A
version
an of
approach
version of the
acquisition, theon
was algorithms
which
algorithms the running
image
used as arunning in
baselineinfor a Matlab
processing
a Matlab is environment
done in
environment
the comparison. the on
grounda desktop
and
Thisonbaseline
a desktop the computer,
UAV is
computer, with
is compared which
only
which can
applied be
forused
image
can be used in
implementations in
an
an approach
acquisition,
approach
running on an on
was which
used as
on embedded
which the
thea image
baseline
image
processor processing
for
(a the
processing is
is done
comparison.
Raspberry donePI, in
in the ground
This
the
running and
and the
baseline
ground UAV
is compared
the
a distribution UAV of is only
withapplied
isDebian
only ARM for image
implementations
applied for image
operating
acquisition,
running
acquisition,
system) on was
an
and was used
embedded
withused as a baseline
processor
as a baselineon
implementations for
(a the
fora the comparison.
Raspberry
comparison.
Xilinx PI,
FPGA-board This
running baseline
a
Thisinstalled is
distribution
baselineinis the compared
comparedof with
Debian implementations
ARM operating
with implementations
UAV. Different scenarios for
running
system)
running
the on
on an
and
execution an ofembedded
withembedded
inspection processor
aimplementations
processor
task of (a
(aa Raspberry
onbuilding
Xilinxfacades
Raspberry PI,
FPGA-board running
PI, were
running aa distribution
installed
defined in the
distribution
and UAV.of
of Debian
the obtained Different
Debian
resultsARM
ARM operating
scenarios
are operating
presentedfor
system)
the
system)
in the paper.and
execution
and with
of
with aimplementations
inspection
implementations task ofon
on a
a Xilinx
building
Xilinx FPGA-board
facades
FPGA-boardwere installed
defined
installed andin
in the
the
the UAV.
obtained
UAV. Different
results
Different scenarios
are presented
scenarios for
for
the
in
thetheexecution
paper. of
execution of aa inspection
inspection task task ofof building
building facades
facades werewere defined
defined and and thethe obtained
obtained results
results areare presented
presented
in
in the
the paper.
Keywords: paper.Unmanned Aerial Vehicle, Image Processing , Embedded System, Cracks detection.
© 2015, IFAC
Keywords: (International
Unmanned Aerial Federation
Vehicle, of ImageAutomatic Control)
Processing Hosting bySystem,
, Embedded ElsevierCracks
Ltd. All rights reserved.
detection.
Keywords: Unmanned Aerial Vehicle, Image Processing
Keywords: Unmanned Aerial Vehicle, Image Processing , Embedded System, Cracks detection., Embedded System, Cracks detection.
performing the image analysis during the flight may common pathological manifestations found in facades with
introduce greater intelligence to the system in order to coatings mortars are the cracks.
automate the interpretation of these images producing
important data for certain application. Cracks in mortar lining are related to several factors,
among them retraction, thermal expansion and variation can
Among the aspects that impact the use of RUAVs in be highlighted. Cracks can be caused by excessive loads,
particular applications one can mention their capacity of restrained expansion, unaccommodated contraction,
flying autonomously, the maximum flight duration (which excessive deflection of the supporting structure, weathering,
restricts the distance to be traveled), maximum carried load incompatibility of materials, poor workmanship, vibration,
(which directly impacts the maximum flight duration), frame movement, foundation movements, and chemical
between other factors. change [GRIMM 1997]. The study of these causes is very
important to understand the reason of cracks in buildings.
To allow their autonomous operation in open areas UAVs These cracks allow the penetration of external aggressive
embedded electronics usually include a navigation system agents, including water, which can lead to the appearance of
with Global Positioning System (GPS) as the primary means new pathological manifestations [RICHTER at ali. 2008].
of positioning and reference. For indoor operation where the Continuous walls (walls without openings) are not only the
reference of the GPS signal is not possible, studies have been most sensitive part of the façade, but also the place where the
done for the use of other positioning strategies, such as the highest levels of degradation are more easily found.
use of images captured by the camera as an aid in navigation Statistically, cracking (due to differential movements or due
path, landing and take-off and to avoid collision with to mortar retraction) and damp patches (namely revealing the
obstacles [WANG 2007] [LANGE 2009][JENSENA 2010]. pattern of the brickwork under the lining) represent almost
In civil engineering, studies of building pathologies are of two thirds of the problems on continuous walls. [GASPAR el
great importance, because the occurrence of pathological ali. 2005]
manifestations may have severe consequences and even lead Fig.2 illustrates some of the mortar cracks that may be
to the collapse of buildings [HARRIS 2001]. Cracking may found in facades. In the proposed work, the analysis is
impair the durability of concrete by allowing immigration of performed on algorithms for specific detection of cracks in
external aggressive agents; therefore, crack monitoring is masonry walls, composed of mortar between bricks or blocks
always a vital part in building pathology [SHAM 2008]. Such used for structural function or not, and coated with mortar. It
applications usually require the analysis of areas of difficult is assumed that is possible to collect images with good
access, located at high altitude. Therefore, the observation of lighting conditions as required by the correct processing by
these manifestations can become arduous, and the image processing algorithms. That means, it is considered
professional needs to use scaffolding or platforms to be able that it’s not necessary that the UAV carry any lighting
to access these regions. These are things that make the equipment, which would impact negatively on the autonomy
analysis more time-consuming, not to mention the safety time of the UAV flight, either by increased load or by the
requirement that should also be taken into consideration. consumption of battery power for the lighting actuation.
The use of UAVs to capture images in the civil
construction for further processing via software has been the
subject of some research papers lately [ESCHMANN 2012].
However, most of these studies don’t address the
development of embedded systems to process these images
during the flight. The purpose of this paper is to investigate
different alternatives for image processing systems to be
embedded on UAVs for automatic detection of cracks in
building facades, specifically the cracks in coatings mortars.
This paper is divided as follows: section 2 gives an
overview on pathological manifestation in buildings and
section 3 presents some image processing algorithms used in
inspection of civil engineering artifacts. Section 4 discusses
some possible alternatives for embedded image processing to Fig. 2 – Examples of cracks found in facades
be installed on UAVs and compares the results of the As depicted in Fig. 2 – different kinds of cracks can be
implementation of some of these architectures. Section 5 identified in facades: horizontal cracks, vertical cracks,
draws the conclusions and signals future work directions. cracks at 45 degrees, map-like cracks, stair-like crack, wider
2. PATHOLOGICAL MANIFESTATIONS crack, among others. Each one represents an effect caused by
problems during execution or during and subsequent climatic
The pathological manifestations are caused by many effects. There are also cracks located near the frames with
reasons, and most of these problems arise during the lifetime very specific characteristics, which are not considered in this
of the building resulting both from wrong decisions during work.
project design or during construction. One of the most
17
CESCIT 2015
June 22-24, 2015. Maribor, Slovenia Fábio Celestino Pereira et al. / IFAC-PapersOnLine 48-10 (2015) 016–021
18
18
CESCIT 2015
June 22-24, 2015. Maribor, Slovenia Fábio Celestino Pereira et al. / IFAC-PapersOnLine 48-10 (2015) 016–021 19
which don’t represent a crack. Through the characteristics of The desktop in the ground station can either be executing
the crack, conducted by the description of the object, it is the image processing algorithms over a Matlab runtime or as
possible to discard these points. C++ code running on top of a Linux-based OS.
3.2 Algorithm Based on Particle Filter In Scenario B the UAV is equipped with an onboard
Raspberry-PI processor with the embedded image processing
The second selected algorithm is a non-parametric filter algorithms running on it and in this case the crack detection
based on Bayes algorithm, the Particle Filter [THRUN 2006]. can be performed during the flight.
The particle filter seeks to relate the probability of an image
segment to be characterized or not by a crack, based on pixel In the last scenario C, the UAV is equipped with a FPGA-
board on which the generated C / C++ program is ported to a
intensity and on the number of pixels in its neighborhood.
FPGA-Board with a Microblaze soft processor and OS
The Particle Filter algorithm proposed in [Furtado 2012], support (scenario C).
which was conceived to the detection of underwater cracks,
In Scenario A the desktop can process larger images (for
was adapted to enable the automatic conversion of code
instance 5 megapixel images with the size of 2592 x 1944
without changing its fundamental characteristics.
pixels), however in case the images are to be transferred via a
This algorithm delivered around 74% accuracy in wireless link to the ground station (scenario A2) larger image
detection of the cracks in the analyzed samples for the sizes can become a problem due to the required transmission
considered parameters, but the method is susceptible to false time from the UAV to the ground station. Therefore in this
positives because it does not consider the pattern case two different image sizes were considered: 5 and 1
characteristics of a crack. Fig. 5 presents the image with the megapixels images.
detection points more likely region of the crack.
The initial idea was to generate the C / C++ and the
VHDL code using the corresponding MATLAB toolboxes –
CODEGEN C and CODEGEN HDL, in order to ensure the
same base code. However, in the CODEGEN version used in
this work most of the Matlab functions used within the
Matlab Image Processing Toolbox were not available in the
code generation tool. Therefore, those functions were
manually coded to the target programming languages (C++).
Additionally, to ensure an appropriate code generation for
each language some changes in the original code had to be
introduced. A comparison of the generated code in terms of
lines of code and size of the generated executable code can be
seen in Table I.
Fig. 5– Crack detection using a Particulate Filter.
Table I – Algorithms comparison (LOC and size)
4. DESIGN SPACE EXPLORATION
Lines of Executable
Environments code (LOC) file (bytes)
Design space exploration refers to the activity of
exploring design alternatives in order to identify the Matlab Code on Desktop Computer With
Image Processing Toolbox of MATLAB - 118 3.977
alternative that better fulfill the application requirements. In Algorithm Particle Filter
this work, following implementation alternatives were Matlab Code on Desktop Computer Without
compared: i) coding the image processing algorithms in Image Processing Toolbox of MATLAB - 392 21.882
Matlab and execute them in a Matlab runtime environment Algorithm Sobel
for a desktop computer (which will be located in a ground C-C++ Code on Desktop Computer with
Linux-based OS - Algorithm Sobel 2607 152.963
station, that means, it is not installed on the UAV because of
its high energy consumption and weight); ii) to generate a C / C-C++ code on Raspberry-PI with Linux-
Based OS - Algorithm Sobel 2607 153.885
C++ program from the Matlab code and execute it on a
runtime environment with Linux support; iii) to generate a
In implementing the program in the proposed device, the
VHDL version of the most time consuming parts of the
algorithms in order to assess the speed-up that can be behaviors of the two algorithms were similar to the
obtained running this code on a FPGA-Board. These simulation environment. In the temporal analysis were used a
implementations could be used in the following application set of 48 images of 1 Megapixel with dimensions 1024 x 768
scenarios. Scenario A: the UAV is only used to perform data and 58 images of 5 Megapixels with dimension of 2592 x
acquisition and storage and image processing is performed by 1944, both with facade cracks images. Table II presents the
a desktop computer in the ground station. This scenario can average time and standard deviation in the execution time of
be sub-divided into different sub-scenarios. One on which the the image processing algorithms for 1 Megapixels images in
UAV stores all images and fly back to the ground station to both plataforms.
download them for further processing (scenario A1) and
another on which the UAV may transfer the acquired images
via a wireless link to the ground station (scenario A2) .
19
CESCIT 2015
June 22-24, 2015. Maribor, Slovenia Fábio Celestino Pereira et al. / IFAC-PapersOnLine 48-10 (2015) 016–021
20
20
CESCIT 2015
June 22-24, 2015. Maribor, Slovenia Fábio Celestino Pereira et al. / IFAC-PapersOnLine 48-10 (2015) 016–021 21
target application (total required execution time greater than LANGE, S.; S¨UNDERHAUF, N.; PROTZEL, P. A Vision Based Onboard,
Approach for Landing and Position Control of an Autonomous Multirotor
UAV´s battery duration). Due to the amount of memory
UAV in GPS-Denied Environments. 2009. Advanced Robotics, 2009. ICAR
required by the complete set of images to be analysed, the 2009. 22-26 June 2009 Page(s): 1 - 6.
alternative of transmitting the images from the UAV to the
ground station via a wireless link also took much longer time ESCHMANN, C. ; KUO, C.-M.; KUO C.-H.; BOLLER, C. Unmanned
Aircraft Systems for Remote Building Inspection and Monitoring. 6th
than allowed by the application. An interesting alternative European Workshop on Structural Health Monitoring - Th.2.B.1, July 3 -6
seems to be is the use of particle filter embedded to a 2012 – Germany
preliminary detection of crack delivering the image to the
GASPAR P.; BRITO J. Mapping defect sensitivity in external mortar
algorithm sobel operator to confirm the presence of the crack
renders. Elsevier. 2005. Construction and Building Materials. Volume 19,
and obtaining the description of data. Issue 8, October 2005, Pages 571–57
21