Rochester Institute of Technology
RIT Scholar Works
Theses
Thesis/Dissertation Collections
2007
Vision based localization of mobile robots
Jason Mooberry
Follow this and additional works at:
http://scholarworks.rit.edu/theses
This Thesis is brought to you for free and open access by the Thesis/Dissertation Collections at RIT Scholar Works. It has been accepted for inclusion
in Theses by an authorized administrator of RIT Scholar Works. For more information, please contact
Recommended Citation
Vision Based Localization
of Mobile Robots
Jason Mooberry
August 2007
Golisano College of Computing
&
Infonnation Sciences
Rochester Institute of Technology
Zach Butler
0·Y~7
Roxanne Canosa
F"!)..J!OI
Table
of
Contents
Abstract
1
1
Introduction
1
1.1
Localization
1
1.1.1 Localization
withKalman Filters
1
1.1.2
Markov Localization
2
1.1.3 Monte Carlo Localization
2
1
.1
.4Vision
Based Localization
3
1
.2Architecture
3
1.2.1
Deliberative
3
1.2.2 Reactive
4
1.2.3 Behavioral
4
1.2.4 Hybrid
4
2 Monte Carlo Localization
5
2.1 Motion Model
6
2.2 Sensor Model
6
3 Vision Based MCL
7
3.1 Research Platform
7
3.2 Motion Estimation
8
3.2.1 Environment
8
3.2.2 Rotation Error
Modeling
8
3.2.3 Translation Error
Modeling
1 1
3.2.4 Application
ofMotion Model
14
3.3 Sensor Model
15
3.3.1 Naive
Correlation
withColor Histograms
15
3.4
Resampling
20
3.5 Localization Architecture
21
3.6 Trials
22
3.6.1 Success Indicators
22
3.6.2 Position
Tracking
23
3.6.3 Global Localization
30
3.6.4 Kidnapped Robot
33
3.6.5 Further Observations
33
4 Refined Vision Based MCL
36
4.1 Motion Model
36
4.2 Sensor Model
36
4.2.1 Image
Smoothing
36
4.2.2 Edge Detection
39
4.2.3 Blended Features
43
4.2.4 Reference Image Selection
45
4.3
Reseeding
46
5 Conclusion
52
6 References
54
Appendix A
-Hardware Specification
56
Appendix
B
-Software Specification
61
Software Overview
61
Architecture
61
Behaviors
62
Collision
Avoidance
62
Wandering
63
Teleoperation
63
Localization
63
Planner
63
Framework
63
Arbiter
63
Motion
64
Vision
64
Feature
Database
64
Appendix
C
-Graphical
User Interface
65
Appendix
D
-Software
Table
of
Figures
Figure
1:
MCL
operation5
Figure
2: Maurice
therobot7
Figure 3: Arena
map
8
Figure
4: Degrees
rotated,
as measuredby
therobot and actual9
Figure 5: Error
as afunction
of actual rotation9
Figure 6:
Application
of skid-steer correction constant10
Figure 7: Error
remaining
afterincorporation
of skid-steer constant10
Figure 8:
Histogram
of residual error1 1
Figure 9:
Straight line
motion errors12
Figure 10:
Heading
errorresulting from
straightline
movement12
Figure 11: Error
distribution
13
Figure 12:
Motion
model appliedtogeneric positiontracking
task14
Figure 13:
Sample image
usedtocalculate noisebias
16
Figure
14: Color
histogram
noisefloor
16
Figure 15: Maximum
valuesby
bin,
across entireimage
library
17
Figure 16:
Sample
image
18
Figure 17: Naive
correlation matchquality,bin based
differencing
18
Figure 18: Sample
naivecorrelation,best
matches18
Figure 19:
Sampled image
19
Figure
20: Reference entry
19
Figure
21:
Comparison
of sample and referenceimage
19
Figure 22: Sample
difference
measure19
Figure 23: Adjusted
referencehistogram
20
Figure 24: Position
tracking
trialpath23
Figure 25: Position
tracking
trialresult24
Figure
26: Distance
traveledvs particle count,logarithmic
scale24
Figure 27: Distance
traveledvs particle count24
Figure
28: Average
error vs particles26
Figure 29: Error
per unitdistance;
26
Figure
30: Proportional
error26
Figure
31:
Position
inaccuracy
27
Figure
32: Positional uncertainty
27
Figure 33: Effect
ofadditionalmeasurements ondeviation
28
Figure 34: Imprecision
due
tosensormodelambiguity
29
Figure 35: Global localization
trial path30
Figure
36: Sample impoverishment
andoverly
optimistic motionmodel;31
Figure
37: Final
positional errorvsparticle count31
Figure 38: Distance
traveledvsparticlecount32
Figure 39: Time
tolocalize
33
Figure
40: Evolution
of robotposition estimate33
Figure 41: Sampled
vs referenceimages
34
Figure 42:
Sample
vsreference,histogram
shift34
Figure 43: Summation Histogram
35
Figure 47: Smoothed histogram
differencing
37
Figure 48: Sample image
correlationtoimage
library
38
Figure
49:
Sample image
correlationtoimage
library,
smoothing
incorporated
38
Figure
50:
Evolution
of particledeviation
39
Figure
51: Edge
data derived from
sample40
Figure
52:
Color histograms
of edgeimages
41
Figure
53: Edge
histogram
differencing
41
Figure
54: Best
matches across edgelibrary
41
Figure 55: Edge
data
correlation42
Figure 56: Evolution
of particledeviation
42
Figure
57: Blended
feature
correlation43
Figure
58: Evolution
of particledeviation
44
Figure
59: Error
vs particlecount,blended features
44
Figure 60: Error
vs particlecount, colorhistogram
44
Figure 61: Time
tolocalize,
blended
features
45
Figure 62: Time
tolocalize,
colorhistograms
45
Figure 63: Sample image
before
and afterintroduction
ofGaussian
noise47
Figure 64: Global
localization
run,20
particles47
Figure 65: Effect
of sensor aidedsampling
onprobability distribution
48
Figure 66: Positional uncertainty
49
Figure 67: Effect
of sensoraidedsampling
on positionalcertainty
49
Figure 68: Positional
certainty,by
sampling strategy
50
Figure 69: Kidnapped
robottrial50
Figure 70: Feature
extraction overhead51
Figure 71: Relative
feature
comparisontimes51
Figure 72: Single
localizer invocation CPU
time51
Figure 73: Histogram
shiftdue
tobrightness
changes53
Figure 74: Khepera II
robot56
Figure 75: K6300
matrixvisionturret56
Figure 76: Khepera II
hardware
specification56
Figure 77:
Chassis
withmotors andwheelsinstalled
57
Figure 78: Motor
controllerboard
57
Figure 79:
Quadrature
encoder57
Figure 80: IR proximity
sensorboard
58
Figure
81:
CMUCam2+58
Figure 82: Gumstix SBC
59
Figure 83:
RobostixI/O
board
59
Figure
84: NetCF
expansionboard
60
Figure 85: Gumstix block diagram
61
Figure 86: Robostix block
diagram
61
Figure 87: Control
architecture62
Abstract
Mobile
roboticsis
an active andexciting
sub-field ofComputer Science. Its
importance is
easily
witnessedin
avariety
of undertakingsfrom DARPA's Grand
Challenge
toNASA's
Mars
exploration program.The
field is relatively
young, andstillmany
challengesface
roboticists acrosstheboard.
One
important
areaof researchis
localization,
which concernsitself
withgranting
a robottheability
todiscover
andcontinually
update aninternal
representation ofits
position.Vision
based
sensor systemshave been
investigated
[8,22,27],
but
tomuchlesser
extentthanother populartechniques[4,6,7,9,10].
A
custom mobile platformhas been
constructed ontop
of whichamonocular vision
based localization
systemhas been implemented. The
rigorousgathering
ofempiricaldata
across alarge
group
ofparametersgermaneto theproblemhas led
tovariousfindings
about monocularvisionbased
localization
andthefitness
of thecustom robot platform.The
localization
componentis
based
ona probabilistictechniquecalledMonte-Carlo Localization
(MCL)
that tolerates avariety
ofdifferent
sensors andeffectors, andhas
further
proventobe
adept atlocalization
in diverse
circumstances.Both
amotionmodeland sensor modelthat
drive
theparticlefilter
atthe algorithm's corehave been
carefully derived. The
sensor model employs asimplecorrelation processthatleverages
color
histograms
and edgedetection
tofilter
robotpose estimationsviathe onboard
vision.This
algorithm relies onimage matching
to tuneposition estimatesbased
on a prioriknowledge
ofits
environmentin
theform
of afeature library. It is believed
thatleveraging
different computationally inexpensive features
canlead
toefficientandrobustlocalization
withMCL. The
centralgoal ofthis thesisis
toimplement
and arrive atsucha conclusionthrough the
gathering
of empiricaldata.
Section 1
presentsabrief
introduction
tomobile robotlocalization
and robotarchitectures,while section
2
coversMCL
itself in
moredepth. Section 3
elaborates on thelocalization
strategy,modeling
andimplementation
thatforms
thebasis
ofthe trialsthatarepresentedtoward the endofthatsection.
Section 4
presentsarevised1 Introduction
A
brief
treatmentof some relevant workin
the area oflocalization
is
givenbelow
in
section1.1. An
overview ofthevarious approachesto roboticarchitecturesfollows
in
section
1.2
toprovide perspective onthedifferent
methodologies availabletoanimplementation.
1.1
Localization
Localization
is
thescience ofdivining
a robot's positionrelativetosomeinternal
map.The map
representationis
usually dictated
by
theavailablesensing
hardware
therobothas
atits disposal.
The
field
oflocalization
canbe
summarized
by
threegeneral problem areas[10]. The
first,
positiontracking,
involves maintaining
relative positionalknowledge based
on aninitial
position.This
is
theeasiest ofthe three and concernsitself
solely
withcombating
theincremental build
up
oferrorsthroughouta robot'stravelsin its
environment.The
secondis harder
andis
referredtoas globallocalization. Global localization
is
theproblem ofdetermining
robot position with zeroconfidencein its initial
position.That
is,
no a prioriknowledge
otherthana map.The
third,
and mostdifficult
ofthethree,
is
thesotermedkidnapped-robot
problem.Here,
therobotmay be
movedtoanotherlocation
onits map
withoutwarning,despite
any
confidence
it
may have
acquired sinceinitially
starting
its
localization
task.As
one mightexpect, avariety
of methodshave been
putforth in
anattempt toaddressthevarious problems associatedwith
localization. Three
ofthe most popularareKalman
filter
based localization
[11],
Markov
Localization[5]
and
Monte-Carlo Localization[7]. At
their core,each ofthesemaintainprobabilistic approximations oftherobot's pose.
In
short, thisapproximationis
formed
recursively
by incorporating
odometry data (from
a motionmodel)
thatis
corrected
by
correlating
sensorreadings(from
a sensormodel)
thatare cohesivewithapriori
map data [7]. These
models attempttoquantify
thediscrepancies
between
actual andideal
readings.The
kinematics
ofthemobilerobot,(that
is,
how
effectoractivity
correspondsto movement),generally
areinsufficient
in
describing
actualrobotmotion.This
is due
to thesizabledifference
between
theodometry
readings andtheactualdistance
traversed,
causedby
wheel slippage,varying
terrain,
etc.The
motion model accommodatestheseerrorsby
taking
onaprobabilisticnature,
typically
Gaussian. The
sensormodel,in
a similarfashion,
captures errors specificto thetypeof sensorthatis
being
employed, thoughit
is
not oftenGaussian.
1.1.1 Localization
withKalman
Filters
The Kalman filter is
frequently
employedastheupdatestep
in
thepositionGaussian
distribution.
The
centralidea
is
tofind
theposition on apreprogrammedmap
thatmostlikely
matchesthesensor readingsbeing
takenat a giventime[17,10].
This
requires ahighly
accurate sensor modeltopreventmismatchesfrom
occurring.However,
theGaussian
belief
assumptionis
restrictive,astheposeuncertainty
is
representedas auniformdistribution
abouta single point.In
actuality,
therobotis
notlikely
tobe
ableto correctlyguessits
positionwhen presentedwithambiguous sensorreadings.Hence
Kalmanfilters fail
tolocalize
whenmultiple possible poses mustbe
tracked.Additionally,
therobot'sposition mustbe known
whenthe algorithminitializes (otherwise
thematching
cannot proceed),whichhas
seriousimplications
for
real robots.Multi-hypothesis
Kalman Filters
use multipleGaussians
(multi-modal)
to represent poseuncertainty[7].
Consequently,
thealgorithm cantrackmultiple possible robot positions andis
capableofsolving
thegloballocalization
problem.Though
this approach also suffersseverely if
thepositionaluncertaintycannotbe
modeledby
uniformGaussian distributions (which it
frequently
cannotbe).
1.1.2 Markov Localization
The
coreidea
ofMarkov
localization is
tousediscretizations
ofbelief
(normalized
histograms,
essentially), suchasoccupancy
grids[5,6]. This
is in
contrastto theunimodalGaussians
thatare usedin
Kalmanfilters. Since
the representation oftheprobability is only
restrictedby
thequantization oftheworld space, anarbitrary
number of robotpositionscanbe
tracked.Consequently
theglobal
localization
problemcanbe
solved,however,
variantsdiffer in
sensor updateimplementations
andbelief
representations.Though
in
some waysanimprovement
overKalman
filter based
localization,
Markov
localization
canbe
computationally infeasible
according
tohow
theworld spaceis
quantized.Should
high
positionalaccuracy be
required andtheworld spacebe
large,
difficulties
are certainto arise.1.1.3 Monte Carlo
LocalizationMonte Carlo Localization
modelstheprobability
density
as adiscrete
distribution
of weightedpose samples(in
lieu
ofa continuousrepresentation)
and relies onarecursiveBayesian
particlefilter
torefinethosepose estimations[6,7,10]. The
algorithmdoes
soby
degrading
samplesthatarenotcohesive with sensordata
whilereinforcing
samplesthatare.At
eachiteration
theparticles are regeneratedbased
onthecurrentweightings,lower
weighted particles areless
likely
tohave
a sample representthemin
thenext populationthanarethosewitharepresentation.
The MCL
algorithm'spotency
has led
toit
being
adoptedwidely
and adapted toavariety
ofdifferent
sensortypes.1.1.4 Vision Based
Localization
Most
localization
approachesdiscussed
gatherdistance data from
sensorsin
oneway
or anothertodrive localization
updates.With
visionas aprimary
sensorthisdata is
generally
obtainedby
way
ofstereoscopicimaging [20]
oris
augmentedby
other sensors such aslaser
range-finders[22]. Despite
interesting
workthatcalculatesdepth
information
by
tracking
features
[18],
distance
information
is unlikely
tobe
availablewith monocular vision.The
few
probabilistic
localization implementations
thatrely solely
onmonocular visionto senseleverage
feature matching
todrive
position updates[8].
Particularly
relevantto theproblem athand is
workdone
withintegrating
MCL
and aninvariant feature
histogram matching
algorithm[8]
(an invariant
feature is
onethatis
recognizabledespite
the targetfeature
having
undergone varioustransformations,
such asrotation,scaling
and zoom).This
algorithmforms
thecoreoftheMCL
update step,matching database images
tovisiondata
through
histograms
ofinvariant features. These histograms
thenin
turndrive
the pose correctionsby
way
of a normalizedintersection
operator.The
particle updatestep in MCL
usestheinvariant feature matching
stepsdescribed
aboveto compare a sampledand processedimage
withdatabase images. A visibility
regionis
appliedtoreducethecomplexity
ofthematching
task.Given
the particle's position on anauxiliary
map, aregiongrowing
algorithmis
appliedtodetermine
which picturesin
thedatabase
couldprovide reasonable matches.Images
takenoutsidethis area,or withtheincorrect
orientationaredisallowed in
the comparison.
1.2 Architecture
Four
main architectures[16]
have
historically
been
employedin
building
robotic systems:
deliberative,
reactive,behavioral
andhybrid. These
arebriefly
discussed in
thefollowing
sections.1.2.1 Deliberative
Deliberativearchitectures
generally follow
a sense-plan-act methodology.This usually
requiresthatacomplexinternal
representationoftheenvironmentbe
maintained.As
new sensorinformation
arrives,it is integrated into
thisintegrating
sensory
information into
a worldmodel coupled withthedecision
making
processprohibits rapid responses.1.2.2 Reactive
Reactive
architectures aretheantithesis ofthe older,deliberative
paradigm.
The
central argumentis
that theworldis
its
ownbest
model, andthatintelligent
behavior
arises out ofthedynamical
relationshipbetween
arobotandthatworld.
The
intent
is
topurgetheroboticsystemofany internal
representations and
rely entirely
onlow
level
responses tobuild functionality.
The
systemis less
likely
tobe deceived
by
a prioriknowledge
thatis
notcohesivewiththesensed environment.
Though
this architecturecanbe
appliedtobuild
a responsivesystem,it
is difficult
toinfuse
macrolevel behavior.
1.2.3 Behavioral
This
approachdictates
thateverything in
thesystembe
decomposed
atthebehavior
level,
instead
of atthefunctional level
[1,
12]. That
is,
reasoning, pathplanning, perception,etc... arethe
responsibility
of eachbehavior in
thesystemtoimplement
(or not)
asthey
seefit. Contrast
thiswithhaving
a singleglobalmodulethatperforms each oftheaforementionedtasks.
This
grants alarge degree
of robustnessto the architecture, asbehaviors
aregenerally
notdependent
on each other.The
problemwiththis approachis in engineering high level
behavior,
as thesystem manifests anemergentquality
thatcanbe
altogetherdifferent from
thatwhich
is intended.
1.2.4 Hybrid
Hybrid
architectures[2]
attemptto combinethebest
ofthereactive anddeliberative
paradigmstomakeprovisionsfor high level planning
andsimultaneously maintaining
responsivenessin dynamic
environments.Systems
employing
this architecturerely
onvarying
degrees
eachofreactive anddeliberative
techniques.Hybrid
systems arethedominant
approachfor
most2 Monte
Carlo Localization
Monte
Carlo Localization
(MCL)
is
aparticularly
efficient, scalableandflexible localization
solution.It
has
provenitself
tobe
asimplerand more robust technique thanKalman filter based localization
orMarkov localization
[7,
10].
The
generic updatefunction
for MCL
is
givenby
thefollowing
function.
Bel(x)=p{o\xl)ip(xt\x,_1,al_l)Bel(x,_1)dxl_1
,,,-Where Bel
representsthebelief
in a givenpose, othesensorreadings/observations,
xtheposeandathemotionor action oftherobot.Refer
to[7]
for
anin depth
explanationandderivation. The
term p(x,\x,_u a,_,)describes
theprobability
that theposeis
correctgiventhe motionhistory
andis
frequently
referredto asthemotion model.The
termp{o,\x,)
describes
theprobability
that thecurrent sensorreading
wastakenfrom
a givenpose,whichis
termed thesensor model.This
function,
giventhepreviousbelief,
thepreviousposition, the actionundertaken, andthe sensorreadings, generatestheconfidence(or
belief)
thatxis
thecorrect pose oftherobot.This
updatefunction drives
theconvergence oftheposterior poseestimates onthe actual robot position.In MCL
theprobability
density
function
(PDF)
is
representedby
a mass ofparticles,whichtheupdatefunction is
appliedto recursively.Note
theinitial
positionis
typically
modeledby
auniformdistribution
over allpossible poses.A
high level diagram
oftheiterative
processis
shownin Figure 1
.JMbg, |
Motion Model
Resampling
.*
^
T
[image:12.532.172.395.386.595.2]2.1 Motion Model
Recall
the term p[x\x,_u a,_{)
describes
theprobability
oftherobot'sposition,
given previous position andtheactionundertaken.To accurately
portray thisa model mustbe developed for
therobotthatcansuitably describe
themotions oftheplatformthatoccur as aresultof
any
willful action.A
thoughtfuland correct application of
forward
kinematics
is
notin
and ofitself
sufficientto representthis motion,as real worldrobots are acted uponby
allmannerof externalforces
thatcanbe impossible
tomodel. Robots are often subjecttoimperfections
in
theirownconstituent components aswell.Consequently
animportant
part ofthismodelis
theapproximationoferrors.Typically
thefastest
way
toarrive at such an estimationis
tostudy
therobot's perceived motionin
avariety
of environments.Subsequent coaxing
ofthe'error
picture'allowsthe
model createdthrough
kinematics
tobe
revisedtogenerate position estimates.The
robot usedfor
testing
is
afour
wheeled, skidsteered rover whose macrolevel
motions are composed of straightline
translations and rotations aboutasingle point.Data
was gatheredfor both
typesofmovementandis
alsopresentedin
thefollowing
sections.2.2 Sensor Model
The
sensor modelfacilitates
thedistillation
ofaccuratepositioninformation from
theavailable positiondata,
andis
representedby
the p{o,\x,)term
in
thebelief
equation.Many
previousapplicationsofMCL
leverage
sensors thatprovideenvironmentfeature
data
anddistance information
implicitly
[4, 5, 6,
8]. This
simplifiesboth
thematching
problem andthe constructionofamap
which
describes
theenvironmenttherobot will perceive.However
thesesensors arefrequently
expensiveand, withfew
exceptions,areonly
concernedwithdata
from
twodimensions. Vision based
sensorsontheotherhand
yieldanincredible
amount of raw
data
with which positionalinformation may be
derived,
though this richness ofinformation
comesatacost.Adapting
MCL
for
usein
visionbased
localization
presents several challengesthatmustbe
overcome.A
significantamount ofprocessingmust
be
performed ondata
yieldedby
thevision sensortoderive both
amap
and a sensor model.Additionally
a suitableframe
of referencemust
be
settledon,whichis
typically
tiedintimately
to thesensor model.Vision
sensors arealsomore susceptibleto subtle changesin
theenvironment,
such aslighting
and rotation orscaling
ofthereferencewithrespectto therobot.Further
attentionis
giventotheseissues in
sections3
and4.
The MCL
algorithm scalesnicely
asthecomputationalintensity
associatedis
adirect function
ofthenumber ofparticlesbeing
maintained.A
criticalmassof3 Vision Based
MCL
For
all ofthereasons stated abovein
thelocalization
survey,MCL
is
thepreferredtechnique
toarrive at a successfullocalization implementation.
Particularly
benefits
relevantto thiseffort arethe
scalability,
neutral stance with respecttosensing hardware
and generalrobustness
in
theface
of errors.MCL
has been
appliedwith monocularvision as a
primary
sensorin only
ahandful
of cases[8,22,27].
The documented
applicationsthat existhave
relied on a singlefeature
matching
technique tocorrelatevision
input
toadatabase.
The final
goal ofthisresearchwillbe
toimplement
and maximizetheefficiency
ofMCL
onthelow
cost robotplatformthrough theuseofmultiple
computationally inexpensive
invariant features
and presenttheresulting
empirical evidence.
This
sectiondescribes
theinitial development
of such a vision-basedMCL
implementation.
3.1
Research
Platform
Figure 2: Mauricetherobot
All
experimentation was conducted onMaurice
therobot(Figure
2),
acustom platform
built specifically for
thisresearch.Briefly,
Maurice is
askid-steered,
four
wheeldrive
rover withbuilt-in odometry
andinfrared
proximity
detectors
running
theBusyBox
distribution
oftheLinux operating
system.The
primary
sensoris
aCCD
camera withon-boardvideoprocessing.Testing
and experimentation arefacilitated
by
CompactFlash
storage andEthernet
3.2
Motion
Estimation
The
motion modelthatis
employedis
relatively
simple.The
shaftencoders arethe
only
source of odometricinformation
available onthe robot,consequently
themodelonly
needbe
concerned withtheseinputs. Note
the custom robot platformis
best
suitedtonavigating
about anddelivering
accurateodometry
in
an environmentthatconsists of a single plane.Consequently
theCartesian
coordinate systemhas been
selectedtorepresent robotposition.3.2.1 Environment
The
robot willoperatein
an arenaroughly 220
squarefeet in
area.A
[image:15.532.100.417.209.478.2]graphical
depiction
ofthis areais
shownin Figure
3,
withobstaclesclearly
visible.Figure 3: Arena map
~220sqft(17'xl3')
3.2.2 Rotation Error
Modeling
Throughobservationsoftherobot motions
in
general,it
was clearthat asubstantial
difference
existsbetween
observed motion andthatindicated
by
theonboard
odometry.Witnessed
errorin
theplatform's motions are attributable to thecumulative effects
from
avariety
of sources.Some
likely
sourcesinclude
wheelslippage, off-axis motor encodersand noiseonquadrature
decoder
interrupt
lines.
The
rotationalerrorsobserved are presentedin Figure 4. Results
have
been
groupedfor left
and rightturnsin
thesameplot,whichcorrespondto to theRotation 400
350
300
250 CA 0)
200 0)
a
150
100
50
0
?Msasured
|
Actualhftiiiiiiiiiiiiiiiiiiniii
13 5 7 9 1113 15 17 19 2123 25 27 29 3133 35 37 39 41
Trial
Figure 4:Degreesrotated,as measured
by
therobot and actualWhile
errordata
is
consistentfor both left
and rightrotations,it is
clear thata significant error componentis in
generalpresentin
rotational motion.Further
analysis ofthe trialdata
is
shownin Figure
5,
wheretheapparentproportionality
ofthe errorvalueto theamount of rotational motionis
confirmed.Rotation,MeasuredvsActual 400
100 150 200
Actual(degrees)
300
Figure 5: Erroras afunction ofactual rotation
It
is
presumedthat theerrorconstant,C
yieldedby
this analysis,is
largely
attributabletowheel slippage,anunavoidableproblem
in
skid steered vehicles.The
slope ofthesampledata
yieldstheconstant value1.3695,
and sotheactualRotation
300
250
200
150
100
50
raActual |
Actual
*C|
|
I
J
I
ill
-jM
-.Ii:lf
Liiiiili
1 3 5 7 9 11 13 15 17 19 21 23 25 27 29 31 33 35 37 39 41
Trial
Figure 6: Application ofskid-steer correction constant
The strong
errors observed arelargely
eliminated after compensationfor
thelinear
bias,
however
a non-trivial errorcomponent remainsasillustrated below
in Figure
7,
withtheoutliersindicating
errors of almost15.
Capturing
thisnoiseis
criticalto thegeneration of reasonable guessesduring
particlefilter
operation.ResidualError
15.00
10.00
5.00
0.00
-5.00
-10.00
-15.00
Figure 7: Errorremainingafterincorporation ofskid-steer
constant
A histogram
ofthisresidual component reveals aGaussian distribution
(plotted in Figure
8)
withameanvery
closetozero and a standarddeviation
ofabout
5.
ErrorDistribution
J2
E
4^_
6
5 4 3 2 -P ,0 1 Z ? ^ i
u=0.2681;a=4.916
Figure 8: Histogram ofresidualerror
The
rotationalpositionfor
thisplatformin
themotion modelis
consequently
computed as9=e^1+6'-C+randN{0.26Sl,
4.916)
where#'is
the perceivedrotation, randN(mean, stdev)yields arandom numberfrom
thenormaldistribution
defined
by
its
arguments andC is
therotational correctionconstantdetermined
previously.3.2.3 Translation Error
Modeling
Translations
are constrainedby
thewheeledplatformto those that take the robotforward
orback along its
currenttrajectory.These
straightline
movementsare
generally
morewellbehaved
than theirrotational counterparts asis
evidencedby
thedata
shownbelow in Figure 9. This data has been
capturefor both
types offlooring
found in
thearenawheretestswillbe
conducted.For
conveniencethisdata has been
consolidatedinto
a single plot.The
left
clusterillustrates
trialsDistanceTraveled
1 3 5 7 9 11 13 15 17 19 21 23 25 27 29 31 33 35 37
Trial Number
Figure 9: Straight linemotion errors
Errors based
onflooring
typeare negligiblewithrespecttostraightline
motion,
but
significant whenheading
is
takeninto
account(shown in Figure 10).
These
resultsled
to thediscovery
ofaslightly lethargic
motor onthefront left
wheelofthe robot,whose
influence
is greatly
exaggerated on carpet.This
is
attributedto thehigher friction
constantwhichpreventsit
from skidding
tokeep
up
withthe otherthreemotors.The
net effectis
a significant negativeheading
error whenevertherobotis
onthis surface.HeadingError
If
1T
II
M
i i\1
) 21 23 25 27 29 31 33 35 37aHeadingError
1
1
-2-4
-6 <n
S,
-8 o a-10
-12
-14
-16
Trial Number
Notice
that theperformance oftheMCL
algorithmshouldnot sufferdue
tothisextra noisein
position estimation.The
algorithmitself
thrivesonlimited
amounts of noisethatallow
it
toexplore all posesin
thesearch space,aslong
as samples canbe
generatedthatreflecttheobservednoisedistributions. For
simpleturns,
which are effectedby
themotorsturning
in
oppositedirections,
theheading
erroris
muchless
pronounced and canbe
computed withonly
theencoder errorfactored in.
The
actual motion model employedis
in
some ways crude.The
encoderadvances
for
a given movement(forward,
reverse, right,left)
aretrackedfor
eachmotor.
At
thecompletion of amovement, the erroris
thenintegrated
into
each reading,yielding
a guess asto theactualpositionofeach motor.This is
ascientific approach
(noting
that theencoder positions canbe
expectedtoexhibitnormally
distributed
error),however estimating
theheading
errorin
straightmotions
is
decidedly
not so.Since
slight errorsin
theencodersmay
occuratany
time
during
therobot'smovement,vastly different
effects canbe
observed onits
resulting
orientation.It
wouldbe
adifficult
andtimeconsuming
endeavortogenerate guesses about orientation errors
based
on real-timedata.
Instead,
arotational error
distribution is experimentally determined
andappliedtoyieldheading
errors aftereach respective motionis
completed.While
theencoder readings arefairly
accurate,displacement
errorsarestillpresent and soneedto
be
accountedfor
tobring
themotion modelin
line
withtheactualplatform
behavior. These
errors are modeledasgaussianbased
ontheinterpolation
ofdata from
thevarioustrials,
shownin Figure 1 1
below.
Encoder ErrorDstribution
2_
18
IK
14/ , * count
i6 0)
3
AO
"o
/
8 nE S z
/ c
1 A
P
-, 4 i,
+--~
5 -4 -2 ) 2 4 (
u=
-0.6978;a=0.6356
It
is
worthwhiletonote that theerrorsampling based
onthesemodelsis
only
successfulbecause
it
is
performedmany
times(once for
each particlein
thedensity
representation).Hence
it
approximatestheactualprobabilitydensity
errorfunction.
3.2.4 Application
ofMotion Model
To
reiterate,implementation
oftheerror modelontherobotplatformgrants
improved
position estimation and ameanstogeneratesample robotpositions
for
usein
theparticlefilter. This
coupled withafairly
naivekinematics
application completesthemotion model.A
sample run ofthemotion model aloneappliedto thegeneric position
tracking
taskis
shownbelow in Figure 12. In
thissampletherobottraversedatotal
distance
of9'8". A
mass of500
particlesis
usedtoestimate the
probability density. The
robotbegins in
theupperleft
cornerandmoves
incrementally
along
anarbitrary
pathtoward thebottom
right.At
eachincrement
theparticlepopulationis
drawn.
*
'<
f. \ JVr'vft'joi?**;***.* 'A
-. * < '
',,'*" v'~'
\
':*""
Figure12: Motionmodelappliedtogeneric position
tracking
taskActualrobot position shown as solid red circle
Clearly,
errors compoundrapidly
whenonly
themotionmodelis
applied.This helps illustrate
the criticalimportance
ofreining in
position estimatesby
[image:21.531.140.397.279.528.2]3.3 Sensor Model
Localization
cannotbe
performedmeaningfully
withoutaframe
ofreference.
This frame
ofreference,
ormap,
takesdifferent
shapesdepending
ontheavailable
sensing
equipment and sensor modelemployed.Since
the sensormodel employed
here is based
on variousfeatures
extractedfrom
colorimages,
it
is
appropriatetobuild
a single commonimage
library
from
whence allfeature
information
canlater be
extracted.While it is
possiblethateachfeature
willhave
a preference
for
the number,quality,
orientation orresolutionofthese sourceimages,
keeping
thisinitial
population constant shouldfacilitate
amore consistentperformance comparison.
A
library
consisting
of624
images
was constructedby
positioning
therobot at 18"intervals
(both
xandy
displacements)
acrossthetestarena,eight orientations each(45
increments). Features
are extractedfrom
the vision sensor and correlatedtoafeature database
generatedfrom
thislibrary.
This
operation yields match probabilitieswhich
drive
thesensor update computationby
revising
theparticle weightsin
theIn
other visionbased implementations
[8,22,27]
occupancy
grids or similarmapping
strategies are usedto trackphysicallocation in
additiontothemap
supplied
by
thefeature
reference.This
is in
a senseredundant, astheimage
library
already
retains positionalinformation for
the environment,presuming
coverage
is
uniform.The
workdescribed
here is
concernedonly
withthegroundtruthprovided
by
thefeature library.
3.3.1 Na'ive Correlation
withColor Histograms
Color histograms
are a suitable metricfor
differentiating
pose estimatesdue
totheirrotationalandtranslationalinvariance.
They
are alsoeasy
togenerateandtake
comparatively little
spacetostore.Another
convenientproperty
is
theeasewith whicha
human
observercan gaugethesimilarity
of ahistogram
pairby
inspecting
aplot ofthebins.
Consequently
a sensor modelbased
on colorhistograms
canbe
simplerthanother methodstodebug.
Much
like
themotionmodel, the sensormodel mustbe built
toaccurately
reflect
how
theenvironmentin
whichtherobotlocalizes is
perceivedby
the camera.The
notionofcomparing
colorhistograms
themselvesis in
ofitself
simple,however
thepeculiarities again ofthe platform, theenvironment andhow
the two
interact
mustbe
well understoodtopermittheextraction of meaningfulvaluesto
drive
theparticle update.Noise
thatexistsin
the system mustbe
modeledtomaximizethe
likelihood
thathistogram
matchquality
reflectstheprobability
thata sampleimage
corresponds toa given positionin
themap.The
map
wasimplemented
asapopulationof colorhistograms
generatedfrom
thebase
image
set.A variety
ofreadingsweretakenfrom
thecamerawiththelens
coveredtoestablish a noise
floor. This
wasthenincorporated into
thesensorsample
images
usedtogeneratethenoisefloor
andtheresulting histogram
are shownbelow
in Figures 13
and14,
respectively.Noise Floor
Figure 13: Sample imageused
tocalculate noisebias
Pixelvalue
intensity
enhancedtoillustratevariation
80
70
60
50
40
30
20
10
0
R(noise)
G(noise)
B(noise)
- --
-L
J;
1 3 5 7 9 11 13 15 17 19 21 23 25 27
Bin
Figure 14: Color histogramnoisefloor
To
maximizetherelevanceofthenaiveimage
comparefor
thesetrials,
it
is necessary
tounderstandhow
theenvironmentappearsin
thecolorhistogram
space,particularly
as perceivedby
theCMUCam. Figure 15
showsthemaximum countsfor
eachbin
thatoccur acrossthe entirecolorhistogram library.
Clearly
theenvironmenttherobotis operating in induces low
pixelvalues muchmoreMaxbyBin
140
120
100
80
60
40
20
0
R
|
G: : B;1 3 5 7 9 11 13 15 17 19 21 23 25 27
Bin
Figure 15: Maximumvalues
by
bin,
acrossentireimagelibrary
Tailoring
thehistogram
comparisonin
themannerdescribed
abovelimits
its
use genetically.However
bypassing
thisstep
would come atthe cost ofreduced
sensitivity
andmorefrequent
errorsin image
matching.During
localization,
this wouldmanifest as atendency
tolose
good matchesduring
theresampling
step.A
simpledifferencing
measure, theLi-metric
is
suggestedin
[30]
for
histogram
comparison.A heuristic
adaptation ofthis measure, termed"naive
correlation"
is
performedtodrive
theupdatestep
oftheparticlefilter
as shownhere,
whereN
is
theparticlecount, sthe sample,rthereferenceimage,
nthenoisefloor
andmthebin's
relevancemeasure.N bins
quality
=YdYdmax{i\shil-rbM\-nb
,),0)/mbi
;=i 6=1
That
is,
for
eachbin in
the sample,producethedifference between
thecorresponding bin
ofthe reference,removethenoisebias
andscaleby
perceivedrelevance.
Match quality for
asampleimage (Figure
16)
is
plotted againsttheentireimage
library
in Figure 17. Note
thestep
characteristic,whichis
attributabletothe sizable
differences in
lighting
between
the tworoomsin
thearena.Additionally,
apronouncedclustering
ofmatch qualitiesis
evidentbetween
0.3
and0.7. This illustrates
one ofthedifficulties
in using
colorhistograms
solely
tofilter
position estimates.The
inability
todisambiguate
different
positionsstrongly
may
resultin
positional uncertainty.Ideally
sensorreadings should correlate withNafre Correlation
0.8
0.7
0.6 0.5
0.4
Figure16: Sample image
1?Quality
M?5Z
V4
zPSrz&f
700
Figure 1 7: Naivecorrelation matchquality,binbased
differencing
Resultsshownforeachentry image
library
Figure 1
8
showsthetop
five
matchesfor
theprovided sampleimage. The
heuristic
application resultsin
aquality
thatis
directly
proportionalto theparticle weight assigned.This
correlation proceedsby
first
identifying
thelocation
and orientationin
themap
thatmostclosely
matchesthe current poseestimate, thenusing
theheuristic
togenerate adifference
measure.pi
!
'*
;.:....1 1
Figure 18: Samplenaivecorrelation, bestmatches
Match quality of0.838
(#452),
0.836(#180),
0.832(#524),
0.827(#547)
and0.824(#493),
A
sampleimage (Figure
19)
is
comparedwiththebest
fit
entry based
onposition
(Figure
20)
from
theimage library.
Figure 21 Shows
the red,green andblue
channelhistograms
superimposed.Finally
theresulting difference
measureis
presented
in
Figure 22.
Figure 19: Sampled image
78.94xl5.98y-89
Figure 20: Reference entry
80.0"x
8.0"y
-90;
Entry
#27Histogram Comparison(R) Histogram Comparison(G) HistogramComparison(B)
Reference mReference
Sample
Reference
: Sarrple m
Sample
ill. ,
!
|
mm
.Iffl
LtlllLk S ia B LiiL
Ill,
Figure21: Comparison ofsample and referenceimage
Difference Measure
0.8
~ IbR
B
0.6
0.5
0.3
0.2
0.1
n
J_
]*-III.,
i1 3 5 7 9 11 13 15 17 19 21 23 25 27
Bin
Note
oneundesirable effect ofthisheuristic is
thatasizable amount ofcolor
information
in
therangethatshowsup strongly in
thenoisefloor
is
discarded (Figure
23).
Consequently
thedifference
measurehas
unduebias
towards
images
whichdiffer
distinctly
in
thesebins.
Max-Floor
140
-
120-100
-80
60
40
20
0
-20
-40
--60
in
JU
1 3 5 7 9 11 13 15 17 19 21 23 25 27
Bin
Figure 23: Adjustedreferencehistogram
Datashownisacross entireimage
library
3.4
Resampling
A
critical aspect oftheparticlefilter is
theresampling
step
thatoccursbetween
applications ofthesensor modeland motionmodel.This step dictates
how
theparticle population evolves.In
its
mostelementary
form,
resampling
canbe
performedby
simply
thresholding
theparticlesby
theirweight.Repopulation
canthenoccur
any
number ofways,e.g.copying
surviving
particlesor random samplesfrom
thesearch space.The resampling
techniqueemployedin
thisimplementation
propagates particleswithaprobability
equaltotheirweightusing
aselect withreplacementtechnique
described in [31]. This
allowstheparticle masstomorethoroughly
explorethosepositionsthatare
deemed
tohave higher
likelihood
by
thesensormodel,and should
keep
theparticle mass closeto theideal PDF. One
notableproblem with
importance resampling is its propensity for
tunnel-vision.Because
it focuses
onhigh
weightparticles,a singlebad
reading
coulddrive
particleweights
low
enoughfor
themtobe
sampled out ofthepopulation,
thereby
blinding
theparticlefilter
topotentially
correct poses.This
is
particularly
pronounced
in
thekidnapped
robotproblem, andis discussed further
in
section3.5
Localization
Architecture
The
hybrid
controlhierarchy
is
apromising
mechanismfor creating
aresponsive,
yetdeliberate
system.This
approach grants amaximal amountofflexibility
to thedesign,
withoutprecluding
robustoperation.A
controlhierarchy
loosely
based
onthisparadigmhas been implemented
ontop
ofthecustomhardware (consult
appendicesA
andB).
Since
theplatform cannotlocalize in
real-timedue
to theprocessing
constraints,
it
is
difficult
toimplement localization
as abehavior
separatefrom
thebehavior(s)
thatareactually enacting
motion.In
thetimethatit
takes theimplementation
toacquire animage,
process andupdatetheposeestimates, therobot
itself
couldbe displaced
orrotated enoughtocreate adiscontinuity
between
the
odometry
readings andtheimage
thatgets examined.As
such, thelocalization behavior is
subordinatedto themotioncontrol,which preventsany
movement while
localization
processing is
underway.A
small,but necessary
concession.
Note
that this approachwould notimpact
theresponsivenessoftherobot
if
theplatform couldlocalize in
real-time.However
localization
updateswouldstill
be
atthemercy
ofthemotionAPI,
whichis
probably
notdesirable.
For
example a singleforward
motionthat traversed5'wouldonly drive
one3.6 Trials
The
localization
implementation
with naiveimage
correlationwas puttotheposition
tracking
taskoverthecourse ofvarioustrialsdescribed in
thefollowing
sections.The
term'trial'is
usedtodenote
asequence ofexperiments,where each experiment or'run'conducted variesone or more
key
localization
parameters.3.6.1 Success Indicators
The
taskoflocalization itself is
somewhatsubjective, particularlywhen probabilistic estimation methods areemployed,asrarely if
ever will a robotbe
abletoposita guesswith100
confidencethatexactly
mirrorsits
reallocation. For
trials conducted
here,
thelocalization
effortis deemed
successfulif both
oftheconditions
below
are met.Greater
than90%
oftheparticles are centered about a single pointThe
standarddeviation from
thecenterof
massof
theseparticlesis less
than10%
of
thearenadimensions.
For
the testarenathesecond measureabove equatestoa circular region1
foot in
diameter.
Essentially
it is
requiredthataperceivedcollapseofthearbitrary
threshold.A localization
runis deemed
afailure if
eitherofthefollowing
conditions are met.The
time taken tolocalize is
inexcessof 5
minutes3.6.2 Position
Tracking
Being
abletoconsistently
present an estimate of robotpositionis
acriticalcomponent of a
localization
strategy.The
first
trialis
consequently concernedwith
determining
thesuccess ofthelocalizer
with respectto thepositiontracking
task,
whichdiffers from
globallocalization (presented
in
thefollowing
section)only
by
theinitial
position estimatethatis
suppliedtothelocalizer. That
is,
theparticle population attimezero
has
zerovariance andis
centered aboutasinglecoordinate.
The
taskputto therobot requiredthe traversalof adistance
of1000"
(-83')
whileremaining
welllocalized.
Results
for
alargely
successful positiontracking
run are shownbelow. The
paththerobotactually followed for
thisrunis
illustrated in
Figure 24.
FP? arugfr
C!KUfcCifri.i-F:.aj;;':
COTMWlVlfW :lW#*WMsn JHI*JIOT \OW$ CoKf Mt*Wl
'
Sttf* ;SfTW
[image:30.532.112.420.242.520.2]> ! hWK ;WTK !~ i*I C*tof4 fiiirit*NW
Figure 24: Positiontrackingtrialpath
Distancetraveled-61
feet;
Arrow indicates startingposition;The final
particle populationis
shownin Figure 25. Position
estimates areclustered
in
a16"
radius aroundthe actual robot
location. Note
that theactualdensity
canbe
difficult
tointerpret based
onthisgraphicalrepresentation,ashigh
Figure 25: Position
tracking
trialresultLocalizer'sfinalposition estimate shown ashollowcircle;Actualpositionshown as solidcircle; Finalposition confidence
0.97;
Finalerror10";
5000particlesA
range ofdata
collectedfrom
thistrialis
plottedin Figures 26
and27.
Data
is
shownfor
particlecounts1vs.the
distance
traveled towardsthe 1000"goal.
Runs
thatdid
notachievethegoal are givencreditfor
thedistance
traversedpriorto
leaving
the'well-localized' state.Goal
? Traveled
Log.(Traveled)
- - Goal
DistancevsLogParticles Distancevs.Particle Count
Particles(10Ax)
Figure 26: Distancetraveledvs particle count, logarithmicscale
1400
1200
1000
800
600
400
200
0
?^-^
:tl
[image:31.532.74.464.61.292.2]0 20000 40000 60000
Figure 27: Distancetraveledvs particle count
Surprisingly,
therobot was ableto trackits
positionrelatively
wellatvery
low
particlecounts,
despite
nevermeeting
thegoal.In
oneinstance it
managedtotravel573.13"while
operating
thelocalizer
ononly 100
particles.While
periodically
thelocalizer
developed
multiplehypothesis
aboutthecurrent robot
position,
theonly
conditionthatpreceded afailed
trial(in
allcases)
was a
lack
of pose estimates at orvery
closeto therobot's actual position.This
dearth
ofsamples,
or sampleimpoverishment,
is
solely
afunction
ofthenumber ofparticles availableto theparticle
filter.
In
practiceit
is
one ofthefew
occasionswherethemass of particles
does
aninferior job
ofrepresenting
thecontinuousPDF.
As
thenumber of particles employed approachesinfinity
theparticle massbecomes indistinguishable from
thePDF.
However,
for
realisticparticle numbersit is
usefultounderstandwhatthe'critical
mass'is. That
is,
atwhat pointdoes
theimplementation
sufficiently
estimatethePDF? Based
ontheexperimentationconducted
in
thisand othertrialsdescribed
below,
thatnumberis
consistently
ator
just
above2,000. It
is important
tonote thatimpoverishment
was witnessed atand abovethis number,
however it
was always causedby
uneventerrainin
thearenathat
induced
severe rotational errors.In
thiscasethemotion modelwas notabletogenerate samples consistent with actualrobot motion.
This
is indicative
ofthesorts of problems real world robots encounter.
An
appropriate responseto thesampleimpoverishment
scenario mightbe
torelaxthemotionmodel,andevento attempttoaccount
for
extreme errorsdue
tounforeseen
interactions
withthe environment.However modeling
unobservable errors would
be
adecidedly
unscientificendeavor,further,
thelikelihood
ofgenerating
anappropriate samplewhensay, therobotfalls down
aflight
ofstairs,is
small.Another
approachmightbe
topermitresampling
to someextent,
from
a uniformdistribution
overthesearchspacewhenevermatchquality
dips
below
adynamic
threshold.High
particle countswouldbe
requiredtoensureanappropriate numberof samples are generated outside ofthe central particle
mass.
Alternatively,
theuse ofthedual
ofMCL
[7]
may be
warranted,wherereplacementoccurswithsamples
drawn from
a pool of pose estimatesthatareconsistentwith sensorreadings.
Contrast
thislatter
approachwithMCL
aspreviously
discussed,
wherepose estimates are generatedonly
throughodometry
andvetted
by
sensorinputs. To
generalize, thesampleimpoverishment
problemdescribed
here is
really
just
aless
extreme caseofthekidnapped
robotproblem,In
additiontocontinuously supplying
a poseestimate,it
is
important
toquantify
theaccuracy
oftheseestimatesin
determining
theoverall effectivenessofthe
localization
implementation.
Average
error recordedoverthe courseofthetrial
is
presentedin Figure 28
for
eachrun,with averageerror per unitdistance
traveledshown
in
Figure
29.
Runs
are orderedby
particlecounts,from lowest
tohighest.
Average Error(Inches) Errorper unitdistance
?
? ?
? ? ?
? ?
Error/distance Log.(Error/distance)
[image:33.531.78.221.157.280.2]10000 20000 30000 40000 50000 60000
Figure 28: Averageerror vs particles Figure 29: Errorper unit
distance;
At first
glanceit
appearsthatpositionalaccuracy increases
withthenumber of particles.
However
the trendin Figure 29 falls
offlargely
due
tolow
particle count runs not
meeting
the goal,andconsequently
traversea smallerdistance. Figure 30
showstheproportional error whenthe effect ofdistance is
eliminated.
Proportional Error
[image:33.531.256.421.158.282.2]1 3 5 7 9 11 13 15 17 19 21 23 25 27
Figure 30: Proportionalerror
Shownwithrespecttothe
1000" goal
For
thepositiontracking
task,
theaverage erroris
consistent and appearsto
be independent
of particle count at aratio of about0.009/1000"(9"). Errors
were
occasionally
witnessedin
excess of30",
but
typically
therobot's positionestimate
hovered between
0"
and
16"
[image:33.531.169.327.400.526.2]To summarize,
theparticle count appearstoonly
affectthelikelihood
that theparticlefilter
won't exhaustits supply
of position estimates.Beyond
this,
somewhat
counterintuitively,
positionalaccuracy
appearsindependent
ofthe particle population size.To
improve
upontheseresultsit is important
tounderstand what
exactly is motivating
thewitnessed errors.At first
glancetherearetwo typesoflocalization
errorstobe
concernedwith
beyond
thosepreviously
discussed,
positionalinaccuracy
and positionaluncertainty
(Figures
3 1
and32,
respectively).The
former
referstodistance
between
estimated and actual robotposition,whilethelatter
tostandarddeviation
(which is essentially
theinverse
oftherobot's confidenceaboutits
positionestimate).
Clearly
both
ofthese termsimpact
theusefulnessofthelocalization
results.
Figure 31: Position
inaccuracy
Figure 32: Positional uncertaintyIt
is
hard
to assignblame
toany
specificstep
undertakenduring
thelocalization
process, astheposition estimateis
a product oftheircloseinteraction.
It
is
possiblethat themotion modelis
failing
to generate appropriate samples.However,
early
positiontracking
trialsemploying only
the motion model(Figure
12)
wereverifiedrepeatedly
toproducecorrect particledensities according
to robotmotion.The
successeswitnessedin
thefirst
trialwithrespecttolonger
distances
traveledwould alsoseemtorule out sucha conclusion.It
is
possiblethatthe
resampling
algorithmemployedis
doing
anunsatisfactory job
ofremoving
poorestimates
from
thepopulation.Were
this the caseit
shouldbe
possibletoreduce
both
errortermsby
adding
more sensordata
withoutintroducing
newsamplepositions.
In
practicethiscanbe
accomplishedby
rotating
therobot aboutits
axis repeatedly.Figure
33
showstheprogressionof areasonably
welllocalized
Deviation fromposition estimate
1 4 7 10 13 16 19 22 25 28 31 34 37 40 43
Step
Figure 33: Effect ofadditional measurements ondeviation
The
behavior
visiblein
thecurve shows thatadditional sensorinformation
motivates an
improvement
in
overall confidence.However
therepeatedculling
oftheparticle population withouttheadditionof motion modelsamples
is
probably
driving
the estimatetowards thebest
matchesin
theimage
library
artificially.This
approachunderminestheprobabilistic nature oftheparticlefilter. Moreover
it
is
unlikely
toallowthelocalizer
toarrive attheactual robot positionestimatedue particularly
todifferences between
reference positionsandsamples,but
alsobecause
oflighting
variations,image
noise andunexpectedobstructions.Permitting
resampling
tooccur assolely
afunction
oftheparticleprobability
allowsthelocalization implementation
tostay
true toits
mathematicalfoundation.
Closer
inspection
ofthesensor model'sbehavior
overthecourse ofafew
trialsreveals acentral
issue
thatwas alludedtoin
section3.3. Figure 34 depicts
aparticlepopulation superimposedover a representation of samplematch
quality
with respecttothereferencemap.
A group
of8
circlesis
positioned about asingle reference
location,
eachcorresponding
toa reference orientation.Circle
diameter is
proportionalto thereportedquality
ofthematch performed onthecOO Oo0 000
O 0 0 0 0
1
>o0 OOB;v 000
k'A~-'
OO * *
fgOOP*
%
000 o *w&\., O -''**
^
0*& 0 OoQ o OO .. <ito OO oOO
'
0ci'
i ft)
#
e* *
o
600
, 000 OOOO O 0 g. ? 0
<O '..
oo( *
4>P #'s
, <ooo,%v* t *v
*,
*
<*
? 0 0O O * 000 OOO
0 0 * 0 0 0
[image:36.532.172.366.58.253.2]. 0 ?00 000 OOO
Figure 34: Imprecisionduetosensor modelambiguity
200particles,globallocalizationtrial
Match qualityforthecurrent sample shownfor 8orientations at each reference positioningreen. Circlediameterisproportionaltomatch
probability
At
this position, the sensor modelwilllikely
be
unabletofurther
refinethepositionestimate
due
to theambiguity in
theimage
correlation.While
theprobabilities arenotequal,
they
are close enoughtodelay
theideal
collapseoftheindefinitely. The ambiguity
evidenthere is
atthecoreofthe3.6.3
Global Localization
To
measuretheeffectiveness againstthegloballocalization
problem, therobot was movedtoa random
location
in
theroom and setaboutthelocalization
task.
A
sample runfrom
this trialis
presentedbelow,
withthepaththerobotfollowed
shownin Figure
35.
[image:37.532.98.407.142.437.2]; CjrvxwnWw l.rcifl*wi W?trf|T.,m :Ovflg Crtw ; Jrt>n 51*3 iSww twaatz|CamgraRwa.f irB" if'
Figure 35: Global localizationtrialpath
This
particular run resultedin
alocalization
failure,
theprogressionis
shownin
Figure 36. Significant
errors were witnessed whenturnswere executedon a transitionfrom
woodtocarpetedfloors. The
errors measuredwereoutside ofthreestandard
deviations
oftheexpectederrorbuilt
into
themotionmodelfor
rotationalmotions.This
coupledwith sampleimpoverishment
putthelocalizer
in
an unrecoverable state.
Leaving
therobotdoomed
towanderthe arena withanincorrect
position estimate untilsurviving
samplesby
chanceoverlap
withtheFigure 36:Sampleimpoverishmentandoverlyoptimistic motion model
Failedgloballocalizationtrial, 500particles; Conferwith pathinfigure35
The
final
error value resultsfor
the trialwhichthisexampleis drawn from
are shown
in Figure 37. Clusters
of runswherethis situation arose are markedby
square points
in
theplot.Triangular
points markruns wher