Skip to content
  • Categories
  • Recent
  • Tags
  • Popular
  • Users
  • Groups
Collapse
Brand Logo

ModalAI Forum

  1. ModalAI Support Forum
  2. Ask your questions right here!
  3. Redundant VIO via AprilTags?

Redundant VIO via AprilTags?

Scheduled Pinned Locked Moved Ask your questions right here!
5 Posts 2 Posters 1.1k Views 1 Watching
  • Oldest to Newest
  • Newest to Oldest
  • Most Votes
Reply
  • Reply as topic
Log in to reply
This topic has been deleted. Only users with topic management privileges can see it.
  • Evan HertafeldE Offline
    Evan HertafeldE Offline
    Evan Hertafeld
    wrote on last edited by
    #1

    Hi all,

    I've had a pleasant time setting up my Voxl Flight for offboard vision-based navigation but the occasional QVIO blowup makes me seek a level of redundancy for vision tracking. The apriltag relocalization feature is great, but if we blowup while relocalizing, then the setpoints leap to the new reference frame before the next tag is detected and we jerk/crash.

    I'm sure there are things I can do do reduce the chance of a blowup but it seems unlikely I could eliminate the risk entirely - loss of light, debris on the camera, the sensor shifting, could all occur if this system is deployed at scale.

    Currently the PX4 EKF seems to only take in a single vision stream, so my thoughts are focused around adding this redundancy upstream (eg within the Voxl system). The general idea would be to generate some other stream(s) of Odometry data with another vision source, and be able to switch to that if the main source fails. Most likely by passing both to some monitor process that in turn sends the "clean" data out the actual QVIO pipe for PX4.

    So my questions are:

    1. Is this a sensible idea? Gotchas to consider? Or aught I be able to entirely mitigate QVIO blowups with a single sensor?
    2. Would a second tracking camera be able to run a separate instance of QVIO? This would be the idea situation since it seems the easiest.
    3. Would a non-tracking camera doing AprilTag detection, then relocalizing these detections and providing odometry data directly, be a reasonable idea? Eg my stereo cam, which isn't suitable for QVIO (bummer), could deduce position from known locations of detected tags and compute NED-frame odometry.
    4. Is there existing work in this area (redundant vision on Voxl) or other ideas I should look into?

    Thanks so much!

    1 Reply Last reply
    0
    • Chad SweetC Offline
      Chad SweetC Offline
      Chad Sweet
      ModalAI Team
      wrote on last edited by
      #2

      This is a big topic. We are constantly working to improve performance in multiple ways. We hope to have a multi-sensor VIO system working in a few months, but it is a lot of work.

      You can definitely use the stereo sensor for VIO though, you just can't yaw as quickly. You can also replace the default stereo sensors with fisheye sensors found here. If you use depth from stereo you will of course need to recalibrate, etc.

      1 Reply Last reply
      0
      • Evan HertafeldE Offline
        Evan HertafeldE Offline
        Evan Hertafeld
        wrote on last edited by
        #3

        Thanks for the reply! We'll definitely stay tuned. Curious about your thoughts on my specific approach - namely, are there enough resources to run 2 simultaneous instances of the VIO system?

        1 Reply Last reply
        0
        • Chad SweetC Offline
          Chad SweetC Offline
          Chad Sweet
          ModalAI Team
          wrote on last edited by
          #4

          Yes, but it's a lot of math to get them merged properly.

          1 Reply Last reply
          0
          • Evan HertafeldE Offline
            Evan HertafeldE Offline
            Evan Hertafeld
            wrote on last edited by
            #5

            I was thinking of something simple, eg:

            Use tracking cam qvio until reported quality drops below a particular value (near blowup). If it does, switch to stereo qvio feed as long as the position + velocity were recently in agreement within some threshold and its reported quality is sufficient. If not, switch to manual mode and call an adult. Once the main qvio recovers, store the position offset (for future switchovers) and switch back.

            I'm sure proper fusion will obtain a smoother and more robust result, but I'd just like something that can handle a blowup without crashing.

            1 Reply Last reply
            0

            Hello! It looks like you're interested in this conversation, but you don't have an account yet.

            Getting fed up of having to scroll through the same posts each visit? When you register for an account, you'll always come back to exactly where you were before, and choose to be notified of new replies (either via email, or push notification). You'll also be able to save bookmarks and upvote posts to show your appreciation to other community members.

            With your input, this post could be even better 💗

            Register Login
            Reply
            • Reply as topic
            Log in to reply
            • Oldest to Newest
            • Newest to Oldest
            • Most Votes


            ModalAI
            Categories Recent Tags ModalAI.com Docs
            © 2026 ModalAI® · Accelerating autonomy for smaller, smarter, safer drones · Powered by NodeBB
            • Login

            • Don't have an account? Register

            • Login or register to search.
            • First post
              Last post
            0
            • Categories
            • Recent
            • Tags
            • Popular
            • Users
            • Groups