27
Orienation Tracking based Panorama Stitching using Unscented Kalman Filter Nitin J. Sanket School of Engineering and Applied Science University of Pennsylvania Email: [email protected] Abstract—This project presents an approach for orientation tracking using different filters like the Complementary Filter (CF), Kalman Filter (KF) and Unscented Kalman Filter (UKF). The tracked orientation/attitde is used to stitch a panorama in cylindrical co-ordinates assuming no translation. An error metric for euler angles is defined and the error for the results are presented. UKF outperforms CF and KF as UKF as it is the closest to Vicon results and is the least susceptible to drift. I. PROBLEM STATEMENT The aim of the project was to estimate the bias and scale parameters of a IMU. These parameters are then used to correct the IMU measurements and run different filters to track the attitude. This attitude is then used to construct a cylindrical panorama. The algorithm was tested on 1 unseen set and 10 training sets. II. ESTIMATING BIAS Let the Bias of the accelerometer be B and the Scale factor be S. Let the accelerometer values for one axis be x. g 0 is the gravity vector in IMU frame (B). The following equations are used to calculate Bias and Scale (Finds the least squares fit). (here represents pseudo-inverse). Here R W B comes from the synced Vicon data. Sx + B = g 0 g 0 = ( R W B ) T g g = [0, 0, 1] 0 x 1 1 x 2 1 . . . . . . x n 1 S B = g 1 0 g 2 0 . . . g n 0 S B = x 1 1 x 2 1 . . . . . . x n 1 g 1 0 g 2 0 . . . g n 0 This bias for the gyroscope was computed using the mean of first k values in the dataset, as the dataset was assumed to start from rest. k was chosen as 200. The bias B for one axis of the gyroscope measurements x is calculated as B = 1 k X i x i The scale factor S for the gyroscope was obtained from the manufacturer’s datasheet as S= 3300 1023 π 180 1 3.333333 III. COMPLEMENTARY FILTER The idea behind the complementary filter [1] is that attitude is computed separately from both accelerometer and gyro- scope. The IMU body axis is defined as Z up, X forward and Y left (looking from IMU’s point of view). The accelerometer is symmetric with respect to Z axis hence it doesn’t provide any information about Yaw (ψ) angle. The other two angles [2] are calculated as follows: Roll, φ = tan -1 a y a x 2 + a z 2 P itch, θ = tan -1 -a x p a y 2 + a z 2 ! However, generally the IMU is never completely vertical, and hence the Yaw can be retrieved as Y aw, ψ = tan -1 p a x 2 + a y 2 a z ! The gyroscope values are integrated to obtain the angles. The integration is performed using quaternions and then the euler angles are computed from the quaternions. The update quaternion is calculated as below: α Δ = |~ ω k | Δt ~e Δ = ~ ω k |~ ω k | q Δ = ( cos ( αΔ 2 ) ,~e Δ sin ( αΔ 2 )) To calculate current state quaternion the following equations are used α = |~ ω k | ~e = ~ ω k |~ ω k | q k = ( cos ( α 2 ) ,~e sin ( α 2 )) Now, the new state quaternion is described as (k is the current state and k +1 is the next state), q k+1 = q k q Δ

Orienation Tracking based Panorama Stitching using ...Orienation Tracking based Panorama Stitching using Unscented Kalman Filter Nitin J. Sanket School of Engineering and Applied Science

  • Upload
    others

  • View
    17

  • Download
    0

Embed Size (px)

Citation preview

Page 1: Orienation Tracking based Panorama Stitching using ...Orienation Tracking based Panorama Stitching using Unscented Kalman Filter Nitin J. Sanket School of Engineering and Applied Science

Orienation Tracking based Panorama Stitchingusing Unscented Kalman Filter

Nitin J. SanketSchool of Engineering and

Applied ScienceUniversity of Pennsylvania

Email: [email protected]

Abstract—This project presents an approach for orientationtracking using different filters like the Complementary Filter(CF), Kalman Filter (KF) and Unscented Kalman Filter (UKF).The tracked orientation/attitde is used to stitch a panorama incylindrical co-ordinates assuming no translation. An error metricfor euler angles is defined and the error for the results arepresented. UKF outperforms CF and KF as UKF as it is theclosest to Vicon results and is the least susceptible to drift.

I. PROBLEM STATEMENT

The aim of the project was to estimate the bias and scaleparameters of a IMU. These parameters are then used tocorrect the IMU measurements and run different filters to trackthe attitude. This attitude is then used to construct a cylindricalpanorama. The algorithm was tested on 1 unseen set and 10training sets.

II. ESTIMATING BIAS

Let the Bias of the accelerometer be B and the Scale factorbe S. Let the accelerometer values for one axis be x. g′ is thegravity vector in IMU frame (B). The following equations areused to calculate Bias and Scale (Finds the least squares fit).(here † represents pseudo-inverse). Here RWB comes from thesynced Vicon data.

Sx+B = g′

g′ =(RWB

)Tg

g = [0, 0, 1]′x1 1x2 1...

...xn 1

[SB

]=

g1′

g2′

...gn′

[SB

]=

x1 1x2 1...

...xn 1

g1′

g2′

...gn′

This bias for the gyroscope was computed using the mean offirst k values in the dataset, as the dataset was assumed tostart from rest. k was chosen as 200. The bias B for one axisof the gyroscope measurements x is calculated as

B =1

k

∑i

xi

The scale factor S for the gyroscope was obtained from themanufacturer’s datasheet as

S =3300

1023

π

180

1

3.333333

III. COMPLEMENTARY FILTER

The idea behind the complementary filter [1] is that attitudeis computed separately from both accelerometer and gyro-scope. The IMU body axis is defined as Z up, X forward andY left (looking from IMU’s point of view). The accelerometeris symmetric with respect to Z axis hence it doesn’t provideany information about Yaw (ψ) angle. The other two angles[2] are calculated as follows:

Roll, φ = tan−1

(ay√

ax2 + az2

)

Pitch, θ = tan−1

(−ax√

ay2 + az2

)However, generally the IMU is never completely vertical, andhence the Yaw can be retrieved as

Y aw, ψ = tan−1

(√ax2 + ay2

az

)The gyroscope values are integrated to obtain the angles.The integration is performed using quaternions and then theeuler angles are computed from the quaternions. The updatequaternion is calculated as below:

α∆ = |~ωk|∆t~e∆ = ~ωk

|~ωk|q∆ =

(cos(α∆

2

), ~e∆ sin

(α∆

2

))To calculate current state quaternion the following equationsare used

α = |~ωk|~e = ~ωk

|~ωk|qk =

(cos(α2

), ~e sin

(α2

))Now, the new state quaternion is described as (k is the currentstate and k + 1 is the next state),

qk+1 = qkq∆

Page 2: Orienation Tracking based Panorama Stitching using ...Orienation Tracking based Panorama Stitching using Unscented Kalman Filter Nitin J. Sanket School of Engineering and Applied Science

The euler angles are calculated from the quaternion as,

φθψ

=

tan−1

(2(q0q1+q2q3)1−2(q2

1+q22)

)sin−1 (2(q0q2 − q3q1))

tan−1(

2(q0q3+q1q2)1−2(q2

2+q23)

)

The angle measurements are blended as follows in the com-plementary filter, φ

θψ

CF

=

α 0 00 β 00 0 γ

φθψ

acc

+

1− α 0 00 1− β 00 0 1− γ

φθψ

gyro

Here α, βand, γ are the mixing parameters. α was chosenas 0.75, β was chosen as 0.75 and γ was chosen as 1.0.Effectively the gyro measurements are high pass filtered toremove drift and accelerometer measurements are low passfiltered to remove noise.

IV. KALMAN FILTER

The issue with a complementary filter is that the mixingcoefficient are constants and hence does not perform wellin the long run due to huge uncompensated drift. This isimplemented in a simple linear Kalman Filter. However, due tosome implementation bug, the Kalman filter has worse resultsthan the complementary filter (this can also be because ofnot accounting for angle flips in euler angles and non usageof quaternions). The equations for the Kalman Filter [3] arediscussed next.

A. Process Update

The prior on the state is given by,

p(x0) ∼ N (µ0,Σ0)

The transition update concept is,

xk = Akxk−1 + ηk

ηk ∼ N (0, Qk)

Here, Ak is the process model. The actual transition updateequations for mean and covariance are,

µk = Akµk−1

AkΣk−1ATk +Qk

Here, the noise grows due to added uncertainty due to processmodel. This is the MLE estimate. Here Qk is the process noisecovariance matrix.

B. Measurement Update

The measurement update concept is,

zk = Ckxk + νk

νk ∼ N (0, Rk)

The actual measurement update equations for mean and co-variance are,

µk = µk +Kk(zk − Ckµk)

Here, zk is the measurement and Ck is the measurementmodel.

Σk = Σk −KkCk

Where Kk is the kalman gain and is calculated as,

Kk = ΣkCTk (CkΣkC

Tk +Rk)−1

Here, the noise drops due reduction in uncertainty fromobservation. This is the MAP estimate.

C. State, Process Model and Measurement Model Matrices

The State was defined as,

x =

φθψωxωyωz

The process model matrix Ak is given by,

Ak =

1 0 0 ∆t 0 00 1 0 0 ∆t 00 0 1 0 0 ∆t0 0 0 1 0 00 0 0 0 1 00 0 0 0 0 1

which is used as xk = Akxk−1. The observation model matrixis given by,

Ck =

1 0 0 0 0 00 1 0 0 0 00 0 1 0 0 00 0 0 1 0 00 0 0 0 1 00 0 0 0 0 1

The covariance was initialized to 0.01 × I6×6, Qk =diag([0.01 ∗ ones(1, 3), 0.1 ∗ ones(1, 3)]) and Rk =diag([0.01 ∗ ones(1, 3), 0.1 ∗ ones(1, 3)]).

Page 3: Orienation Tracking based Panorama Stitching using ...Orienation Tracking based Panorama Stitching using Unscented Kalman Filter Nitin J. Sanket School of Engineering and Applied Science

V. UNSCENTED KALMAN FILTER

A. Explanation of the Filter

The idea behind Unscented Kalman Filter [4] is that itrespects the non-linearity in the process model. The state isdefined as

x =

q0

q1

q2

q3

ωxωyωz

where [q0, q1, q2, q3]T represents a unit quaternion withq0

2 + q12 + q2

2 + q32 = 1 hence represents only 3 degrees of

freedom, not 4.

Initialization:Initialize P0 as the initial covariance matrix of size 6 × 6,state is unit quaternion and zero angular velocities, R is themeasurement noise and Q is the process noise.Generation of Sigma Points:The square root matrix is found using,

S =√

(Pk−1 +Q)

Here Q is the process model covariance. The disturbance(noise) of the sigma points is calculated using [5],

Wi,i+n = columns(±√nS)

here n is chosen instead of 2n as it was more numerically sta-ble and converged faster. here n is the number of independentvariables in the state (6 in this case). The Sigma Points arecomputed using,

Xi = xk−1 +Wi

Xi =

[qk−1qW~ωk + ~ωW

]where ~ωW is the omega part of W and qW is the quaternionpart of W .Process Model:The process model assumes that the angular velocity remainsconstant during the time interval ∆t.

ωk = ωk−1

q∆ =

[cos

(|~ωk−1|∆t

2

),~ωk−1

|~ωk−1|sin

(|~ωk−1|∆t

2

)]The updated sigma points are computed using,

Yi = A(Xi, 0) =

[qk−1qWq∆

~ωk−1 + ~ωW

]Calculate Mean of Sigma Points:Now, use Intrinsic Gradient Descent to find the mean quater-nion.

Data: YResult: ˆxkInitialize q as X1 while t¡MaxIter or |e| ≤Thld do

for ∀i do~ei = qiq

−1t

endCompute mean using,

~e =1

2n

2n∑i=1

~ei

qt+1 = eqt

end

ω =1

2n

2n∑i=1

ωi

Algorithm 1: Intrinsic Gradient Descent

Update model covariance:

Pk =1

2n

2n∑i=1

Wi′Wi

′T

Where W ′ is the mean centered W .

Wi′ =

[qiq−1

~ωi −~ω

]Measurement Model Update:

Now, compute the measurement updated transformed sigmapoints,

Zi =

[qi−1gqi~ωk

]where g is the gravity vector. Now, compute zk = meanZi.Compute measurement model covariances:The covariance corresponding to the measurement modelupdate is computed as,

Pzz =1

2n

2n∑i=1

φiφiT

here,

φi =

[qiq−1

~ωi −~ω

]The quaternions and omegas above correspond to the ones inZ .

The innovation term is given by:

νk = zk − zk

Here, zk is the observation, i.e., stacked accelerometer andgyroscope readings.

The innovation covariance is calculated using,

Pνν = Pzz +R

Here R is the measurement model covariance.

Page 4: Orienation Tracking based Panorama Stitching using ...Orienation Tracking based Panorama Stitching using Unscented Kalman Filter Nitin J. Sanket School of Engineering and Applied Science

The cross-covariance is calculated as,

Pxz =1

2n

2n∑i=1

WiφiT

Update Kalman Gain, State Covariance and State:The kalman gain is calculated as,

Kk = PxzP−1νν

Update state as,xk =ˆxk +Kkνk

Update State Covariance as,

Pk = Pk −KkPννKTk

B. Covariance Changes throughout UKF

A visualization of covariance changes though the UKF isdepicted in this subsection. Refer to Fig. 1, where we see thatthe initial covariance of the state is large (resembling a uniformdistribution). The 3-axis plot shows the orientation vector asa point in 3D space and the ellipsoid shows the covariance ofthe quaternion part of the state vector. In Fig. 2, we see thatthe initial sigma points have almost same covariance and theylook similar to the initial state covariance. The process updateon sigma increases the covariance and hence uncertainty asshown in Fig. 3. The measurement covariance is shown inFig. 4 and Final updated state covariance is shown in Fig. 5.

Fig. 1. Initial Covariance.

C. Observations during tuning the UKF Parameters

There are mainly 4 parameters which influence UKF output.Ra corresponds to noise in observation model correspondingto accelerometer values, Rg corresponds to noise in obser-vation model corresponding to gyroscope values. Also, Qaand Qg correspond to noise in process model. UKF was verysensitive to Qa, if Qa was below 79 the UKF was veryunstable. By varying Qg , there was a lag introduced mainly inYaw when the UKF was badly tuned. Ra had little influence

Fig. 2. Covariance of Sigma Points.

Fig. 3. Covariance after Process Update.

Fig. 4. Covariance of Measurement Update.

Page 5: Orienation Tracking based Panorama Stitching using ...Orienation Tracking based Panorama Stitching using Unscented Kalman Filter Nitin J. Sanket School of Engineering and Applied Science

Fig. 5. Updated State Covariance.

on yaw. Rg influenced how much the values drift and jumparound. Keeping this value to 0.01 made the trick. The finalUKF gains used were a tradeoff between lag and error.

VI. IMAGE STITCHING

A. Homography Based Image StitchingIn this case, the canvas as assumed as multiple plans i.e., a

homographic transformation was sufficient to map the image.The camera matrix is given by,

K =

fx 0 cx0 fy cy0 0 1

where fx and fy are the focal lengths in x and y respectively.cx and cy are the image center co-ordinates. A value of 240for fy and 200 for fx was used which was found by eyeballingthe output to make it look “good”. A sample output for trainset 1 is shown in Fig. 6. The projection equation given belowis used for projecting the pixels into world canvas. u

v1

= K [R|0]

XYZ1

The translation is assumed to be zero.

Calculate tilt as φ, rotate the image by −φ. The equationsused are as follows:

∆y = fytan(θ)

∆x = fxtan(ψ)

Now, transform the co-ordinates,

y = x+ ∆x− CanvasCenterxx = y + ∆y − CanvasCentery

As we can see from Fig. 6, the projection gets worse anddrifts as the angle increases. To make this projection bettercylindrical projection is used.

B. Cylindrical Projection Based Image Stitching

The world co-ordinates of the point in 3D space from pixelco-ordinates is calculated using [6] [7], X

YZ

= R

0 0 1−1 0 00 −1 0

uvf

Here, f =

√fx

2 + fy2, fx and fy are same as the ones in K

matrix. Also, here u, v are already mean centered.For cylindrical projection, the following equations are used,

Angle, θ = tan(Y

X)

Height, h =Z√

X2 + Y 2

The transformed pixel co-ordinates are,

x = −fθ + CanvasCenterx

y = fh+ CanvasCentery

A sample output for train set 1 is shown in Fig. 7.To interpolate the pixels better, a simple weighted average of

the non-zero pixels was performed according to the equationgiven below,

p′ = αpc + (1− α) pi

where p′ is the new pixel value and pc is the current canvaspixel value and pi is the value from the image in current frame.A sample output with α = 0.75 is shown in Fig. 8. Clearly,the image is smoother with lesser holes, but it it also moreblurred.

Fig. 6. Image Stitching output for train set 1 using homography.

Page 6: Orienation Tracking based Panorama Stitching using ...Orienation Tracking based Panorama Stitching using Unscented Kalman Filter Nitin J. Sanket School of Engineering and Applied Science

VII. RESULTS

A. Euler Angle Plots for all Train Datasets

The plots for train datasets 1 to 9 are shown in Figs. 9, 10,11, 12, 13, 14, 15, 16 and 17.

B. Euler Angle Plots for Test Dataset

The plots for test dataset is shown in Fig. 18.

C. Panorama Images For Train Dataset

The panorama images using cylindrical projection and noblending for train datasets 1, 2, 8 and 9 are shown in Figs.19, 20, 21 and 22 respectively.

Fig. 7. Image Stitching output for train set 1 using cylindrical projectionwithout blending.

Fig. 8. Image Stitching output for train set 1 using cylindrical projectionwith blending (α = 0.75s).

Page 7: Orienation Tracking based Panorama Stitching using ...Orienation Tracking based Panorama Stitching using Unscented Kalman Filter Nitin J. Sanket School of Engineering and Applied Science

Fig. 9. Euler angle plots for training set 1 (all the implemented filters).

Page 8: Orienation Tracking based Panorama Stitching using ...Orienation Tracking based Panorama Stitching using Unscented Kalman Filter Nitin J. Sanket School of Engineering and Applied Science

Fig. 10. Euler angle plots for training set 2 (all the implemented filters).

Page 9: Orienation Tracking based Panorama Stitching using ...Orienation Tracking based Panorama Stitching using Unscented Kalman Filter Nitin J. Sanket School of Engineering and Applied Science

Fig. 11. Euler angle plots for training set 3 (all the implemented filters).

Page 10: Orienation Tracking based Panorama Stitching using ...Orienation Tracking based Panorama Stitching using Unscented Kalman Filter Nitin J. Sanket School of Engineering and Applied Science

Fig. 12. Euler angle plots for training set 4 (all the implemented filters).

Page 11: Orienation Tracking based Panorama Stitching using ...Orienation Tracking based Panorama Stitching using Unscented Kalman Filter Nitin J. Sanket School of Engineering and Applied Science

Fig. 13. Euler angle plots for training set 5 (all the implemented filters).

Page 12: Orienation Tracking based Panorama Stitching using ...Orienation Tracking based Panorama Stitching using Unscented Kalman Filter Nitin J. Sanket School of Engineering and Applied Science

Fig. 14. Euler angle plots for training set 6 (all the implemented filters).

Page 13: Orienation Tracking based Panorama Stitching using ...Orienation Tracking based Panorama Stitching using Unscented Kalman Filter Nitin J. Sanket School of Engineering and Applied Science

Fig. 15. Euler angle plots for training set 7 (all the implemented filters).

Page 14: Orienation Tracking based Panorama Stitching using ...Orienation Tracking based Panorama Stitching using Unscented Kalman Filter Nitin J. Sanket School of Engineering and Applied Science

Fig. 16. Euler angle plots for training set 8 (all the implemented filters).

Page 15: Orienation Tracking based Panorama Stitching using ...Orienation Tracking based Panorama Stitching using Unscented Kalman Filter Nitin J. Sanket School of Engineering and Applied Science

Fig. 17. Euler angle plots for training set 9 (all the implemented filters).

Page 16: Orienation Tracking based Panorama Stitching using ...Orienation Tracking based Panorama Stitching using Unscented Kalman Filter Nitin J. Sanket School of Engineering and Applied Science

Fig. 18. Euler angle plots for test set (all the implemented filters).

Page 17: Orienation Tracking based Panorama Stitching using ...Orienation Tracking based Panorama Stitching using Unscented Kalman Filter Nitin J. Sanket School of Engineering and Applied Science

Fig. 19. Panorama Image using Cylindrical projection for training set 1 without blending.

Page 18: Orienation Tracking based Panorama Stitching using ...Orienation Tracking based Panorama Stitching using Unscented Kalman Filter Nitin J. Sanket School of Engineering and Applied Science

Fig. 20. Panorama Image using Cylindrical projection for training set 2 without blending.

Page 19: Orienation Tracking based Panorama Stitching using ...Orienation Tracking based Panorama Stitching using Unscented Kalman Filter Nitin J. Sanket School of Engineering and Applied Science

Fig. 21. Panorama Image using Cylindrical projection for training set 8 without blending.

Page 20: Orienation Tracking based Panorama Stitching using ...Orienation Tracking based Panorama Stitching using Unscented Kalman Filter Nitin J. Sanket School of Engineering and Applied Science

Fig. 22. Panorama Image using Cylindrical projection for training set 9 without blending.

Page 21: Orienation Tracking based Panorama Stitching using ...Orienation Tracking based Panorama Stitching using Unscented Kalman Filter Nitin J. Sanket School of Engineering and Applied Science

The panorama images using cylindrical projection and withblending weight of 0.25 for train datasets 1, 2, 8 and 9 areshown in Figs. 23, 24, 25 and 26 respectively.

D. Panorama Images For Test DatasetThe panorama images using cylindrical projection and no

blending for test dataset is shown in Fig. 27.The panorama images using cylindrical projection with

blending weight of 0.25 for test dataset is shown in Fig. 27.

E. Analysis of resultsClearly, UKF outperforms all other alogithms as expected,

it has the least drift and is the closest to vicon. Surprisingly,for most datasets with smooth movements CF perfroms almoston par with UKF. KF doesn’t work as expected possibly dueto wrong tuning or a bug in the code. The gyro integrationalso follows vicon but drifts a lot. Also, gyroscope is followsvicon with a lot of spikes as expected. However, if UKF isbadly tuned it performs the worst of them all. Mainly, whenthe accelerometer process noise was not tuned to the rightvalue, yaw output of UKF was the worst.

VIII. ESTIMATING CAMERA PARAMETERS

The webcam used is Logitech C905 which uses a 1/4.5”sensor. The sensor is of size 4.5mm × 3.6mm. HorizontalFocal length is calculated as,

fx =sensorsize×WorkingDist

HorizontalFOV=

4.5mm× 6ft

35◦= 235.13mm

fy =sensorsize×WorkingDist

V erticalFOV=

3.6mm× 6ft

30◦= 219.456mm

f =√f2x + f2

y = 321.631mm

IX. TIME SYNCHRONIZATION AND ERROR CALCULATION

Time Synchronization was done by finding minimum ab-solute closest timestamp between 2 sequences. The errormetric used for euler angles which respects flips was calledMean Absolutte Difference Of Square (MADS). MADS Errorbetween 2 sequences a and b with n samples is defined as,

MADS =1

n

n∑i=1

∣∣ai2 − b2i ∣∣

MADS Error won’t work if the absolute difference matters,in our case we are sure that angles will be close enough tonot have this problem. This combats the euler angle flippingproblem.

X. VIDEOS

The Videos pertaining to panorama formation can be foundat https://goo.gl/BJitRl.

XI. IMPORTANT LESSONS LEARNT

UKF is highly sensitive to the scale of covariances.

XII. CONCLUSIONS

Overall, UKF outperformed all the other methods by beingthe most robust and having the least drift. MADS error was thelowest. Surprisingly, complementary filter worked very wellthough it had some drift towards the end of every sequence.Also, Kalman filter didn’t work as expected maybe due towrong tuning or a bug in the code. The panorama stitchingwith blending on cylindrical projection gave the best/mostvisually appealing results. The preformance of the pipelineon the test set was good.

ACKNOWLEDGMENT

The author would like to thank Dr. Daniel D. Lee and allthe Teaching Assistants of ESE 650 course for all the help inaccomplishing this project.

REFERENCES

[1] Complementary Filter, Link[2] Attitude from accelerometer, Link[3] Kalman Filter, Link[4] Edgar Kraft, A quaternion-based unscented Kalman filter for orientation

tracking, Sixth International Conference of Information Fusion, Vol. 1,2003.

[5] S. J. Julier and J. K. Uhlmann, A new extension of the Kalman filterto nonlinear systems, International Symposium on Aerospace/DefenseSensing, Simulation and Controls, 1997.

[6] Cylindrical Projection for Panorama Stitching, Link[7] Another Cylindrical Projection for Panorama Stitching, Link

Page 22: Orienation Tracking based Panorama Stitching using ...Orienation Tracking based Panorama Stitching using Unscented Kalman Filter Nitin J. Sanket School of Engineering and Applied Science

Fig. 23. Panorama Image using Cylindrical projection for training set 1 with blending weight 0.25.

Page 23: Orienation Tracking based Panorama Stitching using ...Orienation Tracking based Panorama Stitching using Unscented Kalman Filter Nitin J. Sanket School of Engineering and Applied Science

Fig. 24. Panorama Image using Cylindrical projection for training set 2 with blending weight 0.25.

Page 24: Orienation Tracking based Panorama Stitching using ...Orienation Tracking based Panorama Stitching using Unscented Kalman Filter Nitin J. Sanket School of Engineering and Applied Science

Fig. 25. Panorama Image using Cylindrical projection for training set 8 with blending weight 0.25.

Page 25: Orienation Tracking based Panorama Stitching using ...Orienation Tracking based Panorama Stitching using Unscented Kalman Filter Nitin J. Sanket School of Engineering and Applied Science

Fig. 26. Panorama Image using Cylindrical projection for training set 9 with blending weight 0.25.

Page 26: Orienation Tracking based Panorama Stitching using ...Orienation Tracking based Panorama Stitching using Unscented Kalman Filter Nitin J. Sanket School of Engineering and Applied Science

Fig. 27. Panorama Image using Cylindrical projection for test set without blending.

Page 27: Orienation Tracking based Panorama Stitching using ...Orienation Tracking based Panorama Stitching using Unscented Kalman Filter Nitin J. Sanket School of Engineering and Applied Science

Fig. 28. Panorama Image using Cylindrical projection for test set with blending weight 0.25.