Open Source Motion Capture for Autonomous Drones

  Переглядів 519,856

Joshua Bird

Joshua Bird

6 місяців тому

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...

КОМЕНТАРІ: 539
@emovard3n
@emovard3n 5 місяців тому
Wow, you definitely deserve more views. Very cool project, also making it open source means a lot
@moosesnWoop
@moosesnWoop 5 місяців тому
by making it open source, the Future thanks you.
@deweytann
@deweytann 5 місяців тому
Open source gives you wings
@0hleg
@0hleg 5 місяців тому
@@moosesnWoopand the person that actually eventually tunes it a bit and monetizes it.
@sabih1677
@sabih1677 5 місяців тому
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 місяців тому
Because it's reproducible, that makes it science!
@elishmuel1976
@elishmuel1976 5 місяців тому
Same!
@googleyoutubechannel8554
@googleyoutubechannel8554 5 місяців тому
A college student in his dorm room... this is amazing, precise indoor location has been a constant challenge
@Keyboardfanatiker
@Keyboardfanatiker Місяць тому
Using ultra-wideband for ranging shouldn't be all that difficult actually
@googleyoutubechannel8554
@googleyoutubechannel8554 Місяць тому
@@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 місяців тому
Someone should give this guy access to a workshop: Very nice work!
@connerwwise2315
@connerwwise2315 5 місяців тому
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 Місяць тому
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 місяців тому
Wow! I wasn't expecting you to actually explain how the tracking worked! It's really cool that you did! Thanks!
@Legonigel
@Legonigel 5 місяців тому
I'm blown away by the work you put into this! Simply amazing!
@Clark-Mills
@Clark-Mills 5 місяців тому
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 місяців тому
Your motivation, dedication and clear communication are more inspiring than the results.
@kagisopilane4088
@kagisopilane4088 5 місяців тому
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.
@cachecaver
@cachecaver 5 місяців тому
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.
@theluckybead
@theluckybead 5 місяців тому
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.
@DeanGadberryYT
@DeanGadberryYT 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!
@Peter-898
@Peter-898 5 місяців тому
Massively impressive project, very well done & I'm glad to see your work shared. Hope we see more work spring up around it!
@austindale3129
@austindale3129 5 місяців тому
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!
@AerialWaviator
@AerialWaviator 5 місяців тому
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)
@cottsak
@cottsak 5 місяців тому
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!!
@arpita1shrivas
@arpita1shrivas 5 місяців тому
how is this man so criminally underrated
@casperlehmann
@casperlehmann Місяць тому
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.
@pipsqueak2009
@pipsqueak2009 3 місяці тому
Super impressive. And fantastic that you've open sourced the project so that others can learn and benefit from it.
@fixifaxhd772
@fixifaxhd772 5 місяців тому
Love the clip where you literally just toss the drone on the floor. Crazy project. Props on completing it!
@roland_does_things
@roland_does_things 5 місяців тому
Really cool project! Love that it all works in your dorm!
@JosOsborne
@JosOsborne 5 місяців тому
Absolutely amazing. You are brilliant and energetic and resourceful and an excellent communicator and I cannot wait to see what you do next.
@tunnelcat4592
@tunnelcat4592 5 місяців тому
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!
@mr.kybernaut6687
@mr.kybernaut6687 5 місяців тому
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.
@marsgizmo
@marsgizmo 3 місяці тому
inspiring project! 👏😎
@tomhannigan2234
@tomhannigan2234 2 місяці тому
terrifying
@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!
@nicholasgrippo1754
@nicholasgrippo1754 5 місяців тому
Wow! This is basically the same principle of VR tracking with base stations applied to drones. This is awesome
@user-vj6ec5do4d
@user-vj6ec5do4d 2 місяці тому
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!
@pjforde1978
@pjforde1978 5 місяців тому
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.
@HectorGarciadeMarina
@HectorGarciadeMarina 5 місяців тому
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.
@mehmetnabiduru8779
@mehmetnabiduru8779 5 місяців тому
Amazing project and it's obvious that a lot of effort has gone into it nice work ​
@natonion1154
@natonion1154 5 місяців тому
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?
@jamesbowe3
@jamesbowe3 4 місяці тому
Joshua, what a great project and nicely presented! I will definitely share this with my students next semester. Thank you.
@uncharteduty
@uncharteduty 5 місяців тому
This is an incredible video. I love it. This is a project I would love to tackle myself in the future.
@felixman9691
@felixman9691 5 місяців тому
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 :)
@bryanoverbey
@bryanoverbey 5 місяців тому
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
@md.sharifulislamrifat1597
@md.sharifulislamrifat1597 5 місяців тому
That is very amazing ! And it means a lot to make the project open source....definitely gonna try it out...hats off...
@siegmundeurades5753
@siegmundeurades5753 5 місяців тому
Absolutely amazing work, wait until the VR community finds out about this.
@hseinb
@hseinb 3 місяці тому
This is amazing, I can imagine it has lots of applications, congrats
@Taylachteam
@Taylachteam 5 місяців тому
I subscribed and will be following your journey every step of the way. please continue making this content!
@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.
@brycenarcisomercines5036
@brycenarcisomercines5036 5 місяців тому
This is amazing work, explained with great clarity as well!
@gevaisemaginn4396
@gevaisemaginn4396 2 місяці тому
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!
@DashieDasher
@DashieDasher 4 місяці тому
Honestly I'm amazed you got it flying that well at all with that monstrous chain of PID loops
@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
@1pierce158
@1pierce158 5 місяців тому
You making it look simple that’s how you know you did a good job
@James_Rivers
@James_Rivers 5 місяців тому
This is crazy impressive, great work dude
@draggador
@draggador 5 місяців тому
This is wonderful! You've my support in your endeavours!
@TestDetails
@TestDetails 5 місяців тому
you're truly a savant with your erudition, fantastic job!!! As well, appreciate your selflessness in sharing your source code.
@8x13b
@8x13b 2 місяці тому
This has incredible applications in the VR world! Especially for full body tracking!
@tomasg.8418
@tomasg.8418 5 місяців тому
Joshua Bird thank you very much. It's very impressive how simple and brilliant idea it is :)
@infocentrousmajac
@infocentrousmajac 5 місяців тому
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!
@sUASNews
@sUASNews Місяць тому
Wow, just wow excellent work Joshua
@VR_Von_Bruegge
@VR_Von_Bruegge 5 місяців тому
There should be much more people like you in world. I wish I could do this stuff, very impresive
@ritsel6469
@ritsel6469 5 місяців тому
If there is a teaching of the assembly process, it is a great introduction for beginners who are interested like me.
@DonCarlione973
@DonCarlione973 5 місяців тому
Thats awesome bro. I love this new drone technology and where people are taking it to! 👍🏻👍🏻
@thedronedojo
@thedronedojo 4 місяці тому
This is some extremely impressive indoor positioning.
@shitboxlife
@shitboxlife 5 місяців тому
Look at you and your amazing creation! Someone give this man a proper lab stat!!!
@drewmiller9036
@drewmiller9036 5 місяців тому
This is amazing! Deserves more attention
@oldmancomedies
@oldmancomedies 5 місяців тому
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!
@olasoderlind5685
@olasoderlind5685 5 місяців тому
inpresive .. nice of you to show your drone craches
@triton62674
@triton62674 5 місяців тому
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
@circuitguy9750
@circuitguy9750 5 місяців тому
Wow! That's quite impressive. Thanks for sharing!
@conall5434
@conall5434 5 місяців тому
This is a super cool project dude! Good work!
@FPVMedias
@FPVMedias 3 місяці тому
What an awesome project. Congrats on the work done here. I admire your dedication, ambition and passion. 👊Well Done
@airsoftbeast11234
@airsoftbeast11234 5 місяців тому
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
@andrewhofmann5453
@andrewhofmann5453 5 місяців тому
Great video, saw your Ender 2 Pro box, I just bought mine 2 weeks ago, love it!
@woofcaptain8212
@woofcaptain8212 Місяць тому
This is something I've thought of doing for some time but I've never got around to it. Cool project!
@sanlegaYT
@sanlegaYT 5 місяців тому
This is very cool!!! Thanks for making it open source!!!!
@GilchristMcGill
@GilchristMcGill 5 місяців тому
Well done! My dream is to do such things, but yeah working full-time and studying at the same time makes it tough 😂. Awesome!
@jonatan01i
@jonatan01i 5 місяців тому
OMG, I'm sold after you wrote "hello"
@MKUMBRA
@MKUMBRA 5 місяців тому
Bro is an undergrad student and already better than SDEs with 10 YOE... he should be making 500k easily
@sirdiealot53
@sirdiealot53 5 місяців тому
More like 500m as CEO of his own company.
@davidcahan
@davidcahan 5 місяців тому
Prolly will b soon
@abyszero8620
@abyszero8620 5 місяців тому
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 місяців тому
It's so thoroughly researched, followed to conclusion, and presented so cleanly. Plus.. reproducible. This is a legitimate publication
@francefarms
@francefarms 5 місяців тому
Maybe it is open source?
@vivekr4690
@vivekr4690 3 місяці тому
This is fascinating.! Thank you so much for sharing your wisdom on youtube!
@Refatul_Islam
@Refatul_Islam 5 місяців тому
You are great bro❤ Best of luck for future projects... Love from Bangladesh 🇧🇩
@tnat-
@tnat- 5 місяців тому
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 🤔
@eukaryon
@eukaryon 5 місяців тому
Oh my. That is magical. I know I know, just a lot of work, programming, and mistakes. Like all excellent work, many hours of effort for a few moments of magic.
@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!
@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.
@pigglywiggly_3652
@pigglywiggly_3652 5 місяців тому
My good sir hats off to you! Great job I’m thoroughly impressed.
@kingaustin360
@kingaustin360 28 днів тому
Amazing piece of engineering. Good work
@MrDeZaaa
@MrDeZaaa 5 місяців тому
Wow. Thanks for this. I'm working on the development of a quadruped robot, and this could be a great tool for navigation in 3D space. I will definitely try it out.
@bugrahana3395
@bugrahana3395 5 місяців тому
this is really extraordinary. Really well for homemade.
@mike--0
@mike--0 5 місяців тому
Man I've been trying to do something like this but could never make it happen. This is content
@the_python_man
@the_python_man 5 місяців тому
this is the kind of video that deserve my like , good work bro
@davidfeldt89
@davidfeldt89 Місяць тому
This is insane! Great work
@bloepje
@bloepje 5 місяців тому
I have had nightmares for decades about control systems and polar diagrams I got at school. But just like digital signal processing, that was only maths at my school, it is nice to finally have a real world example.
@katchupoy01
@katchupoy01 18 днів тому
this is what i have been looking for... very thankful for the share...
@gameofpj3286
@gameofpj3286 5 місяців тому
This is so cool! Amazing work!
@0zux45
@0zux45 5 місяців тому
YT just recommended your vid to me! and it's great!
@cheythompson740
@cheythompson740 5 місяців тому
So a couple bucks in hardware but a good few thousand in knowledge
@technoaddicted6824
@technoaddicted6824 5 місяців тому
Kudos to your effort buddy, thanks a lot for this excellent low budget project 🔥🤝
@SirKuhnhero
@SirKuhnhero 4 місяці тому
Incredible. I am currently thinking of doing something like this too. This is going to be a great help to me. Thanks :)
@erjonameti1066
@erjonameti1066 5 місяців тому
Amazing Project...keep up the good work.
@whatdaro
@whatdaro 5 місяців тому
Excellent video and work , with great results! thanks for sharing.
@bastelwastel8551
@bastelwastel8551 5 місяців тому
That's some serious project, respect
@AlecThilenius
@AlecThilenius 5 місяців тому
Wooo, this is a really great datapoint for a project of my own, many thanks! The camera extrinsic estimation is clever. I'm really surprised independent cameras without synchronized shutters did so well at pose estimation. If you go down this path again, take a peak at the Arducam OV9281.
@Freireg1503
@Freireg1503 5 місяців тому
It's such an amazing and hard project! And you made it look as easy as blinking a led 😂
@samdownload8192
@samdownload8192 5 місяців тому
Just lovely!!! It was an amazing project.
@strangestuff1213
@strangestuff1213 5 місяців тому
Subbed as it's a cool project & you open sourced it - This is Top-G stuff
Make a TINY Arduino Drone with FPV Camera - Will It Fly?
20:26
Max Imagination
Переглядів 291 тис.
I RACED My Self-Driving RC Car
23:35
Steven Gong
Переглядів 638 тис.
Эта Мама Испортила Гендер-Пати 😂
00:40
Глеб Рандалайнен
Переглядів 7 млн
The Terrifying Technology Inside Drone Cameras
18:36
New Mind
Переглядів 1,4 млн
Amazing Invention- This Drone Will Change Everything
21:32
Mark Rober
Переглядів 33 млн
Tiny FPV Drones - The easiest way to start FPV
11:32
Man From Earth
Переглядів 415 тис.
What can a Black Hornet drone do?
8:13
Military TV
Переглядів 7 млн
Vortex Cannon vs Drone
20:44
Mark Rober
Переглядів 13 млн
Tiny volumetric display
5:23
mitxela
Переглядів 2,5 млн
DIY Drones: War Will Never be the Same
19:50
Johnny Harris
Переглядів 1,3 млн
NEW Type of Drone is GAME-CHANGING!
6:16
Tech Planet
Переглядів 2,5 млн
We built a Drone using ESP32 for less than Rs.1000!
9:37
Circuit Digest
Переглядів 55 тис.
Эта Мама Испортила Гендер-Пати 😂
00:40
Глеб Рандалайнен
Переглядів 7 млн