1 | initial version |
I would use Optical Flow to follow the motion of everything (Dense Optical Flow) or many points in the cloud (Sparse Optical Flow). You have to write higher level logic to handle which parts belong to which cloud and keep track of merges and splits, but this gives you a good way of tracking areas.
I would probably detect a bunch of points with ORB and then use PyrLK optical flow to follow them. You can use the median flow vector to get a good approximation of motion, or even cluster the flow vectors to segment clouds that are visually touching, but moving in different directions or rates.