Any experience with tracking objects in images? :P
I have several algorithms to track paws, but none of them work perfectly
I have a method that slices and dices up the plate, based on where there are nonzero pixels, which groups anything that has overlapping bounding boxes. Its very fast (in C++ at least) and robust, but a bit too sloppy
I have a version that clusters contours, by first tracking contours in adjacent frames if they have overlap. Then it clusters them if they have a certain amount of overlap over time, so it doesn't overlap contacts that are close, but don't touch each other. But if fails (obviously) when they do touch each other
Then I have a connected components tracking, which is more reliable at contours that are connected (by definition), but obviously doesn't merge parts of the paw that don't make contact EVER, like toes in large dogs. And it has the same downside of not merging if two contacts touch
I tried remedying this, by applying erosion or thresholding to effectively remove/ignore the pixels where two paws touch each other, but it has side effects that are a bit nasty
@TomWijsman So I'm wondering if you have any suggestions/comments :P
The above image is an intensity plot of the pixel count over the entire duration of the paw. So in how many frames was each pixel activated by the paw during the entire stance phase
As you can see, if two contacts are merged incorrectly, they have a very different distribution, because of the overlap in that area