AI to detect snow/rain/bugs
The AI in SecuritySpy seems to be aimed at triggering for things we *want* to capture (i.e. humans and vehicles) -- I would find it VERY beneficial to have an AI classifier for snow/rain/bugs which squelches the motion capture -- i.e. I want to capture everything BUT what this classifier finds. I want to see animals and perhaps a garbage can blowing across the street, but I don't want 300 captured videos of spider butts or driving snow.
Comments
That's why this needs to work the other way round, as it does currently, with classifiers detecting the things you actually want to record such as humans and vehicles (P.S. we may add an animal classifier in the future, but this is more difficult than a human or vehicle classifier for various reasons, and we don't want to implement this if it isn't going to work well).
The car/person/animal classifier says "hey I think this is a car/person/animal" and then the rain/bug classifier can overrule it saying "nah, it's not" -- basically it'd add a second level to the trigger. The first level is for detecting things you want, and the second would provide a way to overrule the classifier.
Trying to do it all at once wouldn't work as well, I don't think. You can get *great* classifiers but trying to get them to avoid the worst offenders (rain/snow and flies) would be a much harder challenge. By splitting the workload up you could potentially get to a better result faster.
Ideally having a way to train your own classifiers (an advanced feature that could be easily disabled or reset) would help a lot, and we could even provide the datasets back to you to help make the default classifiers better.
I mean a parked car sitting in the driveway with spider webs over the camera ... I get why the classifier would see a motion event with a car in it. These videos though ... there's no car or anything resembling a car in the scene.
I'm also a little curious about the parked car motion detection... I mean to a human brain it's easy to see that yes there is motion and there *is* a car, but the car is simply not moving from frame to frame, it's unrelated motion, or the motion is not a car moving.
One bug while I'm on this: When I create the ~/SecuritySpy/AI Predictions folder it does immediately get filled with annotated JPEGs which is *fantastic* -- however if the motion is on the right edge of the screen, the text is run off the end of the picture, so I can't see what the vehicle classifier is saying. Also, the black text is not visible since it's a dark scene and the red bounding box is small. (black on red works fine, but then the rest of the text is no longer on a red bg). Any chance the text could be wrapped, shifting "up" and/or "left" so it doesn't obscure the image in the bounding box or get run off the top or right of the image?
The AI doesn't "see" things as a human does - yes a moving car is an easy thing for a human to detect but it's much more difficult for an AI!
Good point about the image notation, I will see what we can do about this for a future update.
The main factors for a good outcome from the MD algorithm are low noise and good lighting. And the main factors for a good outcome from the AI are low noise, good lighting, correct camera angle/view, correct camera focus, and sufficient resolution (at least 2 MP).
Is this a relatively new change? It may have been before the AI, but I started using the low resolution stream because the CPU use was absolutely pegged when doing motion detection on the 1920x1080 stream.