Skip to main content

On the VINS Resource-Allocation Problem for a Dual-Camera, Small-Size Quadrotor

  • Conference paper
  • First Online:
2016 International Symposium on Experimental Robotics (ISER 2016)

Part of the book series: Springer Proceedings in Advanced Robotics ((SPAR,volume 1))

Included in the following conference series:

Abstract

In this paper, we present a novel resource-allocation problem formulation for vision-aided inertial navigation systems (VINS) for efficiently localizing micro aerial vehicles equipped with two cameras pointing at different directions. Specifically, based on the quadrotor’s current speed and median distances to the features, the proposed algorithm efficiently distributes processing resources between the two cameras by maximizing the expected information gain from their observations. Experiments confirm that our resource-allocation scheme outperforms alternative naive approaches in achieving significantly higher VINS positioning accuracy when tested onboard quadrotors with severely limited processing resources.

This work was supported by the Air Force Office of Scientific Research (FA9550-10-1-0567) and the National Science Foundation (IIS-1111638).

This is a preview of subscription content, log in via an institution to check access.

Access this chapter

Chapter
USD 29.95
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
eBook
USD 259.00
Price excludes VAT (USA)
  • Available as EPUB and PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD 329.99
Price excludes VAT (USA)
  • Compact, lightweight edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info
Hardcover Book
USD 329.99
Price excludes VAT (USA)
  • Durable hardcover edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info

Tax calculation will be finalised at checkout

Purchases are for personal use only

Institutional subscriptions

Notes

  1. 1.

    Although the two cameras’ fov have a small overlap, we do not match features between them as the different camera characteristics make such process unreliable.

  2. 2.

    Note that although the ensuing presentation focuses on the specific (forward and downward) configuration of the cameras onboard the Bebop quadrotor used in our experiments, our approach is applicable to any dual-camera system with arbitrary geometric configuration.

  3. 3.

    Without loss of generality, we choose the quadrotor’s frame of reference to be the one of the downward camera.

  4. 4.

    Through experimentation, [9] has been shown to offer a very efficient and accurate metric for assessing the expected information gain from each feature.

  5. 5.

    MSCKF features are marginalized by the SR-ISWF for performing visual-inertial odometry without including their estimates in the filter’s state; see [17] for details.

  6. 6.

    We do not evaluate the RMSE for the case of only downward-pointing camera since the quadrotor’s CPU cannot perform image processing at the high frame rates (40 Hz) required for tracking features at high speeds (6 m/s).

References

  1. Boyd, S., Vandenberghe, L.: Convex Optimization. Cambridge University Press, New York (2004)

    Google Scholar 

  2. Davison, A.J.: Active search for real-time vision. In: Proceedings of the IEEE International Conference on Computer Vision, Beijing, China, pp. 66–73, 17–21 October 2005

    Google Scholar 

  3. Do, T., Carrillo-Arce, L.C., Roumeliotis, S.I.: Autonomous flights through image-defined paths. In: Proceedings of the International Symposium of Robotics Research, Sestri Levante, Italy, 12–15 September 2015

    Google Scholar 

  4. Engel, J., Sturm, J., Cremers, D.: Camera-based navigation of a low-cost quadrotor. In: Proceedings of the IEEE/RSJ International Conference on Intelligent Robots and Systems, Vilamoura, Algarve, Portugal, pp. 2815–2821, 7–12 October 2012

    Google Scholar 

  5. Forster, C., Pizzoli, M., Scaramuzza, D.: SVO: fast semi-direct monocular visual odometry. In: Proceedings of the IEEE International Conference on Robotics and Automation, Hong Kong, China, pp. 15–22, 31 May–5 June 2014

    Google Scholar 

  6. Grabe, V., Bülthoff, H.H., Scaramuzza, D., Giordano, P.R.: Nonlinear ego-motion estimation from optical flow for online control of a quadrotor UAV. Int. J. Robot. Res. 34(8), 1114–1135 (2015)

    Article  Google Scholar 

  7. Heng, L., Lee, G.H., Pollefeys, M.: Self-calibration and visual SLAM with a multi-camera system on a micro aerial vehicle. Autonomous Robots 39(3), 259–277 (2015)

    Article  Google Scholar 

  8. Klein, G., Murray, D.: Parallel tracking and mapping for small AR workspaces. In: Proceedings of the IEEE and ACM International Symposium on Mixed and Augmented Reality, Nara, Japan, pp. 225–234, 13–16 November 2007

    Google Scholar 

  9. Kottas, D.G., DuToit, R.C., Ahmed, A., Guo, C.X., Georgiou, G., Li, R., Roumeliotis, S.I.: A resource-aware vision-aided inertial navigation system for wearable and portable computers. In: Proceedings of the IEEE International Conference on Robotics and Automation, Hong Kong, China, pp. 6336–6343, 31 May– 5 June 2014

    Google Scholar 

  10. Loianno, G., Mulgaonkar, Y., Brunner, C., Ahuja, D., Ramanandan, A., Chari, M., Diaz, S., Kumar, V.: Smartphones power flying robots. In: Proceedings of the IEEE/RSJ International Conference on Intelligent Robots and Systems, Hamburg, Germany, pp. 1256–1263, 28 September– 2 October 2015

    Google Scholar 

  11. Lucas, B.D., Kanade, T.: An iterative image registration technique with an application to stereo vision. In: Proceedings of the International Joint Conference on Artificial Intelligence, Vancouver, British Columbia, pp. 674–679, 24–28 August 1981

    Google Scholar 

  12. Pless, R.: Using many cameras as one. In: Proceeding of the IEEE International Conference on Computer Vision and Pattern Recognition, Madison, WI, pp. 11–18, 16–22 June 2003

    Google Scholar 

  13. Rosten, E., Drummond, T.: Machine learning for high-speed corner detection. In: Leonardis, A., Bischof, H., Pinz, A. (eds.) ECCV 2006. LNCS, vol. 3951, pp. 430–443. Springer, Heidelberg (2006). doi:10.1007/11744023_34

    Chapter  Google Scholar 

  14. Schauwecker, K., Zell, A.: On-board dual-stereo-vision for the navigation of an autonomous MAV. J. Intell. Robot. Syst. 74(1–2), 1–16 (2014)

    Article  Google Scholar 

  15. Shen, S., Mulgaonkar, Y., Michael, N., Kumar, V.: Vision-based state estimation and trajectory control towards high-speed flight with a quadrotor. In: Proceedings of the Robotics: Science and Systems, Berlin, Germany, 24–28 June 2013

    Google Scholar 

  16. Weiss, S., Achtelik, M.W., Lynen, S., Achtelik, M.C., Kneip, L., Chli, M., Siegwart, R.: Monocular vision for long-term micro aerial vehicle state estimation: a compendium. J. Field Robot. 30(5), 803–831 (2013)

    Article  Google Scholar 

  17. Wu, K.J., Ahmed, A., Georgiou, G., Roumeliotis, S.I.: A square root inverse filter for efficient vision-aided inertial navigation on mobile devices. In: Proceedings of Robotics: Science and Systems, Rome, Italy, 13–17 July 2015

    Google Scholar 

  18. Zhang, G., Vela, P.A.: Good features to track for visual SLAM. In: Proceedings of the IEEE InternationaL Conference on Computer Vision and Pattern Recognition, Boston, MA, pp. 1373–1382, 7–12 June 2015

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Kejian J. Wu .

Editor information

Editors and Affiliations

Appendix A

Appendix A

In order to compute the expected information matrices in (7), we start by deriving the measurement Jacobian \(\mathbf {H}_i\), appearing in (4), at time step \(k'\). Consider a feature i, observed by the camera s, \(s\in \{f,d\}\), whose position, \(\mathbf {p}_i\), with respect to the camera frame \(\{C_s^{k'}\}\), is:

$$\begin{aligned} {}^{{\scriptscriptstyle {C}}_s^{k'}}\mathbf {p}_i = \begin{bmatrix} x_i \\ y_i \\ z_i \end{bmatrix} = \begin{bmatrix} \rho _i\sin \theta _i\cos \phi _i \\ \rho _i\sin \theta _i\sin \phi _i \\ \rho _i\cos \theta _i \end{bmatrix} \end{aligned}$$
(11)

where \([x_i, y_i, z_i]^T\) and \([\phi _i, \theta _i, \rho _i]^T\) are the feature’s Cartesian and spherical coordinates, respectively. The camera measures the perspective projection of feature i:

$$\begin{aligned} \mathbf {z}=\pi \left( {}^{{\scriptscriptstyle {C}}_s^{k'}}\mathbf {p}_i\right) + \mathbf {n}_i = \begin{bmatrix} \frac{x_i}{z_i} \\ \frac{y_i}{z_i}\end{bmatrix} + \mathbf {n}_i, \ \ \ \ {}^{{\scriptscriptstyle {C}}_s^{k'}}\mathbf {p}_i = {}^{{\scriptscriptstyle {C}}_s^{k'}}_{{\scriptscriptstyle {C}}_s^k}\mathbf {R} ({}^{{\scriptscriptstyle {C}}_s^{k}}\mathbf {p}_i - {}^{{\scriptscriptstyle {C}}_s^{k}}\mathbf {p}_{{\scriptscriptstyle {C}}_s^{k'}}) \end{aligned}$$
(12)

where \(\mathbf {n}_i\) is the measurement noise and \({}^{{\scriptscriptstyle {C}}_s^{k}}\mathbf {p}_i\) denotes the feature’s position with respect to the first-observing camera frame, \(\{C_s^{k}\}\), at time step k, while \({}^{{\scriptscriptstyle {C}}_s^{k'}}_{{\scriptscriptstyle {C}}_s^k}\mathbf {R}\) and \({}^{{\scriptscriptstyle {C}}_s^{k}}\mathbf {p}_{{\scriptscriptstyle {C}}_s^{k'}}\) represent the rotation matrix and translation vector, respectively, between the camera frames at the corresponding time steps k and \(k'\). Based on (12), the measurement Jacobian with respect to the camera’s position is:

$$\begin{aligned} \mathbf {H}_i = \frac{\partial \pi \left( {}^{{\scriptscriptstyle {C}}_s^{k'}}\mathbf {p}_i \right) }{\partial {}^{{\scriptscriptstyle {C}}_s^{k'}}\mathbf {p}_i} \frac{\partial {}^{{\scriptscriptstyle {C}}_s^{k'}}\mathbf {p}_i}{\partial {}^{{\scriptscriptstyle {C}}_s^{k}}\mathbf {p}_{{\scriptscriptstyle {C}}_s^{k'}}} = -\frac{1}{\rho _i\cos \theta _i} \begin{bmatrix}1&0&-\tan \theta _i\cos {\phi }_i \\ 0&1&-\tan \theta _i\sin {\phi }_i\end{bmatrix} {}^{{\scriptscriptstyle {C}}_s^{k'}}_{{\scriptscriptstyle {C}}_s^k}\mathbf {R} \end{aligned}$$
(13)

which leads to the following information matrix:

$$\begin{aligned} \frac{1}{\sigma _s^2}\mathbf {H}^{{\scriptscriptstyle {T}}}_i\mathbf {H}_i = \frac{1}{\sigma _s^2\rho ^2_i \cos ^{2}{\theta _i}} {}^{{\scriptscriptstyle {C}}_s^{k'}}_{{\scriptscriptstyle {C}}_s^k}\mathbf {R}^{{\scriptscriptstyle {T}}} \begin{bmatrix} 1&0&-\tan {\theta _i}\cos {\phi _i} \\ 0&1&-\tan {\theta _i}\sin {\phi _i} \\ -\tan {\theta _i}\cos {\phi _i}&-\tan {\theta _i}\sin {\phi _i}&\tan ^{2}{\theta _i} \end{bmatrix} {}^{{\scriptscriptstyle {C}}_s^{k'}}_{{\scriptscriptstyle {C}}_s^k}\mathbf {R} \end{aligned}$$
(14)

By employing the assumptions about the features’ distribution in (6), and substituting (14) into (4), yields:

(15)

Note that \(\mathbf {H}_i\) in (13), and hence in (15), is expressed with respect to the position state, \({}^{{\scriptscriptstyle {C}}_s^{k}}\mathbf {p}_{{\scriptscriptstyle {C}}_s^{k'}}\), of the camera s [see (13)]. Therefore, and since we chose the system’s state to comprise the downward-camera’s position, \({}^{{\scriptscriptstyle {C}}_d^{k}}\mathbf {p}_{{\scriptscriptstyle {C}}_d^{k'}}\), the expected information gain from the corresponding feature observations is obtained by directly setting \(s=d\) in (15), i.e.,

(16)

On the other hand, the forward-camera’s measurement Jacobian also depends on the extrinsics of the two cameras, i.e.,

$$\begin{aligned} \mathbf {H}_j = \frac{\partial \pi \left( {}^{{\scriptscriptstyle {C}}_f^{k'}}\mathbf {p}_i \right) }{\partial {}^{{\scriptscriptstyle {C}}_f^{k'}}\mathbf {p}_i} \frac{\partial {}^{{\scriptscriptstyle {C}}_f^{k'}}\mathbf {p}_i}{\partial {}^{{\scriptscriptstyle {C}}_f^{k}}\mathbf {p}_{{\scriptscriptstyle {C}}_f^{k'}}} \frac{\partial {}^{{\scriptscriptstyle {C}}_f^{k}}\mathbf {p}_{{\scriptscriptstyle {C}}_f^{k'}}}{\partial {}^{{\scriptscriptstyle {C}}_d^{k}}\mathbf {p}_{{\scriptscriptstyle {C}}_d^{k'}}}, \ \ \ \ \text {where} \ \ \ \frac{\partial {}^{{\scriptscriptstyle {C}}_f^{k}}\mathbf {p}_{{\scriptscriptstyle {C}}_f^{k'}}}{\partial {}^{{\scriptscriptstyle {C}}_d^{k}}\mathbf {p}_{{\scriptscriptstyle {C}}_d^{k'}}} = {}^{{\scriptscriptstyle {C}}_f}_{{\scriptscriptstyle {C}}_d}\mathbf {R} \end{aligned}$$
(17)

results from the geometric relationship between the two cameras across time steps k and \(k'\). By comparing (17) to (13), the forward-camera’s Jacobian is obtained by first setting \(s=f\) in (13), and then multiplying it, from the right, with the extrinsic-calibration rotation matrix \({}^{{\scriptscriptstyle {C}}_f}_{{\scriptscriptstyle {C}}_d}\mathbf {R}\). Consequently, the expected information gain from the forward camera becomes:

(18)

Lastly, employing the geometric relationship \({}^{{\scriptscriptstyle {C}}_f^{k'}}_{{\scriptscriptstyle {C}}_f^{k}}\mathbf {R} {}^{{\scriptscriptstyle {C}}_f}_{{\scriptscriptstyle {C}}_d}\mathbf {R} = {}^{{\scriptscriptstyle {C}}_f}_{{\scriptscriptstyle {C}}_d}\mathbf {R} {}^{{\scriptscriptstyle {C}}_d^{k'}}_{{\scriptscriptstyle {C}}_d^{k}}\mathbf {R}\) in (18) results in the expression for shown in (7).

Rights and permissions

Reprints and permissions

Copyright information

© 2017 Springer International Publishing AG

About this paper

Cite this paper

Wu, K.J., Do, T., Carrillo-Arce, L.C., Roumeliotis, S.I. (2017). On the VINS Resource-Allocation Problem for a Dual-Camera, Small-Size Quadrotor. In: Kulić, D., Nakamura, Y., Khatib, O., Venture, G. (eds) 2016 International Symposium on Experimental Robotics. ISER 2016. Springer Proceedings in Advanced Robotics, vol 1. Springer, Cham. https://doi.org/10.1007/978-3-319-50115-4_47

Download citation

  • DOI: https://doi.org/10.1007/978-3-319-50115-4_47

  • Published:

  • Publisher Name: Springer, Cham

  • Print ISBN: 978-3-319-50114-7

  • Online ISBN: 978-3-319-50115-4

  • eBook Packages: EngineeringEngineering (R0)

Publish with us

Policies and ethics