问题
I would like to track some traffic signs from a video. I found a nice way to solve the problem here: Link
My question now is: How should I handle the case of new incoming blobs? I mean for a Blob one could define a search-region, but maybe in the next frame there is also a second thing that appears? How should I handle this?
回答1:
from what I understand from the paper you provide, this system is already made to track several signs at a time, appearing and disappearing. See the end of §2 :
the latest tracked blobs are stored in a temporary memory. Blobs in frame (t+1) are matched with those in the temporary memory (...) thus, when a sign disappears in particular frames, it could be tracked in the next frame when it appears again.
The next § (3 - blob matching) explains how you "recognize" the signs you are tracking from one frame to another. But if you can match them (recognize them), it also means that you can also not recognize them, meaning that there are new signs : They must then be added to the memory.
I think (but I can be wrong) that what is misleading you is the "search region reduction". I think that this region reduction is done independently for every sign/blob (see §2, the "bounding boxes are determined"). So it doesn't matter how many signs there are.
The algorithm is then the following :
- for each frame :
- detect "blobs" (= traffic sign candidates) using the Kalman-Filters
- for each blob :
- match this blob with the already known blobs using the ring partitioned method described in §3
- if the blob doesn't match, add it to the memory as a new blob
The article doesn't cover when to remove a blob from the "latest known blobs" memory. Since the algorithm is made to work even if a blob is missing for a few frames then reappear (hidden by a truck or an electric pole for example) and whatever the movement (so we can't infer that signs will disappear to the sides of the picture or after getting bigger), I think (my opinion) that we could use both a time limit and an "area collision" detection. If a new blob appears in an area where we would expect a known blob but doesn't match it, then it means that the old blob is no longer relevant.
God luck with you project !
来源:https://stackoverflow.com/questions/7821514/multiple-blob-tracking