Small moving object tracking

Hello there,
We have a project where we need to track an object with a few friends. We need to patch the object tracking with the images taken by the UAV cameras. I’m new to this business and I have a few questions that stumble on my mind.

I will work with the Vivid (Video Verification of Identity) dataset. When I did the research for object tracking, I came across methods such as mosse, KCF, Kalman Filter, Particle Filter, CSRT.

In some videos, the size of the object also changes because the cameras zoom in. In some, it passes behind other objects such as trees or bridges and then appears back. I think I also need to take into account the direction and speed of movement of the object in order to increase the tracking accuracy.

Later I will run this in real-time with an arm processor. I need to develop a fast algorithm for low processor power. Another question is we are getting images from the camera at 25fps. Should I follow it with 25 frames here? Or should I process with less frames like every 5 frames?

What should I do for this project? Why exactly do they use KF and PF?

As I understand, you talking about a single object visual long-term tracking - when you tracking a single object, which is sometimes closed by obstacles.
MOSSE, KCF, Kalman Filter, Particle Filter, and CSRT are really old classic computer vision trackers. They are not very good at long-term visual tracking.
In OpenCV you can find DaSiamRPN and SiamRPN++ trackers, based on neural networks (DaSiamRPN 2018 state-of-the-art, SiamRPN++ 2020 state-of-the-art).
Also, they can handle real-time tracking from the camera and changing the size of the bounding box.