vision-based target geo-location using a fixed-wing

12
Brigham Young University Brigham Young University BYU ScholarsArchive BYU ScholarsArchive Faculty Publications 2006-12 Vision-based Target Geo-location Using a Fixed-wing Miniature Air Vision-based Target Geo-location Using a Fixed-wing Miniature Air Vehicle Vehicle D. Blake Barber Brigham Young University - Provo Joshua D. Redding Scientific Systems Company, Inc., [email protected] Timothy W. McLain Brigham Young University - Provo, [email protected] Randal W. Beard Brigham Young University - Provo, [email protected] Clark N. Taylor Brigham Young University - Provo Follow this and additional works at: https://scholarsarchive.byu.edu/facpub Part of the Mechanical Engineering Commons BYU ScholarsArchive Citation BYU ScholarsArchive Citation Barber, D. Blake; Redding, Joshua D.; McLain, Timothy W.; Beard, Randal W.; and Taylor, Clark N., "Vision- based Target Geo-location Using a Fixed-wing Miniature Air Vehicle" (2006). Faculty Publications. 1502. https://scholarsarchive.byu.edu/facpub/1502 This Peer-Reviewed Article is brought to you for free and open access by BYU ScholarsArchive. It has been accepted for inclusion in Faculty Publications by an authorized administrator of BYU ScholarsArchive. For more information, please contact [email protected], [email protected].

Upload: others

Post on 15-Oct-2021

6 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Vision-based Target Geo-location Using a Fixed-wing

Brigham Young University Brigham Young University

BYU ScholarsArchive BYU ScholarsArchive

Faculty Publications

2006-12

Vision-based Target Geo-location Using a Fixed-wing Miniature Air Vision-based Target Geo-location Using a Fixed-wing Miniature Air

Vehicle Vehicle

D. Blake Barber Brigham Young University - Provo

Joshua D. Redding Scientific Systems Company, Inc., [email protected]

Timothy W. McLain Brigham Young University - Provo, [email protected]

Randal W. Beard Brigham Young University - Provo, [email protected]

Clark N. Taylor Brigham Young University - Provo

Follow this and additional works at: https://scholarsarchive.byu.edu/facpub

Part of the Mechanical Engineering Commons

BYU ScholarsArchive Citation BYU ScholarsArchive Citation Barber, D. Blake; Redding, Joshua D.; McLain, Timothy W.; Beard, Randal W.; and Taylor, Clark N., "Vision-based Target Geo-location Using a Fixed-wing Miniature Air Vehicle" (2006). Faculty Publications. 1502. https://scholarsarchive.byu.edu/facpub/1502

This Peer-Reviewed Article is brought to you for free and open access by BYU ScholarsArchive. It has been accepted for inclusion in Faculty Publications by an authorized administrator of BYU ScholarsArchive. For more information, please contact [email protected], [email protected].

Page 2: Vision-based Target Geo-location Using a Fixed-wing

Journal of Intelligent and Robotic Systems manuscript No.(will be inserted by the editor)

Vision-based Target Geo-location using a Fixed-wing Miniature AirVehicleD. Blake Barber1, Joshua D. Redding2, Timothy W. McLain1, Randal W. Beard1, Clark N. Taylor1

1 Magicc Lab, Brigham Young University, Provo, UT 846022 Scientific Systems Company, Inc., Woburn, MA 01801

Submitted 24 August 2006

Abstract. This paper presents a method for determining theGPS location of a ground-based object when imaged from afixed-wing miniature air vehicle (MAV). Using the pixel lo-cation of the target in an image, with measurements of MAVposition and attitude, and camera pose angles, the target islocalized in world coordinates. The main contribution of thispaper is to present four techniques for reducing the localiza-tion error. In particular, we discuss RLS filtering, bias esti-mation, flight path selection, and wind estimation. The lo-calization method has been implemented and flight tested onBYU’s MAV testbed and experimental results are presenteddemonstrating the localization of a target to within 3 metersof its known GPS location.

Key words. Unmanned air vehicles, geo-location, computervision, micro air vehicles, localization

1 Introduction

Unmanned air systems are prime candidates for tasks involv-ing risk and repetition, or what the military calls the “dull,dirty and dangerous” (Office of the Secretary of Defense,2002). For tasks that involve tracking, reconnaissance, anddelivery, one objective of unmanned air systems is to accu-rately determine the location of ground-based objects.

This paper presents a method for determining the loca-tion of objects in world/inertial coordinates using a gimballedEO/IR camera on-board a fixed-wing miniature air vehicle(MAV). We focus on fixed-wing UAVs (as opposed to rotarywing aircraft or blimps) due to the unique benefits availablefrom fixed-wing aircraft, including: adaptability to adverseweather, enhanced fuel efficiency, a shorter learning curve forthe untrained operator, and extreme durability in harsh envi-ronments. Also, minimum airspeed requirements associatedwith fixed-wing aircraft can provide images from multiplevantage points, allowing for more robust localization.

Correspondence to: R. Bearde-mail: [email protected]

In this paper we have assumed that the target is identi-fied in the video stream by a human end user. The target isthen automatically tracked at frame rate using a combinationof color segmentation and feature tracking (Ma et al., 2003).After the object has been identified in the video stream and aninitial estimate of its world coordinates has been determined,the MAV is commanded to orbit the object in order to col-lect additional information that is used to further enhance theestimate. Due to the specific nature of MAVs, there are sev-eral sources of error that affect the position estimates. In thispaper, we analyze the error sources and present four steps toenhance the accuracy of the estimated target location.

While vision-based localization is well understood, pre-viously published results focus on unmanned ground vehi-cles (Saeedi et al., 2003; Chroust and Vincze, 2003), or sta-tionary air vehicles such as a blimps (Chaimowicz et al.,2004) or rotorcraft (Vidal and Sastry, 2002). However, blimpsare not well suited for use in high winds or inclement weather,and the costs and complexities associated with rotorcraft arenon-trivial. The objective of this paper is to explore localiza-tion methods using fixed-wing MAVs which tend to be morerobust and less-expensive platforms.

Previous results on geo-locating objects from fixed-wingaircraft have several limitations not present in the system de-scribed in this paper. In (Kumar et al., 1998, 2000), all in-formation collected by an aerial camera is accurately geo-located through registration with pre-existing geo-referenceimagery. In contrast, our system focuses on geo-locating aspecific object in the video stream and does not require pre-existing geo-referenced imagery. A method for creating geo-referenced mosaics from aerial video is presented in (Schultzet al., 2000), however, this method assumes an extremely ac-curate IMU that is impractical for MAVs due to weight andpower restrictions.

Several previous works on target tracking/localizationfrom UAVs are focused on control of the UAV to keep theobject in view, as opposed to actually geo-locating the ob-jects (Rysdyk, 2003; Stolle and Rysdyk, 2003; Wang et al.,2005; Frew and Rock, 2003). In (Rysdyk, 2003) flight pathsfor fixed-wing UAVs are designed to maintain a constant line-of-sight with a ground-based target. Stolle and Rysdyk (2003)present similar results with some useful details on cameracontrol. Both references focus on pointing a UAV-mounted

Page 3: Vision-based Target Geo-location Using a Fixed-wing

2 B. Barber et al.: Geolocation using MAVs

camera at a known target location and present simulation re-sults. The accuracy of the localization results is not discussed.

The geo-location system presented in (Gibbins et al.,2004) is similar to our work, however, the reported errorsare in excess of 20 meters, while our method achieves local-ization errors under 5 meters. Whang et al. (2005) and Do-brokhodov et al. (2006) describe a geo-location solution thatis similar to the work presented in this paper. Range estimatesin (Dobrokhodov et al., 2006) are obtained using a terrainmodel, and a nonlinear filter is used to estimate the positionand velocity of moving ground based targets. Campbell andWheeler (2006) also presents a vision based geolocation sys-tem that is similar to our solution. The estimation scheme pro-posed in (Campbell and Wheeler, 2006) is based on a squareroot sigma point filter and can handle moving objects. Boundson the localization error are explicitly derived from the filter.However, the results presented in (Dobrokhodov et al., 2006)and (Campbell and Wheeler, 2006) both exhibit biases in theestimate, and neither paper addresses the sensitivity of thesolution to heavy wind conditions. Early versions of the re-sults appearing in this paper are presented in (Redding et al.,2006).

The remainder of the paper is organized as follows. InSection 2, we present the basic mathematics used to ob-tain the raw target localization estimates from a single framewithin the video. In Section 3 we discuss four techniques forimproving the localization estimate of the target. We presentflight results demonstrating the effectiveness of our method inSection 4, and offer some concluding remarks in Section 5.

2 The Geometry of Geo-location

In this section, we present our method for generating raw es-timates of the target’s location in the inertial frame. We as-sume throughout the paper that the target’s pixel location inthe video image is known. Experimental results are obtainedby allowing a user to select the target to be imaged and us-ing a color segmentation algorithm to track the target in theimage plane.

2.1 Coordinate Frames

The coordinate frames associated with this problem includethe inertial frame, the vehicle frame, the body frame, thegimbal frame, and the camera frame. Figures 1 and 2 showschematics of the different coordinate frames. The iner-tial frame, denoted by (XI , YI , ZI), is a fixed frame withXI directed North, YI directed East, and ZI directed to-ward the center of the earth. The vehicle frame, denoted by(Xv, Yv, Zv), is oriented identically to the inertial frame butits origin is at the vehicle center of mass. The body frame,denoted by (Xb, Yb, Zb) also originates at the center of massbut is fixed in the vehicle with Xb pointing out the nose, Yb

pointing out the right wing, and Zb pointing out the belly. Asshown in Figures 1 and 2, the gimbal frame, represented by(Xg, Yg, Zg) originates at the gimbal rotation center and isoriented so that Xg points along the optical axis, Zg pointsdown in the image plane, and Yg points right in the imageplane. The camera frame, denoted (Xc, Yc, Zc), originates at

the optical center with Xc pointing up in the image, Yc point-ing right in the image plane, and Zc directed along the opticalaxis.

X (North)

Y (East)

I

I

XbZ c,Xg

Xv

Yv

Yb

CM

Gimbal

dvI

az

Yc,Yg

α

Fig. 1. A graphic showing a lateral view of the coordinate frames.The inertial and vehicle frames are aligned with the world, thebody frame is aligned with the airframe, and the gimbal and cameraframes are aligned with the camera.

ZI

X Y PlaneI I-

Xv

Xc

Zv

Xb

Zb

Xg

Zc

el

dv

I

Zg

CM

α

Fig. 2. A graphic showing a longitudinal view of the coordinateframes.

The notation vi implies that vector v is expressed with re-spect to frame i. The rotation matrix and the translation vectorfrom frame i to frame j are denoted by Rj

i and dji respec-

tively. The homogeneous transformation matrix from frame ito frame j is given by

T ji =

(Rj

i −dji

0 1

), (1)

where 0 ∈ R3 is a row vector of zeros. Note that dji is re-

solved in the jth coordinate frame. The inverse transforma-tion is given by

T ij4= T j

i

−1=

(Rj

i

TRj

i

Tdj

i0 1

).

The transformations used in this papers are defined in Ta-ble 1. The derivation for each of the transformations will bediscussed below.

Page 4: Vision-based Target Geo-location Using a Fixed-wing

B. Barber et al.: Geolocation using MAVs 3

Table 1. Homogeneous transformation matrices.

Transformation DescriptionT v

I Inertial to MAV Vehicle frameT b

v MAV Vehicle to MAV Body frameT g

b MAV Body to Gimbal frameT c

g Gimbal to Camera frame

2.2 Transformation from the inertial to the vehicle frame.

The transformation from the inertial to the vehicle frame is asimple translation. Therefore T v

I is given by

T vI =

[I −dv

I0 1

], where

dvI =

xMAVyMAV−hMAV

, (2)

and where xMAV and yMAV represent the North and East lo-cation of the MAV as measured by its GPS sensor, and hMAVrepresents the MAV’s altitude as measured by a calibrated,on-board barometric pressure sensor.

2.3 Transformation from the vehicle to the body frame.

The transformation from the vehicle frame to the MAV bodyframe, T b

v , consists of a rotation based on measurements ofEuler angles. If φ, θ and ψ represent the MAV’s roll, pitch andheading angles in radians, then the transformation is given by

T bv =

[Rb

v 00 1

], where

Rbv =

cθcψ cθsψ −sθ

sφsθcψ − cφsψ sφsθsψ + cφcψ sφcθ

cφsθcψ + sφsψ cφsθsψ − sφcψ cφcθ

(3)

where cϕ4= cos ϕ and sinϕ

4= sin ϕ. On our platform, the

Euler angles are estimated by a two stage Kalman filter as de-scribed in Eldredge (2006). The Kalman filter uses rate gyrosfor the propagation model, and accelerometers for the mea-surement update.

2.4 Transformation from the body to the gimbal frame.

The transformation from the MAV body to the gimbal frame,T g

b , will depend on the location of the MAV’s center of masswith respect to the gimbal’s rotation center. This vector, de-noted by dg

b , is resolved in the gimbal frame. T gb will also de-

pend on the rotation that aligns the gimbal’s coordinate framewith the MAV’s body frame. This rotation is denoted Rg

b andrequires measurements of the camera’s azimuth and elevationangles. Let αaz denotes the azimuth angle of rotation aboutZg, and αel the elevation angle of rotation about Yg, afterαaz . Both αaz and αel can be deduced from the gimbal servo

commands. The transformation is given by

T gb =

[Rg

b −dgb

0 1

], where

Rgb = Ry,αel

Rz,αaz

=

cel 0 sel

0 1 0−sel 0 cel

caz saz 0−saz caz 0

0 0 1

=

celcaz celsaz sel

−sel caz 0−selcaz −selsaz cel

. (4)

2.5 Transformation from the gimbal to the camera frame.

The transformation from gimbal to camera reference frames,T c

g , depends on the vector dcg , which describes the location

of the gimbal’s rotation center relative to the camera’s opticalcenter and is resolved in the camera’s coordinate frame. T c

g

also depends on a fixed rotation Rcg , which aligns the cam-

era’s coordinate frame with that of the gimbal since we havechosen Xc = −Zg and Zc = Xg.. The transformation is givenby

T cg =

[Rc

g −dcg

0 1

], where

Rcg =

0 0 −10 1 01 0 0

. (5)

2.6 Camera Model

A simple projection camera model is shown in Figure 3. Thepoint q = (xip, yip, 1, 1)T is the homogeneous projection ofthe point pc

obj = (px, py, pz, 1)T onto the image plane in pix-els, where pc

obj denotes the location of an object p relative tothe center of the camera. Trucco and Verri (2002) show thatthe change from pixels to meters in the image frame is ac-complished by

xim = (−yip + 0y)Sy

yim = (xip − 0x)Sx , (6)

where the units of (xip, yip) are pixels and the units of(xim, yim) are meters. The parameters 0x and 0y denote thex and y offsets to the center of the image from the upper-lefthand corner in pixels, and Sx and Sy denote the conversionfactors from pixels to meters. By similar triangles we get that

xim

f=

px

pz,

yim

f=

py

pz.

Using Eq. (6), and defining λ4= pz we get

Λq =

0 fx 0x 0−fy 0 0y 00 0 1 00 0 0 1

︸ ︷︷ ︸C

pcobj , (7)

Page 5: Vision-based Target Geo-location Using a Fixed-wing

4 B. Barber et al.: Geolocation using MAVs

Y im

X imX ip

Yip

Yc

Xc

Zc

f

q

pobj

c

O

λ

Fig. 3. The coordinate frames associated with the camera. Thecoordinate frame represented by {Xc, Yc, Zc} has origin at thecamera center and its elements have units of meters. The frame{Xim, Yim, Zim = Zc − f} is centered at the image plane andhas units of meters. The frame (Xip, Yip) is centered in the upperleft hand corner of the image and has units of pixels.

where fx4= f

Sx, fy

4= f

Sy, and Λ =

(λI 00 1

). The matrix C

is known as the calibration matrix.Our objective is to determine pI

obj, the object’s position inthe inertial frame. Using the homogeneous transformationsderived in the previous sections we have

Λq = Cpcobj = CT c

g T gb T b

vT bI pI

obj.

Solving for pIobj gives

pIobj = [CT c

g T gb T b

vT vI ]−1Λq. (8)

Therefore, pIobj can be determined when λ is known.

2.7 Image Depth

The image depth λ refers to the distance along the camera’soptical axis to the object of interest in the image (Ma et al.,2003). In this paper we describe a technique for estimating λbased on a flat earth assumption. A similar technique can beused if a terrain map is available.

Let pcc be the location of the camera’s optical center. If pccis resolved in the camera frame we have pc

cc = (0, 0, 0, 1)T .Therefore, resolving in the inertial frame gives

pIcc =

xIcc

yIcc

zIcc1

= [T c

g T gb T b

vT vI ]−1

0001

. (9)

Figure 4 also shows the location q = [xip yip 1 1]T . De-fine qI

obj as q resolved in the inertial frame, i.e.,

qIobj =

xIobj

yIobj

zIobj1

= [CT c

g T gb T b

vT vI ]−1q. (10)

Fig. 4. The range to the target λ, is estimated using a flat earth modeland knowledge of the location and orientation of the MAV and itscamera system.

Note from Figure 4 that the flat earth model implies thatthe relationship between the z-components of qI

obj and pIcc is

given by

0 = zIcc + λ

(zI

obj − zIcc

). (11)

If a terrain model is known, the zero on the left-hand sideof (11) would be modified to reflect the altitude at the pointwhere the optical axis intersects the terrain. Since both zI

ccand zI

obj are known from (9) and (10) respectively, λ can becomputed as

λ =zI

cc

zIcc − zI

obj. (12)

Since the inertial Z-axis, ZI , is defined positive towardthe center of the earth, zI

cc will be negative for flight altitudesgreater than the calibrated zero. Thus, (12) yields a positivevalue for λ, as expected.

2.8 Target Location

Given λ, the inertial location of the object is given by

pIobj = [CT c

g T gb T b

vT vI ]−1Λq

= T Iv T v

b T bg T g

c C−1Λq , (13)

or equivalently, in the more computationally efficient form

pIobj = pI

cc + λ(qI

obj − pIcc

), (14)

where p represents the first three elements or p.Using these equations, we can estimate the geo-location

of a target using the telemetry data from the MAV and atime-synchronized video frame containing the target. Unfor-tunately, every term on the right-hand side of Eq. (13) is com-puted using measured (i.e. noisy and biased) data. In particu-lar, the transformation matrices (T ) and Λ are computed usingsensor readings, which for MAVs are typically low grade. Inthe next section we discuss the effects of low quality sensorson the estimation error and introduce four techniques that canbe used to reduce the error.

Page 6: Vision-based Target Geo-location Using a Fixed-wing

B. Barber et al.: Geolocation using MAVs 5

3 Enhancing the Geo-location Accuracy

Sensor noise and uncertainty in the MAV geometry intro-duces error in the geo-location estimate provided by Eq. (13).Figure 5 shows the results of a flight test using the MAV sys-tem described in Section 4.1. The MAV was commanded toorbit the target location and a color segmentation algorithmwas used to track the target location in the image. The error(in meters) of the raw estimates of the geo-location of the tar-get are shown in Figure 5. The raw estimates have errors thatrange from 20 to 40 meters.

0 20 40 60 80 100 1205

10

15

20

25

30

35

40

45

Sample Number

Err

or (

m)

Fig. 5. The error, in meters, of raw geo-location estimates obtainedby using Eq. (13). Sensor noise and geometric uncertainties result inestimation errors of 20 to 40 meters.

The primary contribution of this paper is to propose fourtechniques for enhancing the accuracy of the geo-location es-timate. These techniques include: (1) recursive least squaresfiltering, (2) bias estimation, (3) flight path selection, and (4)wind estimation. Each technique is discussed in more detailbelow.

3.1 Recursive Least Squares

As shown in Figure 5, there is significant noise in the estima-tion error. In this paper, we assume that the target location isstationary. Therefore, a well known technique to remove theestimation error is to use a recursive least squares (RLS) fil-ter (Moon and Stirling, 2000). The RLS filter minimizes theaverage squared error of the estimate using an algorithm thatonly requires a scalar division at each step and is thereforesuitable for on-line implementation.

The result of using the RLS filter on the data shown inFigure 5 is shown in Figure 6. Note that the RLS filter quicklyconverges to an error of approximately five meters. While theimprovement in geo-location accuracy is significant, it willbe shown in the following three sections that it is possible tofurther improve the geo-location accuracy by exploiting thestructure inherent in the problem.

0 20 40 60 80 100 1200

5

10

15

20

25

30

35

40

45

Number of Samples

Err

or (

m)

Error of Instaneous EstimatesError of RLS Filtered Estimate

Fig. 6. Result of using the RLS algorithm. The error in the geo-location estimate decreases from 20 to 40m to approximately 5 me-ters.

3.2 Bias Estimation

The sensor noise and the geometric uncertainties introduceboth zero-mean noise and a constant bias. While the RLS al-gorithm is effective at removing the zero-mean noise, it is noteffective at removing the bias. The geo-location error is par-ticularly sensitive to biases in the roll and the gimbal azimuthmeasurement, as well as the relative orientation of the gimbal.Although bias errors can be mitigated by advanced attitudeestimation schemes and precise mounting and calibration ofthe camera gimbal, it is impossible to totally remove thesebias errors.

Fortunately, by executing a loiter pattern around a specificobject, the biases and zero-mean noise can be easily distin-guished. Because the bias errors are uncorrelated with respectto position along the desired flight path, and the flight path issymmetric about the target, the bias errors result in geoloca-tion estimates that are also symmetric about the target. Forthe case of a circular flight path centered at the target, thisresults in the localization estimates forming a ring around thedesired target, as shown in Figure 7.

If the biases are removed from the localization estimates,the geo-location errors would collapse to a 2-D Gaussian dis-tribution centered at the object, as shown in Figure 8. Thecovariance of the distribution would be a function of the zero-mean noise on raw attitude estimates and the selected radiusand altitude of the loiter trajectory.

Since the biases may change from flight to flight, an on-line learning algorithm was developed to estimate and removethem. The algorithm exploits the observation that biases adda ring-like structure to the location estimates, effectively in-creasing the variance of the estimates. Therefore, if the flightpath is a circular orbit about the target and the bias errors areuncorrelated with position along the flight path, then the dis-tribution of location estimates with the smallest variance willbe obtained from the unbiased estimate of the target location.As a result, the bias estimation problem can be posed as thefollowing optimization problem:

minαaz,αel,φ,θ,ψ,z

σ2localization(αaz, αel, φ, θ, ψ, z) (15)

Page 7: Vision-based Target Geo-location Using a Fixed-wing

6 B. Barber et al.: Geolocation using MAVs

−80 −60 −40 −20 0 20 40 60 80−80

−60

−40

−20

0

20

40

60

80

RLS Target EstimateVehicle LocationTarget Estimate

Fig. 7. Localization error before gimbal calibration. The errors in thelocalization estimates exhibit a circular pattern about the target loca-tion due to the biases introduced by imprecisely calibrated sensorsand geometric modeling errors.

where αaz, αel, φ, θ, ψ, and z are the biases associated withthe measurements of gimbal azimuth, gimbal elevation, roll,pitch, yaw, and altitude, respectively.

For the fixed-wing MAVs used in this paper, the center ofmass and the gimbal center are located close to each other.Therefore, as can be seen from Figure 1 the rotation axes forheading ψ, and gimbal azimuth angle αaz are nearly aligned,making biases introduced by these quantities, virtually indis-tinguishable. In an orbit pattern, the gimbal azimuth anglewill be close to ninety degrees, which implies that the air-frame roll axis and the gimbal elevation axis will be nearlyaligned, again making biases introduced by φ and αel nearlyindistinguishable. Even when the flight path is not an orbit, ifthe body pitch angle is close to zero, then biases introducedby the roll and heading measurements are indistinguishablefrom biases introduced by gimbal elevation and azimuth mea-surements. For the MAVs used in this paper, the angle of at-tack is approximately five degrees, implying that the pitch an-gle is close to zero for constant altitude flight patterns. Exten-sive flight testing has also shown that for certain altitude-orbitradius pairs, the estimation error is not significantly affectedby biases in pitch and altitude. Therefore, bias estimation canbe reduced to the following optimization problem:

minαaz,αel

σ2localization(αaz, αel). (16)

Eq. (16) is solved on-line using a quasi Newton method.Once the biases have been determined, their effects are

removed by using the corrected measurements for αel and αaz

in Eq. (13) to obtain unbiased raw estimates. The effects ofbias estimation and correction on the dispersion of raw targetestimates can be seen in Figure 8. It is clear from Figure 8that the ring structure characteristic of bias errors has beendramatically reduced.

3.3 Flight Path Selection

With the bias removed, we turn our attention to minimizingthe variance of the resulting zero-mean estimation error. Thevariance is primarily due to noisy estimates of the attitude and

−100 −80 −60 −40 −20 0 20 40 60 80 100−80

−60

−40

−20

0

20

40

60

80

Cumulative Target EstimateVehicle LocationTarget Estimate

Fig. 8. Localization error after gimbal calibration. The structuredbias in the estimates has been removed.

the position of the MAV. Redding (2005) presents a study ofthe sensitivity of Eq. (13) to errors in attitude and position.The conclusion of that study is that for circular orbits, thegeo-location estimate is most sensitive to errors in roll. How-ever, the sensitivity is a strong function of altitude and orbitradius. As shown in Figure 9, as the altitude of the MAV in-creases, the distance to the target also increases. Therefore, afixed error in roll, produces a localization error that increaseswith altitude. On the other hand, Figure 9 illustrates that lowaltitudes also enhance the error sensitivity since the angle tothe target becomes more oblique as altitude decreases. For anidentical error in roll, increasingly oblique angles produce alarger localization error.

Localization error sensitivityincreases with altitude

Localization error sensitivityincreases with obliqueness

Fig. 9. The sensitivity of the localization error to imprecise attitudeestimates, is highly dependent on altitude. At low altitudes, the sen-sitivity is due to the obliqueness of the angle to the target. At highaltitudes, the sensitivity is due to distance from the target.

To explore the relationship between sensitivity to roll atti-tude and the altitude and orbit radius, consider the simplifiedsituation shown in Figure 10, where we have assumed that thecamera is aligned with the right wing and is pointing directlyat the target, and that the pitch angle is zero. Therefore, thenominal roll angle is φnom = tan−1 h

R where h is the altitude

Page 8: Vision-based Target Geo-location Using a Fixed-wing

B. Barber et al.: Geolocation using MAVs 7

and R is orbit radius. If the roll angle deviates from the nom-inal by δφ, Eq. (13) will indicate a geo-location of R − δRinstead of R. For the simplified geometry shown in Figure 10

Fig. 10. Simplified geometry used to derive an expression for thesensitivity of the localization error to the roll angle as a function ofthe orbit altitude and radius.

we have that

R− δR =h

tan(φ + δφ).

Therefore, using the relations tan(A+B) = tan(A)+tan B1−tan(A) tan(B)

and tan φ = hR , we obtain

δR = R− h

tan(φ + δφ)

= R− h1− tan φ tan δφ

tan φ + tan δφ

= R− hR− h tan δφ

h + R tan δφ

=(R2 + h2) tan δφ

h + R tan δφ. (17)

Figure 11 shows a plot of Eq. (17) as a function of h forδφ = 5 degrees and R = 100 meters. It is clear that for a fixedradius, there is an optimal altitude that minimizes the sensi-tivity of the localization error to deviations in the roll attitude.The optimal altitude is found by differentiating Eq. (17) withrespect to h and solving for the unique minimizer:

h∗ = R

(1− sin δφ

cos δφ

). (18)

Therefore, if we have an estimate for the average (or max-imum) roll attitude error, and there is a desired orbit radius,e.g., the minimum turn radius, then Eq. (18) indicates the ap-propriate altitude for minimizing the sensitivity of the geo-location estimate to errors in the roll attitude measurement.

As an alternative, the computer vision algorithm may re-quire a specific number of pixels-on-target to effectively trackthe target. In order to talk more generally about the notion ofpixels-on-target, we define the pixel density to be the numberof pixels imaging a square meter of area on the ground. Let µ

0 50 100 150 200 250 300 350 400 450 50015

20

25

30

35

40

45

50

altitude (m)

δ R

(m

)

Fig. 11. A plot of the geo-location error as a function of altitude fora fixed radius and a fixed roll attitude error. The optimal altitude h∗

in indicated by a circle.

denote pixel density in units of pixels per meters squared. Ifη is the field of view of the lens then the area imaged by thecamera can be computed by referencing Figure 12. The totalarea is given by

Area = (d1 + d2)(R2 −R1)

= (R2 + R1)(R2 −R1) tanη

2

= h2

(1

tan2(φ− η

2

) − 1tan2

(φ + η

2

))

tanη

2

4= h2A.

If P is the number of pixels on the camera, then the pixeldensity is given by

µ =P

h2A . (19)

Fig. 12. Assuming a flat earth model, the area imaged by the cameracan be computed by knowledge of the roll angle φ the lens field η,and the altitude h.

Suppose that the computer vision algorithm requires a de-sired pixel density of µd, then using Eqs. (19) and (18) we get

Page 9: Vision-based Target Geo-location Using a Fixed-wing

8 B. Barber et al.: Geolocation using MAVs

that the optimal altitude and orbit radius are given by

h∗ =

√P

µdA

R∗ = h∗(

cos δφ

1− sin δφ

).

3.4 Wind Estimation

For MAVs, winds that are a significant percentage of the air-speed are almost always present. Therefore, the airframe istypically required to “crab” into the wind, causing the course(direction of travel) to deviate from the heading (direction ofthe body frame x-axis). Since the camera is mounted to thebody, the difference between course and heading, if it is notaccounted for, will cause significant errors in the geo-locationestimates. In this section, the heading angle is denoted by ψand the course angle will be denoted by χ.

To illustrate the effect of wind, Figure 13 shows the errorin the geo-location estimate generated by a simulation of acomplete orbit in significant wind. The simulated MAV hasan airspeed of 18 m/s and the wind is from the East at 9m/s.Note that since the MAV must crab right into the wind, the

−30 −20 −10 0 10 20 30−30

−20

−10

0

10

20

30

WindN

E

Geo−location Estimate Errors

Fig. 13. Effect of wind on geo-location estimates

geo-location errors shown in Figure 13 are significantly bi-ased to the South. We note that wind does not introduce aconstant bias in the estimate and can therefore not be removedby the techniques discussed in Section 3.2. To compensate forwind, the direction and magnitude of the wind is estimatedon-line from flight data and is used to modify ψ in Eq. (13).We will assume that GPS measurements are available but thatthe MAV is not equipped with magnetometers.

The relationship between windspeed, groundspeed, andairspeed is illustrated in Figure 14, where Vw is the wind-speed, Vg is the groundspeed, Va is the airspeed, and ξ is thewind direction, and can be expressed as

Vg = Va cos (ψ − χ) + Vw cos (ξ − χ) . (20)

The GPS sensor measures Vg and χ, and a differential pres-sure sensor can be used to measure Va. The law of cosines

cos (A) =−a2 + b2 + c2

2bc,

heading, ψ

course, χ

VgVa

ground track

Vw

ψ–χ

ξ–χ

ξ

Fig. 14. Relationship between ground, air, and wind velocities.

can be used to remove ψ from Eq. (20), resulting in the ex-pression

Vg =

(V 2

g + V 2a − V 2

w

2Vg

)+ Vw cos (ξ − χ) .

Rearranging we obtain

V 2g − V 2

a + V 2w − 2VgVw cos (ξ − χ) = 0. (21)

To estimate Vw and ξ we collect on-line measurements of Vg,Va, and χ and use a quasi-Newton nonlinear equation solverto minimize the objective function

n∑

i=0

(V 2

gi− V 2

ai+ V 2

w − 2VgiVw cos (ξ − χi))2

, (22)

where the index i denotes a measurement sample.To quantify the effectiveness of our wind estimation

scheme, we flew a MAV in windy conditions in an orbitpattern. Since we do not have the instrumentation to mea-sure true wind speed at the elevations that the MAV is flying(100-200 meters), to measure the accuracy of our wind es-timation method, we used the estimated windspeed and themeasured airspeed to estimate ground speed, and comparedthe estimate with the measured GPS ground speed. Figure 15shows actual flight data recorded while the MAV was flyingin winds of approximately 9 m/s from the north. Figure 15shows the efficacy of our method by plotting the raw air-speed measurements, as well as the estimated airspeed us-ing the estimated windspeed and the GPS measured ground-speed. Results demonstrating the efficacy of the wind correc-tion scheme for geo-location are discussed in Section 4.2.

The wind estimation scheme discussed in this section es-timates a constant wind and does not account for gusts. On

Page 10: Vision-based Target Geo-location Using a Fixed-wing

B. Barber et al.: Geolocation using MAVs 9

−150 −100 −50 0 50 100 150−15

−10

−5

0

5

10

15

χ (degrees)

Vg −

Va (

m/s

)

MeasuredPredicted

Vw

= 9.1 m/s

ξ = 136 degrees

Fig. 15. Wind solution for a dataset taken in high-wind conditionsVw ≈ 9 m/s.

the other hand, flight test data suggest that the gusts are es-sentially normally distributed about the constant wind and aretherefore removed by the RLS filter.

4 Results

4.1 Hardware Testbed

BYU has developed a reliable and robust platform for testingunmanned air vehicles (Beard et al., 2005). Figure 16 showsthe key elements of the testbed. The first frame shows the Pro-cerus1 Kestrel autopilot (originally developed at BYU) whichwhich is equipped with a Rabbit 3400 29 MHz processor, rategyros, accelerometers, absolute and differential pressure sen-sors. The autopilot measures 3.8× 5.1× 1.9 cm and weighs17 grams.

The second frame in Figure 16 shows the airframe usedfor the flight tests reported in this paper. The airframe isa flying wing with expanded payload bay and servo-drivenelevons designed by the BYU Magicc Lab. It has a wingspanof 152 cm, a length of 58 cm, and a width of 12 cm. It weighs1.1 kg unloaded and 2.0 kg fully loaded. It is propelled by abrushless electric motor which uses an electronic speed con-trol and is fueled by four multi-cell lithium polymer batteries.Typical speeds for the aircraft are between 15 and 20 metersper second (33 and 45 miles per hour). Maximum flight timefor this aircraft is between 1 and 2 hours depending on exter-nal conditions and the mission it is required to fly.

The third frame in Figure 16 shows the ground stationcomponents. A laptop runs the Virtual Cockpit software thatinterfaces through a communication box to the MAV. An RCtransmitter is used as a stand-by fail-safe mechanism to en-sure safe operations.

The gimbal and camera used for this paper are shown inFigure 17. The gimbal was designed and constructed by theBYU Magicc Lab. It weighs 150 grams, and has a range ofmotion of 135 degrees in azimuth (at 333 degrees/sec) and120 degrees in elevation (at 260 degrees/sec). The camera isa Panasonic KX-141 with 480 lines of resolution. The fieldof view of the lens is 30 degrees.

1 http://procerusuav.com/

Fig. 17. The gimbal and camera used for the results in the paper areshown unmounted from the MAV and without its protective dome.

4.2 Geo-location Accuracy

Using the MAV system described above, in conjunction withthe geo-location techniques described in this paper, we haverepeatedly (15 to 20 experiments in a variety of weather con-ditions) geo-located well defined visual objects, with errorsranging between 2 and 4 meters. (The true value of the targetis measured using the same commercial grade GPS receiverused on the MAV. Note that the geo-location techniques dis-cussed in this paper do not remove GPS bias. A military gradeGPS, or differential GPS would remove this bias.) The resultsof two particular flight tests are shown in Figures 8 and 18.The outer blue dots represent the GPS location of the MAV,while the inner green dots are the raw geo-location estimates.All location values are in reference to the true location of thetarget (as measured by GPS). The flight tests shown in Fig-ure 8 were performed on a day with relatively little wind,while the flight tests shown in Figure 18 were performedin extremely high-wind conditions (>10 m/s). Note that thehigh-wind conditions cause the irregular flight pattern shownin Figure 18. In both Figures, the accuracy of the raw geo-location estimates is typically less than 20 meters, althoughthere are some outliers in the high-wind case. The black dot inthe center of the figures represents the final geo-location esti-mate, and is approximately three meters away from the targetin the low-wind case, and two meters away in the high-windcase.

In Figure 19, we show the effects of using the RLS sys-tem to derive the final geo-location estimate. In this plot, thex-axis denotes different raw estimates of geo-location (typ-ically estimated about three times per second), while the y-axis denotes the magnitude of the localization error. The datain this graph corresponds with the low-wind experiment plot-ted in Figure 8. As illustrated in Figure 19, the raw estimatescan be up to 20 m in error. However, the RLS filtered estimatequickly converges to less than five meters of error.

Page 11: Vision-based Target Geo-location Using a Fixed-wing

10 B. Barber et al.: Geolocation using MAVs

Fig. 16. (a) Procerus’ Kestrel autopilot. (b) MAV airframe. (c) Ground station components.

−200 −100 0 100 200

−200

−150

−100

−50

0

50

100

150

200

Error = 1.2617

RLS Target EstimateVehicle LocationTarget Estimate

Fig. 18. Localization results in high-wind conditions

0 50 100 150 2000

5

10

15

20

25

Number of Samples

Err

or (

m)

Error of Instaneous EstimatesError of Filtered Estimate

Fig. 19. Efficacy of RLS algorithm

5 Conclusions

This paper introduces a system for vision-based target geo-localization from a fixed-wing micro air vehicle. The geome-try required to produce raw localization estimates is discussedin detail. The primary contribution of the paper is the descrip-tion of four key techniques for mitigating the error in the rawestimates. These techniques include RLS filtering, bias es-timation, flight path selection, and wind estimation. The al-

gorithms were successfully flight tested on a micro air ve-hicle using Procerus’ Kestrel autopilot and a BYU designedgimbal system. Geo-location errors below five meters wererepeatedly obtained under a variety of weather conditions.Throughout the paper we have assumed a flat earth modeland a stationary target. Future research will include general-izing the techniques to non-flat terrain and to moving groundtargets.

Acknowledgements. This work was funded by AFOSR award num-ber FA9550-04-1-0209 and the Utah State Centers of ExcellenceProgram. The authors would like to thank Andrew Eldridge andDavid Johansen for their assistance in obtaining flight results.

References

Beard, R., Kingston, D., Quigley, M., Snyder, D., Christiansen, R.,Johnson, W., McLain, T., and Goodrich, M. (2005). Autonomousvehicle technologies for small fixed wing UAVs. AIAA Jour-nal of Aerospace Computing, Information, and Communication,2(1):92–108.

Campbell, M. E. and Wheeler, M. (2006). A vision based geoloca-tion tracking system for uavs. In Proceedings of the AIAA Guid-ance, Navigation, and Control Conference and Exhibit, Key-stone, Colorado. Paper No. AIAA-2006-6246.

Chaimowicz, L., Grocholsky, B., Keller, J. F., Kumar, V., and Taylor,C. J. (2004). Experiments in Multirobot Air-Ground Coordina-tion. In Proceedings of the 2004 International Conference onRobotics and Automation, pages 4053–4058, New Orleans, LA.

Chroust, S. G. and Vincze, M. (2003). Fusion of Vision and InertialData for Motion and Structure Estimation. Journal of RoboticSystems, 21:73–83.

Dobrokhodov, V. N., Kaminer, I. I., and Jones, K. D. (2006). Vision-based tracking and motion estimation for moving targets usingsmall uavs. In Proceedings of the AIAA Guidance, Navigation,and Control Conference and Exhibit, Keystone, Colorado. Paperno. AIAA-2006-6606.

Eldredge, A. M. (2006). Improved state estimation for miniature airvehicles. Master’s thesis, Brigham Young University.

Frew, E. and Rock, S. (2003). Trajectory Generation for Monocular-Vision Based Tracking of a Constant-Velocity Target. In Pro-ceedings of the 2003 IEEE International Conference on Roboticsand Automation.

Gibbins, D., Roberts, P., and Swierkowski, L. (2004). A video geo-location and image enhancement tool for small unmanned airvehicles (UAVs). In Intelligent Sensors, Sensor Networks andInformation Processing Conference, 2004. Proceedings of the2004, pages 469–473.

Kumar, R., Samarasekera, S., Hsu, S., and Hanna, K. (2000). Regis-tration of highly-oblique and zoomed in aerial video to reference

Page 12: Vision-based Target Geo-location Using a Fixed-wing

B. Barber et al.: Geolocation using MAVs 11

imagery. In Proceedings of the IEEE Computer Society Com-puter Vision and Pattern Recognition Conference, Barcelona,Spain.

Kumar, R., Sawhney, H., Asmuth, J., Pope, A., and Hsu, S. (1998).Registration of video to geo-referenced imagery. In PatternRecognition, 1998. Proceedings. Fourteenth International Con-ference on, volume 2, pages 1393–1400.

Ma, Y., Soatto, S., Kosecka, J., and Sastry, S. S. (2003). An Invita-tion to 3-D Vision From Images to Geometric Models. Springer-Verlag, New York, USA.

Moon, T. K. and Stirling, W. C. (2000). Mathematical Methods andAlgorithms. Prentice Hall, Englewood Cliffs, New Jersey.

Office of the Secretary of Defense, editor (2002). Unmanned AerialVehicles Roadmap 2002-2027. United States Government, Wash-ington DC, USA.

Redding, J., McLain, T. W., Beard, R. W., and Taylor, C. (2006).Vision-based target localization from a fixed-wing miniature airvehicle. In Proceedings of the American Control Conference,pages 2862–2867, Minneapolis, Minnesota.

Redding, J. D. (2005). Vision based target localization from asmall fixed-wing unmanned air vehicle. Master’s thesis, BrighamYoung University, Provo, Utah 84602.

Rysdyk, R. (2003). UAV Path Following for Constant Line-of-sight.In 2nd AIAA “Unmanned Unlimited” Systems, Technologies andOperations Aerospace, Land and Sea Conference.

Saeedi, P., Lowe, D. G., and Lawrence, P. D. (2003). 3D Localiza-tion and Tracking in Unknown Environments. In Proceedingsof the IEEE Conference on Robotics and Automation, volume 1,pages 1297–1303.

Schultz, H., Hanson, A., Riseman, E., Stolle, F., and Zhu, Z. (2000).A system for real-time generation of geo-referenced terrain mod-els. SPIE Enabling Technologies for Law Enforcement, Boston,MA (USA).

Stolle, S. and Rysdyk, R. (2003). Flight Path Following Guidancefor Unmanned Air Vehicles with Pan-Tilt Camera for Target Ob-servation. In 22nd Digital Avionics Systems Conference.

Trucco, E. and Verri, A. (2002). Introductory Techniques for 3-DComputer Vision. Prentice-Hall, New Jersey, USA.

Vidal, R. and Sastry, S. (2002). Vision-Based Detection of Au-tonomous Vehicles for Pursuit-Evasion Games. In IFAC WorldCongress on Automatic Control, Barcelona, Spain.

Wang, I., Dobrokhodov, V., Kaminer, I., and Jones, K. (2005). OnVision-Based Target Tracking and Range Estimation for SmallUAVs. In 2005 AIAA Guidance, Navigation, and Control Con-ference and Exhibit, pages 1–11.

Whang, I. H., Dobrokhodov, V. N., Kaminer, I. I., and Jones, K. D.(2005). On vision-based tracking and range estimation for smalluavs. In Proceedings of the AIAA Guidance, Navigation, andControl Conference and Exhibit, San Francisco, CA. Paper no.AIAA-2005-6401.