I want to create a drone that can follow other drones on air only using image processing. The goal is to focus on the other drone for 4 seconds on air. How can I make this happen ?
You’ll need: 1. detector to detect object 2. tracker to track the movement of object 3. controller to issue control commands to follow the object
That sounds like an interesting project. To say how to make this happen depends on more than the provided information.
Can you modify the drones you want to track? If so I think the easiest would be to fit the other drones with LEDs in a recognizable pattern and track the LEDs. If not you probably need some deep learning aproach, e.g. yolo or EfficientNet.
Image processing requires quite some computational resources so you will need a companion computer. One way to follow the drones(or focus on them, what does that mean?) would be to fly in GUIDED mode and send velocity/position commands calculated at the companion computer. To fly in GUIDED you will need a GPS or one of the options for GPS-denied navigation, eg. optical flow.
I have no control over other drones as they are a part of the competition. What following means is that my drones mounted camera will focus on another drone for 4 seconds and match their movement. I was thinking if I could make the drone to process image in a way that will catch fast moving objects. Another problem is I need a fast way to communicate with the computer.
Interesting. It sounds difficult to detect the drones solely based on the motion since your own drone also is moving. Still, other options are also difficult so then I don’t have a clear suggestion.