AI Tech Docs?
For v.5 please can we have some more info about the CNN and classifiers used?
The info in release notes is OK for people who know nothing about machine learning, but isn't detailed enough for those with an interest / professional application in the subject.
Of course, the approach also leads to feature requests such as a daily report featuring # of cars broken down into right-to-left and left-to-right, as well as # of people detected, group sizes, whether they looked at the cam etc
People have been using neural compute sticks for this stuff, which always seems cool.
;-)
The info in release notes is OK for people who know nothing about machine learning, but isn't detailed enough for those with an interest / professional application in the subject.
Of course, the approach also leads to feature requests such as a daily report featuring # of cars broken down into right-to-left and left-to-right, as well as # of people detected, group sizes, whether they looked at the cam etc
People have been using neural compute sticks for this stuff, which always seems cool.
;-)
Comments
SecuritySpy doesn't currently record direction of movement or count objects/detections, but this could quite easily be implemented in the future if there is demand for it.
I also wondered if in the future you will be able to support more types of object detection? For example I have cameras covering my garden and like to trigger motion based on my dog moving around etc, but I would like to trigger a script when an actual person is detected!
The camera also covers our koi pond and it would be good to be able to detect if something like a heron or other large animal moves.
I know these are probably all quite advanced use cases but it would be a fantastic feature! Perhaps you could license different AI packs depending on people's needs? I would be happy to pay extra for specific models of types of animals or other AI features!
We have already developed an animal detector, but it's not quite ready for prime time yet for a few reasons. The first is that gathering the amount of training data required is not easy - in the images that we are gathering, animals rarely feature. Secondly, animals come in all shapes and sizes: it's difficult to make an animal detector that triggers for both birds and dogs, for example. Finally, we don't want to put out an inaccurate detector, as it might mis-classify humans as animals, which would be a Bad Thing.
For an example of this last point, search for "google gorilla mistake". Even google couldn't fix this technologically - they simply removed the functionality. This causes us some concern about implementing such functionality ourselves.
Seems there would also be a need to put some boundaries around what types of animals, for example I'm not expecting to see a zebra on any of my cameras, and I suspect the majority of customers will be the same.
Another thing that might work which may be to have multiple types of motion detection zones per view. By that I mean I could mask out an area for AI detection, and an area for "normal" motion detection.
One other thing on the wishlist would be some kind of "if this then that" rules engine, for example "If there's a person on the front drive after 2:00AM do this" - I know that would be a lot of work but also really helpful, it's something I can do in home assistant but may be useful for others if it were built into the app.
You're probably aware, but you do already have quite a lot of flexibility for deciding when to receive events and start recording. For example you can set up a custom schedule to apply to the Actions mode that results in events being generated only at certain times of the day. So you can actually achieve something like "If there's a person on the front drive after 2:00AM do this". The way that SecuritySpy does it, with a fixed set of actions and one schedule per mode, makes things easy to set up and understand, but I know it's not quite what you are describing.
Would be awesome to selectively add anything in the Resnet50 model alongside the current Person/Vehicle selectors. Or, even better, support for external models / accelerators like Google Coral (https://coral.withgoogle.com/products/accelerator/)