Alright, super new to opencv though I’ve dabbled with my own creations for vid surveillance.
So basic question one is on motion detection. One issue I have is the h264 feed from a rtsp cam is ever so slightly changing frames even though nothing is happening in that particular part of the frame, but its changing enough to “drown” real events if they’re small enough (for the threshold given).
Then I stumbled on some opencv code on stackoverflow that essentially did GaussianBlur on the frame first before subtract/absdiff/threshold … and look and behold much better performance(in terms of picking up the correct events). So the question is this:
Is using techniques like gaussian blur “industry standard” for stuff like motion detection? Any other tricks I should know about in this regard?
Thanks :). (I got ton more questions, but dont want to wear anyone out:)).
You should not learn tricks, but the abstract workflows and to think of what kind of data is needed and what qualities make the data good. And if the data is not good, what needs to be done to make it better.
Then you can figure out, the tool to do that and what OpenCV offers.
Thinking of “industry stadards” will lead people to add functions in places where they are not needed and can even be harmful.
I understand why blur works, it takes the edges off the sharp peaks in the noise and thus lets if fly under the given threshold… Its just that I wouldnt have thought of that myself and had I not stumbled upon some code snippet that did I would have been non the wiser. Its smart.
I’ve actually implemented my own noise resistant algorithm that deals with this, its just a-lot more… hmm… less elegant.