Open Source Motion Capture for Autonomous Drones

แชร์
ฝัง
  • เผยแพร่เมื่อ 14 พ.ย. 2023
  • A low cost ($20), open source motion capture system with millimeter level precision at room-scale. Used to localize autonomous drones inside a room.
    GitHub repo with code & 3D files: github.com/jyjblrd/Mocap-Drones
    Check out my blog post for more info on the drones, cameras, etc: joshuabird.com/blog/post/moca...

ความคิดเห็น • 537

  • @emovard3n
    @emovard3n 5 หลายเดือนก่อน +491

    Wow, you definitely deserve more views. Very cool project, also making it open source means a lot

    • @moosesnWoop
      @moosesnWoop 5 หลายเดือนก่อน +16

      by making it open source, the Future thanks you.

    • @deweytann
      @deweytann 5 หลายเดือนก่อน +2

      Open source gives you wings

    • @0hleg
      @0hleg 5 หลายเดือนก่อน

      @@moosesnWoopand the person that actually eventually tunes it a bit and monetizes it.

  • @sabih1677
    @sabih1677 5 หลายเดือนก่อน +236

    Very rarely a maker actually shares the math and science behind their projects. You sir have earned my subscription. Cant wait to see what you make next

    • @dowesschule
      @dowesschule 5 หลายเดือนก่อน

      there actually is a lot of youtube videos accompanying research papers, it's just that they don't scream and jump-cut, so the algorithm won't serve them. but many GitHub pages do have embedded yt videos similar to this one.

    • @andrewferguson6901
      @andrewferguson6901 5 หลายเดือนก่อน +5

      Because it's reproducible, that makes it science!

    • @elishmuel1976
      @elishmuel1976 5 หลายเดือนก่อน

      Same!

  • @googleyoutubechannel8554
    @googleyoutubechannel8554 5 หลายเดือนก่อน +56

    A college student in his dorm room... this is amazing, precise indoor location has been a constant challenge

    • @Keyboardfanatiker
      @Keyboardfanatiker หลายเดือนก่อน +1

      Using ultra-wideband for ranging shouldn't be all that difficult actually

    • @googleyoutubechannel8554
      @googleyoutubechannel8554 หลายเดือนก่อน +5

      @@Keyboardfanatiker "actually"

    • @Keyboardfanatiker
      @Keyboardfanatiker หลายเดือนก่อน

      ​@@googleyoutubechannel8554 I'm using Qorvo DW3000 boards for an LED controller game to enable spatial interactions

  • @tom-stein
    @tom-stein 5 หลายเดือนก่อน +67

    Someone should give this guy access to a workshop: Very nice work!

  • @connerwwise2315
    @connerwwise2315 5 หลายเดือนก่อน +41

    I’m a senior graduating in Unmanned Aerial Systems and for my senior project I used an ESP32 and an ELRS transmitter to fly drones using any Bluetooth controller. And this project makes mine look like child’s play.

    • @technicalactivity
      @technicalactivity หลายเดือนก่อน +2

      that degree has been useless since I got one in 2015.. the problem is the real drone work is not there yet unless you have military experience

  • @mumblety
    @mumblety 5 หลายเดือนก่อน +28

    Wow! I wasn't expecting you to actually explain how the tracking worked! It's really cool that you did! Thanks!

  • @Legonigel
    @Legonigel 5 หลายเดือนก่อน +12

    I'm blown away by the work you put into this! Simply amazing!

  • @kagisopilane4088
    @kagisopilane4088 5 หลายเดือนก่อน +8

    This is incredible! I just checked some of your other projects as well. All of them just lit a fire in me. I recently got access to a makerspace so I definitely want to work on something like this. Big Fan all the way from South Africa.

  • @Clark-Mills
    @Clark-Mills 5 หลายเดือนก่อน +3

    Very nice work, quite an achievement. Congrat's! :) And a huge thank-you for documenting it on YT so well and sharing the project.

  • @iainmackenzieUK
    @iainmackenzieUK 5 หลายเดือนก่อน +4

    Your motivation, dedication and clear communication are more inspiring than the results.

  • @cachecaver
    @cachecaver 5 หลายเดือนก่อน +13

    Nice project that's pretty amazing. Better yet nice explanation of all the algorithms you used to piece it together. You have a bright future.

  • @Peter-898
    @Peter-898 5 หลายเดือนก่อน +1

    Massively impressive project, very well done & I'm glad to see your work shared. Hope we see more work spring up around it!

  • @DeanGadberryYT
    @DeanGadberryYT 3 หลายเดือนก่อน +3

    Thank you for your contribution to the open-source community! This is an impressive project. I am excited to see how your ingenuity is used in the world in the years to come. Please know that many of us are inspired!

  • @austindale3129
    @austindale3129 5 หลายเดือนก่อน +7

    Really impressive, and incredibly well explained for such a complex and deeply technical project! I think my favorite aspect is your resourcefulness in utilizing the cheap cameras and floppy disk filter (MacGuiver would be proud)!!! All around inspiring work!

  • @theluckybead
    @theluckybead 5 หลายเดือนก่อน +43

    Bravo, well done. This just poked human knowledge as a whole a bit further in both science and art. Thank you for both doing this experiment and documenting it and sharing it in such an endearing way. You worked extremely hard on this and it inspired me to model the way you shared your work. Bravo bravo.

  • @mr.kybernaut6687
    @mr.kybernaut6687 5 หลายเดือนก่อน +62

    Very cool work! I'm an robotics engineer, PHD, and flying drones in my free time. I thought about exactly the same project, but lack the time.
    Very impressive, considering you are still studying. Keep up the good work. I see an upcoming excellent engineer / software developer. Don't underestimate the open paths that lie in front of you. If you keep up this pace, you can become whatever you want.

  • @cottsak
    @cottsak 5 หลายเดือนก่อน +16

    As a full stack web dev whose day job is mostly just LOB apps, and a hobbyist understanding of drones and embedded programming (I’ve done a bit of esp stuff) this is really impressive!
    Just looking at your react front end with the stream data blows my mind a bit hey.
    Amazing work!!

  • @pjforde1978
    @pjforde1978 5 หลายเดือนก่อน +3

    Genuinely impressive work. I'm reminded of a demo I saw years ago in which a drone would recognize that it was running low on juice, so it could land on a pad which would swap out the battery pack, like the Tesla S did for 15 minutes in a simpler time.
    Anyhow, even more than getting it all working (which is a commendable feat) the real signal this project sends to someone who knows what they are looking at is that you're someone who can take a complicated problem that crosses multiple technical domains and then iterate on each aspect until you achieve an outcome. I would hire you in a heartbeat if I was in a position to do so.

  • @fixifaxhd772
    @fixifaxhd772 5 หลายเดือนก่อน +1

    Love the clip where you literally just toss the drone on the floor. Crazy project. Props on completing it!

  • @JosOsborne
    @JosOsborne 5 หลายเดือนก่อน +1

    Absolutely amazing. You are brilliant and energetic and resourceful and an excellent communicator and I cannot wait to see what you do next.

  • @roland_does_things
    @roland_does_things 5 หลายเดือนก่อน +2

    Really cool project! Love that it all works in your dorm!

  • @AerialWaviator
    @AerialWaviator 5 หลายเดือนก่อน +1

    Such an impressive integrated system of multiple projects. The camera conversion project with custom IR filters is amazing in itself. What's fascinating is having 3 IR LEDs allows not only allows tracking position in space, but could enable determination of pitch, row, and yaw angles, so offers a number of possible options to modify and refine ... possibility leading to controlling a drone swarm.
    This video/project may be enough to gain sponsorship for a dedicated internship project next summer. (one focused fun job, instead of two)

  • @pipsqueak2009
    @pipsqueak2009 2 หลายเดือนก่อน +1

    Super impressive. And fantastic that you've open sourced the project so that others can learn and benefit from it.

  • @felixman9691
    @felixman9691 5 หลายเดือนก่อน +1

    I love your projects. Thanks for sharing this one! I was super surprised about the high frame rate on the sony camera. Really just so cool to see people like you sharing this stuff, I have a project I’m working on that I am gonna release for the community that I hope is useful and good too :)

  • @jamesbowe3
    @jamesbowe3 4 หลายเดือนก่อน +1

    Joshua, what a great project and nicely presented! I will definitely share this with my students next semester. Thank you.

  • @marsgizmo
    @marsgizmo 3 หลายเดือนก่อน +33

    inspiring project! 👏😎

  • @Taylachteam
    @Taylachteam 5 หลายเดือนก่อน +2

    I subscribed and will be following your journey every step of the way. please continue making this content!

  • @natonion1154
    @natonion1154 5 หลายเดือนก่อน +4

    Super amazed by the tracking system. Off-the-shelf solutions are super expensive, but you managed to pull it off with just a lower budget. I'm saving this to potentially replicate it. Thank you for your hardwork!

    • @anjiraj2899
      @anjiraj2899 5 หลายเดือนก่อน

      do you know the name of the flight controler?

  • @mehmetnabiduru8779
    @mehmetnabiduru8779 5 หลายเดือนก่อน +1

    Amazing project and it's obvious that a lot of effort has gone into it nice work

  • @arpita1shrivas
    @arpita1shrivas 5 หลายเดือนก่อน +4

    how is this man so criminally underrated

  • @user-vj6ec5do4d
    @user-vj6ec5do4d 2 หลายเดือนก่อน +1

    Thanks Joshua for sharing the maths and explaining your project in a very understable way. I thought I know a lot, you taught me different! Great job!

  • @dmitrysozinov2391
    @dmitrysozinov2391 5 หลายเดือนก่อน

    Maaan, what a great project!
    I saw something similar made with high-speed cameras (probably costing thousands of dollars) AND YOU MADE THIS AWESOME THING for price of a meal, you are amazing!

  • @bryanoverbey
    @bryanoverbey 5 หลายเดือนก่อน +1

    Great work. Not easy to navigate all of those different protocols and stitch something like this together. Also great triangulation algorithm work. We need more bright and talented engineers like yourself. Thanks for making the project open source so that others can be inspired and have some assistance to build something great too

  • @MKUMBRA
    @MKUMBRA 5 หลายเดือนก่อน +219

    Bro is an undergrad student and already better than SDEs with 10 YOE... he should be making 500k easily

    • @sirdiealot53
      @sirdiealot53 5 หลายเดือนก่อน +16

      More like 500m as CEO of his own company.

    • @davidcahan
      @davidcahan 5 หลายเดือนก่อน +4

      Prolly will b soon

    • @abyszero8620
      @abyszero8620 5 หลายเดือนก่อน +27

      Depends how much of the system he made himself. There's not much glory in using premade hardware with premade software to do premade tasks in a controlled setting.

    • @andrewferguson6901
      @andrewferguson6901 5 หลายเดือนก่อน +5

      It's so thoroughly researched, followed to conclusion, and presented so cleanly. Plus.. reproducible. This is a legitimate publication

    • @francefarms
      @francefarms 5 หลายเดือนก่อน +1

      Maybe it is open source?

  • @siegmundeurades5753
    @siegmundeurades5753 5 หลายเดือนก่อน +8

    Absolutely amazing work, wait until the VR community finds out about this.

  • @uncharteduty
    @uncharteduty 5 หลายเดือนก่อน +1

    This is an incredible video. I love it. This is a project I would love to tackle myself in the future.

  • @casperlehmann
    @casperlehmann หลายเดือนก่อน +1

    I've had this video open in my browser for four months now, and I just can't get myself to close it. So freaking cool.

  • @md.sharifulislamrifat1597
    @md.sharifulislamrifat1597 5 หลายเดือนก่อน +1

    That is very amazing ! And it means a lot to make the project open source....definitely gonna try it out...hats off...

  • @tunnelcat4592
    @tunnelcat4592 5 หลายเดือนก่อน +1

    We've been doing exactly this with a single camera for head tracking in the flight sim community for a decade. First time I've seen someone make a proper mocap system out of it!

  • @nicholasgrippo1754
    @nicholasgrippo1754 5 หลายเดือนก่อน

    Wow! This is basically the same principle of VR tracking with base stations applied to drones. This is awesome

  • @sUASNews
    @sUASNews หลายเดือนก่อน +1

    Wow, just wow excellent work Joshua

  • @brycenarcisomercines5036
    @brycenarcisomercines5036 5 หลายเดือนก่อน +1

    This is amazing work, explained with great clarity as well!

  • @hseinb
    @hseinb 3 หลายเดือนก่อน +1

    This is amazing, I can imagine it has lots of applications, congrats

  • @HectorGarciadeMarina
    @HectorGarciadeMarina 5 หลายเดือนก่อน +1

    It is a great project showing how to do more WITH LESS. Outstanding job! Engineering is about this; these are your resources, and squeeze the maximum from them.

  • @conall5434
    @conall5434 5 หลายเดือนก่อน

    This is a super cool project dude! Good work!

  • @draggador
    @draggador 5 หลายเดือนก่อน +1

    This is wonderful! You've my support in your endeavours!

  • @infocentrousmajac
    @infocentrousmajac 5 หลายเดือนก่อน +1

    Excellent video! Looking forward to see more content from you. I will attempt to understand and play with your source code. I have few ideas for application and use cases. Great work and even better use of highly sophisticated math. Impressive!

  • @James_Rivers
    @James_Rivers 5 หลายเดือนก่อน

    This is crazy impressive, great work dude

  • @brenogibson3538
    @brenogibson3538 2 หลายเดือนก่อน

    amazing project! The camera pose logic will help me a lot in a different project I'm working right now. Thank you very much for sharing

  • @DashieDasher
    @DashieDasher 4 หลายเดือนก่อน

    Honestly I'm amazed you got it flying that well at all with that monstrous chain of PID loops

  • @circuitguy9750
    @circuitguy9750 5 หลายเดือนก่อน +1

    Wow! That's quite impressive. Thanks for sharing!

  • @DonCarlione973
    @DonCarlione973 5 หลายเดือนก่อน

    Thats awesome bro. I love this new drone technology and where people are taking it to! 👍🏻👍🏻

  • @cheythompson740
    @cheythompson740 5 หลายเดือนก่อน +3

    So a couple bucks in hardware but a good few thousand in knowledge

  • @KevinDiVico
    @KevinDiVico 5 หลายเดือนก่อน

    Bravo! that is amazing work. You have inspired me to tinker with drones again. :-) look forward to seeing more of your work in the future.

  • @TestDetails
    @TestDetails 5 หลายเดือนก่อน

    you're truly a savant with your erudition, fantastic job!!! As well, appreciate your selflessness in sharing your source code.

  • @olasoderlind5685
    @olasoderlind5685 5 หลายเดือนก่อน +1

    inpresive .. nice of you to show your drone craches

  • @robertviragh6527
    @robertviragh6527 5 หลายเดือนก่อน

    Thank you for sharing this video. I especially like the systems-level thinking and diagram, and good job to get those complicated nested PID loops working. The math shown for bundle-adjustment minimizing reprojection error is something I didn't know before, it is very useful, I appreciated learning it from the video.
    If you need to track more than 6 points and they start to overlap you could try to synchronize timers so they're not all on all at once. The esp32 has a real time clock, so you may be able to synchronize several drones to be down to the millisecond with each other (you synchronize it with a physical pin you keep reading, then physically connect them all and synchronize them with one signal at the same time), and then turn them on and off in a certain pattern (so once you have synchronized the seconds the ones that are on for 000-005 ms after each second is the first light, the one that is on 005-010 is the second light, and so forth, and once you've got them all the pattern repeats - they turn on at their assigned time. Think of it like one of them shows up on the hour for five minutes, one each :05 to :10 past the hour, and so forth, only it's milliseconds not minutes and also it repeats, they just don't fire at the same time. It works as long as you can synchronize the clocks and they're high-resolution enough. This way they drones are way easier to tell apart.
    The number of drones you can handle one at a time this way depends on your camera's framerate. This works because speed of light is really fast so as long as you synchronize ahead of time and have a good real time clock you can figure out which is which, and you do mention the camera has a really high frame-rate. The CV system has a latency in it so you should have one of the lights turn on on exactly on the second every second for a different number of milliseconds from the others, so by looking for that length you can figure out what that latency is. This will require you to track how long the beacons have been on but it should not be too difficult. The CV system's latency is fixed usually, so you should be able to do this. Try it.
    For milspec applications they could use a super high resolution timer and synchronize real time clocks down to the nanoseconds (my DM's are open, DoD) and keep track of up to tens of thousands of drones through high resolution cameras, but milliseconds is good for your $20 system and could get you to twenty drones or so without the spots interfering with each other and without adding too much latency.
    I'd love to know if you are able to try it, let me know.

  • @VR_Von_Bruegge
    @VR_Von_Bruegge 5 หลายเดือนก่อน +2

    There should be much more people like you in world. I wish I could do this stuff, very impresive

  • @drewmiller9036
    @drewmiller9036 5 หลายเดือนก่อน +1

    This is amazing! Deserves more attention

  • @tomasg.8418
    @tomasg.8418 5 หลายเดือนก่อน

    Joshua Bird thank you very much. It's very impressive how simple and brilliant idea it is :)

  • @jonatan01i
    @jonatan01i 5 หลายเดือนก่อน +2

    OMG, I'm sold after you wrote "hello"

  • @8x13b
    @8x13b 2 หลายเดือนก่อน

    This has incredible applications in the VR world! Especially for full body tracking!

  • @FPVMedias
    @FPVMedias 3 หลายเดือนก่อน +2

    What an awesome project.
    Congrats on the work done here. I admire your dedication, ambition and passion.
    👊Well Done

  • @woofcaptain8212
    @woofcaptain8212 หลายเดือนก่อน

    This is something I've thought of doing for some time but I've never got around to it. Cool project!

  • @TheSelfUnemployed
    @TheSelfUnemployed 5 หลายเดือนก่อน

    incredible broski! i just got aruco markers working for tracking my tabletop bot but this seems like a cool alternative to look into for future projects. thanks for sharing!

  • @sanlegaYT
    @sanlegaYT 5 หลายเดือนก่อน +2

    This is very cool!!! Thanks for making it open source!!!!

  • @vivekr4690
    @vivekr4690 3 หลายเดือนก่อน +1

    This is fascinating.!
    Thank you so much for sharing your wisdom on youtube!

  • @andrewhofmann5453
    @andrewhofmann5453 5 หลายเดือนก่อน

    Great video, saw your Ender 2 Pro box, I just bought mine 2 weeks ago, love it!

  • @gevaisemaginn4396
    @gevaisemaginn4396 2 หลายเดือนก่อน +1

    this is a huge benefit for indoor drone use, as gps wont work as great under buildings. in the future drones will bring you food to you or any item you would like. really cool bro!

  • @Refatul_Islam
    @Refatul_Islam 5 หลายเดือนก่อน

    You are great bro❤ Best of luck for future projects... Love from Bangladesh 🇧🇩

  • @erjonameti1066
    @erjonameti1066 5 หลายเดือนก่อน +1

    Amazing Project...keep up the good work.

  • @oldmancomedies
    @oldmancomedies 5 หลายเดือนก่อน +3

    I thought about doing this myself at some point, but it ended there. Ideas are cheap and execution is expensive, after all. Amazing work on your end!

  • @1pierce158
    @1pierce158 5 หลายเดือนก่อน

    You making it look simple that’s how you know you did a good job

  • @sticky_ricebowl
    @sticky_ricebowl 5 หลายเดือนก่อน +2

    damn I have never clicked on the sub button as fast as I just did. Youre doing incredibly cool stuff man and I would love to be a part of this interesting mind of yours!

  • @shitboxlife
    @shitboxlife 5 หลายเดือนก่อน

    Look at you and your amazing creation! Someone give this man a proper lab stat!!!

  • @0zux45
    @0zux45 5 หลายเดือนก่อน +2

    YT just recommended your vid to me! and it's great!

  • @GilchristMcGill
    @GilchristMcGill 5 หลายเดือนก่อน +1

    Well done! My dream is to do such things, but yeah working full-time and studying at the same time makes it tough 😂. Awesome!

  • @katchupoy01
    @katchupoy01 16 วันที่ผ่านมา +1

    this is what i have been looking for... very thankful for the share...

  • @Freireg1503
    @Freireg1503 5 หลายเดือนก่อน

    It's such an amazing and hard project! And you made it look as easy as blinking a led 😂

  • @kingaustin360
    @kingaustin360 26 วันที่ผ่านมา

    Amazing piece of engineering. Good work

  • @strangestuff1213
    @strangestuff1213 5 หลายเดือนก่อน

    Subbed as it's a cool project & you open sourced it - This is Top-G stuff

  • @gameofpj3286
    @gameofpj3286 5 หลายเดือนก่อน +1

    This is so cool! Amazing work!

  • @thedronedojo
    @thedronedojo 4 หลายเดือนก่อน

    This is some extremely impressive indoor positioning.

  • @don_marcel
    @don_marcel 5 หลายเดือนก่อน +2

    FYI I stood up and clapped when you covered the drone with an iPad

  • @pigglywiggly_3652
    @pigglywiggly_3652 5 หลายเดือนก่อน

    My good sir hats off to you! Great job I’m thoroughly impressed.

  • @PaulRichardson_Canada
    @PaulRichardson_Canada 3 หลายเดือนก่อน

    That is some high level precision
    awesomeness !

  • @triton62674
    @triton62674 5 หลายเดือนก่อน +7

    So cool how you combined the pid loops for a rough location of the point with non linear optimisation for converging on a minimum distance

  • @alexhaya5628
    @alexhaya5628 5 หลายเดือนก่อน

    This is impressive ,
    Good work mate!🎉😮

  • @whatdaro
    @whatdaro 5 หลายเดือนก่อน

    Excellent video and work , with great results! thanks for sharing.

  • @tnat-
    @tnat- 5 หลายเดือนก่อน +8

    Nice project! Cascaded PID is a nightmare to tune! For some tips on drone pose regulators I would recommend checking out Ardupilot's Attitude control implementation. Also, I think it would be interesting to see how much an extended kalman filter would improve the pose estimation 🤔

  • @davidfeldt89
    @davidfeldt89 หลายเดือนก่อน +1

    This is insane! Great work

  • @technoaddicted6824
    @technoaddicted6824 5 หลายเดือนก่อน

    Kudos to your effort buddy, thanks a lot for this excellent low budget project 🔥🤝

  • @samdownload8192
    @samdownload8192 5 หลายเดือนก่อน

    Just lovely!!! It was an amazing project.

  • @blasandresayalagarcia3472
    @blasandresayalagarcia3472 5 หลายเดือนก่อน

    Damn man, this is amazing work. Truly inspiring!

  • @meqdaddev4341
    @meqdaddev4341 5 หลายเดือนก่อน

    Wow... So cool and knowledge-rich project.
    Keep Making

  • @B0A2
    @B0A2 5 หลายเดือนก่อน

    Super cool project thanks for sharing it and the code!

  • @the_python_man
    @the_python_man 5 หลายเดือนก่อน

    this is the kind of video that deserve my like , good work bro

  • @SirKuhnhero
    @SirKuhnhero 4 หลายเดือนก่อน +1

    Incredible. I am currently thinking of doing something like this too. This is going to be a great help to me.
    Thanks :)

  • @pawanv86
    @pawanv86 5 หลายเดือนก่อน +1

    Wow this is a fantastic project! Good stuff 🍻

  • @airsoftbeast11234
    @airsoftbeast11234 5 หลายเดือนก่อน +4

    A good next step could be to use your own firmware on the drones. Providing a series of inputs to the controller via the PWM signals which results in a sort of nested PID loops like you discussed can make it difficult for precise movements, but if you are able to have custom firmware work out motor speeds in order to optimize moving the drone through a path in space, you can have them zip around in patterns in the most optimal way. Could also train a neural net to do this as well, rather than needing outputs for pitch, yaw, roll and throttle which translate to flight controller, the neural net would directly control the motor speeds through a series of waypoints